From 43a1ea30355bb31248ba54522f8eee1cd0db8754 Mon Sep 17 00:00:00 2001 From: Jason Milkins Date: Thu, 7 Sep 2017 08:42:19 +0800 Subject: [PATCH] Add TKL keymap for Frosty_Flake (#1666) * Add TKL keymap for Frosty_Flake * Update readme.md * Add spaces for ghfm newlines * add note for dfu target --- keyboards/frosty_flake/frosty_flake.h | 40 ++++++++++++++++ keyboards/frosty_flake/keymaps/tkl/Makefile | 21 +++++++++ keyboards/frosty_flake/keymaps/tkl/config.h | 8 ++++ keyboards/frosty_flake/keymaps/tkl/keymap.c | 11 +++++ keyboards/frosty_flake/keymaps/tkl/readme.md | 1 + keyboards/frosty_flake/readme.md | 48 ++++++++++++++++---- 6 files changed, 120 insertions(+), 9 deletions(-) create mode 100644 keyboards/frosty_flake/keymaps/tkl/Makefile create mode 100644 keyboards/frosty_flake/keymaps/tkl/config.h create mode 100644 keyboards/frosty_flake/keymaps/tkl/keymap.c create mode 100644 keyboards/frosty_flake/keymaps/tkl/readme.md diff --git a/keyboards/frosty_flake/frosty_flake.h b/keyboards/frosty_flake/frosty_flake.h index 3b52df6b..32307ece 100644 --- a/keyboards/frosty_flake/frosty_flake.h +++ b/keyboards/frosty_flake/frosty_flake.h @@ -47,4 +47,44 @@ /* 7 */ { KA7, KB7, KC7, KD7, KE7, KF7, KG7, KH7, KI7, KJ7, KC_NO, KC_NO, KC_NO, KC_NO, KO7, KC_NO, KQ7, KR7 } \ } +/* + Matrix col/row mapping (TKL) + + ,----. ,-------------------. ,-------------------. ,-------------------. ,--------------. + | J6 | | I4 | H4 | H2 | H6 | | A7 | E6 | D2 | D4 | | B4 | B7 | B6 | B0 | | C7 | C5 | A5 | + `----' `-------------------' `-------------------' `-------------------' `--------------' + ,-------------------------------------------------------------------------. ,--------------. + | J4 | J7 | I7 | H7 | G7 | G4 | F4 | F7 | E7 | D7 | R7 | R4 | E4 | B2 | | L4 | O4 | Q4 | + |-------------------------------------------------------------------------| |--------------| + | J2 | J5 | I5 | H5 | G5 | G2 | F2 | F5 | E5 | D5 | R5 | R2 | E2 | B3 | | K4 | O7 | Q7 | + |-------------------------------------------------------------------------| '--------------' + | O5 | J3 | I3 | H3 | G3 | G6 | F6 | F3 | E3 | D3 | R3 | R6 | B1 | + |-------------------------------------------------------------------------| ,----. + | N2 | J1 | I1 | H1 | G1 | G0 | F0 | F1 | E1 | D1 | R0 | N3 | | O6 | + |-------------------------------------------------------------------------| ,--------------. + | A4 | P2 | C6 | K6 | C0 | M3 | D0 | A1 | | O0 | K0 | L0 | + `-------------------------------------------------------------------------' `--------------' +*/ + +#define KEYMAP_TKL( \ + 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 \ +) \ +{ \ +/* Columns and rows need to be swapped in the below definition */ \ +/* A B C D E F G H I J K L M N O P Q 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 } \ +} + #endif diff --git a/keyboards/frosty_flake/keymaps/tkl/Makefile b/keyboards/frosty_flake/keymaps/tkl/Makefile new file mode 100644 index 00000000..3b2efd6e --- /dev/null +++ b/keyboards/frosty_flake/keymaps/tkl/Makefile @@ -0,0 +1,21 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = yes # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/frosty_flake/keymaps/tkl/config.h b/keyboards/frosty_flake/keymaps/tkl/config.h new file mode 100644 index 00000000..8893d122 --- /dev/null +++ b/keyboards/frosty_flake/keymaps/tkl/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif diff --git a/keyboards/frosty_flake/keymaps/tkl/keymap.c b/keyboards/frosty_flake/keymaps/tkl/keymap.c new file mode 100644 index 00000000..99dc9562 --- /dev/null +++ b/keyboards/frosty_flake/keymaps/tkl/keymap.c @@ -0,0 +1,11 @@ +#include "frosty_flake.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = KEYMAP_TKL(\ + 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_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/keyboards/frosty_flake/keymaps/tkl/readme.md b/keyboards/frosty_flake/keymaps/tkl/readme.md new file mode 100644 index 00000000..a076a65d --- /dev/null +++ b/keyboards/frosty_flake/keymaps/tkl/readme.md @@ -0,0 +1 @@ +# TKL keymap for frosty_flake diff --git a/keyboards/frosty_flake/readme.md b/keyboards/frosty_flake/readme.md index 762eeab3..4a933d0b 100644 --- a/keyboards/frosty_flake/readme.md +++ b/keyboards/frosty_flake/readme.md @@ -1,16 +1,46 @@ -Frosty Flake Controller -=== +# Frosty Flake Controller -This is the firmware for Rev. 20140521 of the Frosty Flake controller by [Bathroom Epiphanies](http://bathroomepiphanies.com/controllers/), a replacement controller for the [Cooler Master Quick Fire Rapid](http://www.coolermaster.com/peripheral/keyboards/quickfirerapid/). +This is the firmware for Rev. 20140521 of the Frosty Flake controller +by [Bathroom Epiphanies](http://bathroomepiphanies.com/controllers/), +a replacement controller for the [Cooler Master Quick Fire +Rapid](http://www.coolermaster.com/peripheral/keyboards/quickfirerapid/). -The code was adapted from the [BathroomEpiphanies TMK Firmware](https://github.com/BathroomEpiphanies/epiphanies_tmk_keyboard/tree/master/be_controllers), but has been cleaned up to match the [schematic](https://deskthority.net/wiki/File:Frosty_Flake_Schematics.pdf) and gone through some minor refactoring for QMK. +The code was adapted from the [BathroomEpiphanies TMK +Firmware](https://github.com/BathroomEpiphanies/epiphanies_tmk_keyboard/tree/master/be_controllers), +but has been cleaned up to match the +[schematic](https://deskthority.net/wiki/File:Frosty_Flake_Schematics.pdf) +and gone through some minor refactoring for QMK. -Keyboard Maintainer: QMK Community -Hardware Supported: Frosty Flake -Hardware Availability: https://1upkeyboards.com/qfr-frosty-flake-controller.html +## 104 and 87 layout support + +Support for both 104 key and 87 key layouts is provided. See the +keymaps `default` (104) and `tkl` (87) for example layouts. + +Keyboard Maintainer: QMK Community +Hardware Supported: Frosty Flake +Hardware Availability: https://1upkeyboards.com/qfr-frosty-flake-controller.html Make example for this keyboard (after setting up your build environment): - make frosty_flake-default +104 key default layout: + +``` +make frosty_flake-default +``` + +To directly flash the frosty_flake after compiling use + +``` +make frosty_flake-default-dfu +``` + +87 key tkl layout: + +``` +make frosty_flake-tkl-dfu +``` -See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information. +See [build environment +setup](https://docs.qmk.fm/build_environment_setup.html) then the +[make instructions](https://docs.qmk.fm/make_instructions.html) for +more information.