aboutsummaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/contra/keymaps/msiu/config.h37
-rw-r--r--keyboards/contra/keymaps/msiu/keymap.c175
-rw-r--r--keyboards/contra/keymaps/msiu/readme.md2
-rw-r--r--keyboards/katana60/keymaps/msiu/config.h21
-rw-r--r--keyboards/katana60/keymaps/msiu/keymap.c70
-rw-r--r--keyboards/katana60/keymaps/msiu/readme.md3
-rw-r--r--keyboards/lets_split_eh/keymaps/msiu/config.h21
-rw-r--r--keyboards/lets_split_eh/keymaps/msiu/keymap.c195
-rw-r--r--keyboards/planck/keymaps/msiu/config.h40
-rw-r--r--keyboards/planck/keymaps/msiu/keymap.c208
-rw-r--r--keyboards/planck/keymaps/msiu/readme.md2
-rw-r--r--keyboards/planck/keymaps/msiu/rules.mk1
-rw-r--r--keyboards/xd75/keymaps/msiu/config.h18
-rw-r--r--keyboards/xd75/keymaps/msiu/keymap.c120
-rw-r--r--keyboards/xd75/keymaps/msiu/readme.md1
15 files changed, 914 insertions, 0 deletions
diff --git a/keyboards/contra/keymaps/msiu/config.h b/keyboards/contra/keymaps/msiu/config.h
new file mode 100644
index 000000000..8757eb70d
--- /dev/null
+++ b/keyboards/contra/keymaps/msiu/config.h
@@ -0,0 +1,37 @@
1#pragma once
2
3#ifdef AUDIO_ENABLE
4 #define STARTUP_SONG SONG(PLANCK_SOUND)
5 // #define STARTUP_SONG SONG(NO_SOUND)
6
7 #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
8 SONG(COLEMAK_SOUND), \
9 SONG(DVORAK_SOUND) \
10 }
11#endif
12
13#define MUSIC_MASK (keycode != KC_NO)
14
15/*
16 * MIDI options
17 */
18
19/* Prevent use of disabled MIDI features in the keymap */
20//#define MIDI_ENABLE_STRICT 1
21
22/* enable basic MIDI features:
23 - MIDI notes can be sent when in Music mode is on
24*/
25
26#define MIDI_BASIC
27
28/* enable advanced MIDI features:
29 - MIDI notes can be added to the keymap
30 - Octave shift and transpose
31 - Virtual sustain, portamento, and modulation wheel
32 - etc.
33*/
34//#define MIDI_ADVANCED
35
36/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
37//#define MIDI_TONE_KEYCODE_OCTAVES 2
diff --git a/keyboards/contra/keymaps/msiu/keymap.c b/keyboards/contra/keymaps/msiu/keymap.c
new file mode 100644
index 000000000..c68c2c7bb
--- /dev/null
+++ b/keyboards/contra/keymaps/msiu/keymap.c
@@ -0,0 +1,175 @@
1#include QMK_KEYBOARD_H
2
3extern keymap_config_t keymap_config;
4
5enum planck_layers {
6 _QWERTY,
7 _DVORAK,
8 _LOWER,
9 _RAISE,
10 _NUMB,
11 _FUNC,
12 _ADJUST
13};
14
15enum planck_keycodes {
16 QWERTY = SAFE_RANGE,
17 DVORAK,
18 LOWER,
19 RAISE
20};
21
22const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
23
24 /* Qwerty
25 * ,------------------------------------------------------------------------------------------.
26 * | Tab / Numb | Q | W | E | R | T | Y | U | I | O | P | Bksp |
27 * |-------------+------+------+------+------+-------------+------+------+------+------+------|
28 * | Esc / Ctrl | A | S | D | F | G | H | J | K | L | ; | ' |
29 * |-------------+------+------+------+------+------|------+------+------+------+------+------|
30 * | Shift | Z | X | C | V | B | N | M | , | . | / |Enter |
31 * |-------------+------+------+------+------+------+------+------+------+------+------+------|
32 * | Ctrl |Hyper | Alt | GUI |Lower | Func |Space |Raise | Left | Down | Up |Right |
33 * `------------------------------------------------------------------------------------------'
34 */
35 [_QWERTY] = LAYOUT_ortho_4x12(
36 LT(_NUMB, KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
37 LCTL_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,
38 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
39 KC_LCTL, KC_HYPR, KC_LALT, KC_LGUI, LOWER, MO(_FUNC), KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
40 ),
41
42 /* Dvorak
43 * ,-----------------------------------------------------------------------------------.
44 * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp |
45 * |------+------+------+------+------+-------------+------+------+------+------+------|
46 * | Esc | A | O | E | U | I | D | H | T | N | S | / |
47 * |------+------+------+------+------+------|------+------+------+------+------+------|
48 * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
49 * |------+------+------+------+------+------+------+------+------+------+------+------|
50 * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
51 * `-----------------------------------------------------------------------------------'
52 */
53 [_DVORAK] = LAYOUT_ortho_4x12(
54 _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, _______,
55 _______, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
56 _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, _______,
57 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
58 ),
59
60 /* Lower
61 * ,-----------------------------------------------------------------------------------.
62 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
63 * |------+------+------+------+------+-------------+------+------+------+------+------|
64 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
65 * |------+------+------+------+------+------|------+------+------+------+------+------|
66 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
67 * |------+------+------+------+------+------+------+------+------+------+------+------|
68 * | | | | | | | | Next | Vol- | Vol+ | Play |
69 * `-----------------------------------------------------------------------------------'
70 */
71 [_LOWER] = LAYOUT_ortho_4x12(
72 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
73 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
74 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
75 _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
76 ),
77
78 /* Raise
79 * ,-----------------------------------------------------------------------------------.
80 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
81 * |------+------+------+------+------+-------------+------+------+------+------+------|
82 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
83 * |------+------+------+------+------+------|------+------+------+------+------+------|
84 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
85 * |------+------+------+------+------+------+------+------+------+------+------+------|
86 * | | | | | | | | Next | Vol- | Vol+ | Play |
87 * `-----------------------------------------------------------------------------------'
88 */
89 [_RAISE] = LAYOUT_ortho_4x12(
90 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
91 _______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
92 _______, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
93 _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
94 ),
95
96 /* Adjust (Lower + Raise)
97 * ,-----------------------------------------------------------------------------------.
98 * | | Reset| | | | | | | | | | Del |
99 * |------+------+------+------+------+-------------+------+------+------+------+------|
100 * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| |
101 * |------+------+------+------+------+------|------+------+------+------+------+------|
102 * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | |
103 * |------+------+------+------+------+------+------+------+------+------+------+------|
104 * | | | | | | | | | | | |
105 * `-----------------------------------------------------------------------------------'
106 */
107 [_ADJUST] = LAYOUT_ortho_4x12(
108 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
109 _______, _______, _______, _______, _______, _______, _______, QWERTY, DVORAK, _______, _______, _______,
110 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
111 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET
112 ),
113
114 [_FUNC] = LAYOUT_ortho_4x12(
115 _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, KC_PSCR, _______,
116 _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
117 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
118 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
119 ),
120
121 [_NUMB] = LAYOUT_ortho_4x12(
122 _______, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, KC_BSPC,
123 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______,
124 _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______,
125 _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______, _______
126 )
127
128};
129
130bool process_record_user(uint16_t keycode, keyrecord_t *record) {
131 switch (keycode) {
132 case QWERTY:
133 if (record->event.pressed) {
134 // print("mode just switched to qwerty and this is a huge string\n");
135 set_single_persistent_default_layer(_QWERTY);
136 }
137 return false;
138 break;
139 case DVORAK:
140 if (record->event.pressed) {
141 set_single_persistent_default_layer(_DVORAK);
142 }
143 return false;
144 break;
145 case LOWER:
146 if (record->event.pressed) {
147 layer_on(_LOWER);
148 update_tri_layer(_LOWER, _RAISE, _ADJUST);
149 } else {
150 layer_off(_LOWER);
151 update_tri_layer(_LOWER, _RAISE, _ADJUST);
152 }
153 return false;
154 break;
155 case RAISE:
156 if (record->event.pressed) {
157 layer_on(_RAISE);
158 update_tri_layer(_LOWER, _RAISE, _ADJUST);
159 } else {
160 layer_off(_RAISE);
161 update_tri_layer(_LOWER, _RAISE, _ADJUST);
162 }
163 return false;
164 break;
165 case ADJUST:
166 if (record->event.pressed) {
167 layer_on(_ADJUST);
168 } else {
169 layer_off(_ADJUST);
170 }
171 return false;
172 break;
173 }
174 return true;
175}
diff --git a/keyboards/contra/keymaps/msiu/readme.md b/keyboards/contra/keymaps/msiu/readme.md
new file mode 100644
index 000000000..80aba1095
--- /dev/null
+++ b/keyboards/contra/keymaps/msiu/readme.md
@@ -0,0 +1,2 @@
1# The Default Contra Layout
2
diff --git a/keyboards/katana60/keymaps/msiu/config.h b/keyboards/katana60/keymaps/msiu/config.h
new file mode 100644
index 000000000..b57cc482e
--- /dev/null
+++ b/keyboards/katana60/keymaps/msiu/config.h
@@ -0,0 +1,21 @@
1/* Copyright 2017 Baris Tosun
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19
20// place overrides here
21
diff --git a/keyboards/katana60/keymaps/msiu/keymap.c b/keyboards/katana60/keymaps/msiu/keymap.c
new file mode 100644
index 000000000..72b795baa
--- /dev/null
+++ b/keyboards/katana60/keymaps/msiu/keymap.c
@@ -0,0 +1,70 @@
1#include QMK_KEYBOARD_H
2
3// Mod-Tap keys for cleaner code
4#define ESC_CTL LCTL_T(KC_ESC)
5#define SPC_LW LT(2, KC_SPC)
6#define ENT_FN LT(4, KC_ENT)
7
8#define _QW 0
9#define _DV 1
10#define _LW 2
11#define _RS 3
12#define _FN 4
13
14const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
15[_QW] = LAYOUT( /* Base */
16 KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, TG(1), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_PLUS,
17 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,
18 ESC_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
19 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_END, KC_DEL, KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
20 KC_LCTL, KC_HYPR, KC_LALT, KC_LGUI, SPC_LW, ENT_FN, KC_SPC, MO(3), KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
21 ),
22[_DV] = LAYOUT(
23 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
24 _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, _______, _______, KC_F, KC_G, KC_C, KC_R, KC_L, _______,
25 _______, KC_A, KC_O, KC_E, KC_U, KC_I, _______, _______, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
26 _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, _______, _______, _______, KC_B, KC_M, KC_W, KC_V, KC_Z, _______,
27 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
28 ),
29[_LW] = LAYOUT(
30 _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
31 _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
32 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
33 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
34 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
35 ),
36[_RS] = LAYOUT(
37 _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
38 _______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
39 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
40 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
41 _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
42 ),
43[_FN] = LAYOUT(
44 _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______,
45 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, KC_PSCR, _______,
46 _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
47 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
48 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
49 )
50};
51
52
53
54
55
56void matrix_init_user(void) {
57
58}
59
60void matrix_scan_user(void) {
61
62}
63
64bool process_record_user(uint16_t keycode, keyrecord_t *record) {
65 return true;
66}
67
68void led_set_user(uint8_t usb_led) {
69
70}
diff --git a/keyboards/katana60/keymaps/msiu/readme.md b/keyboards/katana60/keymaps/msiu/readme.md
new file mode 100644
index 000000000..e4f0ebdb6
--- /dev/null
+++ b/keyboards/katana60/keymaps/msiu/readme.md
@@ -0,0 +1,3 @@
1# msiu's keymap for katana: standard QWERTY layout with planck like layers
2
3This layout take a standard QWERTY default layer, with raise and lower layers similar to planck. It is for me to easily transition between keyboards. I put a few nav keys in the 'tree' middle, but I have come to realise I rarely use them as I am used to the planck layering. Top of the tree is a toggle for Dvorak layer.
diff --git a/keyboards/lets_split_eh/keymaps/msiu/config.h b/keyboards/lets_split_eh/keymaps/msiu/config.h
new file mode 100644
index 000000000..526c0837c
--- /dev/null
+++ b/keyboards/lets_split_eh/keymaps/msiu/config.h
@@ -0,0 +1,21 @@
1/*
2This is the c configuration file for the keymap
3
4Copyright 2012 Jun Wako <wakojun@gmail.com>
5Copyright 2015 Jack Humbert
6
7This program is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation, either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program. If not, see <http://www.gnu.org/licenses/>.
19*/
20
21#pragma once
diff --git a/keyboards/lets_split_eh/keymaps/msiu/keymap.c b/keyboards/lets_split_eh/keymaps/msiu/keymap.c
new file mode 100644
index 000000000..af5c98241
--- /dev/null
+++ b/keyboards/lets_split_eh/keymaps/msiu/keymap.c
@@ -0,0 +1,195 @@
1#include QMK_KEYBOARD_H
2
3extern keymap_config_t keymap_config;
4
5// Each layer gets a name for readability, which is then used in the keymap matrix below.
6// The underscores don't mean anything - you can have a layer called STUFF or any other name.
7// Layer names don't all need to be of the same length, obviously, and you can also skip them
8// entirely and just use numbers.
9#define _QWERTY 0
10#define _DVORAK 1
11
12#define _LOWER 3
13#define _RAISE 4
14
15#define _NUMB 14
16#define _FUNC 15
17#define _ADJUST 16
18
19
20enum custom_keycodes {
21 QWERTY = SAFE_RANGE,
22 DVORAK,
23 LOWER,
24 RAISE,
25 ADJUST
26};
27
28
29const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
30
31/* Qwerty
32 * ,-----------------------------------------------------------------------------------.
33 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
34 * |------+------+------+------+------+-------------+------+------+------+------+------|
35 * | Esc | A | S | D | F | G | H | J | K | L | ; | ' |
36 * |------+------+------+------+------+------|------+------+------+------+------+------|
37 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
38 * |------+------+------+------+------+------+------+------+------+------+------+------|
39 * | Ctrl |Hyper | Alt | GUI |Lower | Func |Space |Raise | Left | Down | Up |Right |
40 * `-----------------------------------------------------------------------------------'
41 */
42[_QWERTY] = LAYOUT( \
43 LT(_NUMB, KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
44 LCTL_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, \
45 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, \
46 KC_LCTL, KC_HYPR, KC_LALT, KC_LGUI, LOWER, MO(_FUNC), KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
47),
48
49// Dvorak
50[_DVORAK] = LAYOUT( \
51 _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, _______, \
52 _______, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \
53 _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, _______ , \
54 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
55),
56
57
58/* Lower
59 * ,-----------------------------------------------------------------------------------.
60 * | Esc | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
61 * |------+------+------+------+------+-------------+------+------+------+------+------|
62 * | | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } |Enter |
63 * |------+------+------+------+------+------|------+------+------+------+------+------|
64 * | | F7 | F8 | F9 | F10 | F11 | F12 | | | Mute | | | |
65 * |------+------+------+------+------+------+------+------+------+------+------+------|
66 * | | | | |Lower | Bksp | Bksp |Raise | Next | Vol- | Vol+ | Play |
67 * `-----------------------------------------------------------------------------------'
68 */
69[_LOWER] = LAYOUT( \
70 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, \
71 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \
72 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE, \
73 _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT \
74),
75
76/* Raise
77 * ,-----------------------------------------------------------------------------------.
78 * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
79 * |------+------+------+------+------+-------------+------+------+------+------+------|
80 * | | 4 | 5 | 6 | + | F5 | F6 | - | = | [ | ] |Enter |
81 * |------+------+------+------+------+------|------+------+------+------+------+------|
82 * |Enter | 7 | 8 | 9 | - | F11 | F12 |ISO # |ISO / | Mute | | \ |
83 * |------+------+------+------+------+------+------+------+------+------+------+------|
84 * | | , | 0 | . |Lower | Bksp | Bksp |Raise | Next | Vol- | Vol+ | Play |
85 * `-----------------------------------------------------------------------------------'
86 */
87[_RAISE] = LAYOUT( \
88 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
89 _______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \
90 _______, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE, \
91 _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT \
92),
93
94/* Adjust (Lower + Raise)
95 * ,-----------------------------------------------------------------------------------.
96 * |Taskmg| | | | | | | |RGBVAI|RGBSAI|RGBHUI|caltde|
97 * |------+------+------+------+------+-------------+------+------+------+------+------|
98 * | | | | | | | |Qwerty|RGBVAD|RGBSAD|RGBHUD|RGBTOG|
99 * |------+------+------+------+------+------|------+------+------+------+------+------|
100 * | | | | | | | | | | | |BLSTEP|
101 * |------+------+------+------+------+------+------+------+------+------+------+------|
102 * | | | | | | | | | | | | RESET|
103 * `-----------------------------------------------------------------------------------'
104 */
105[_ADJUST] = LAYOUT( \
106 RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, \
107 RGB_MOD, RGB_VAD, RGB_SAD, RGB_HUD, _______, _______, _______, QWERTY, DVORAK, _______, _______, _______, \
108 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
109 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET \
110),
111
112/* FUNC
113 * ,-----------------------------------------------------------------------------------.
114 * | | | | | | | | | Up | | | |
115 * |------+------+------+------+------+-------------+------+------+------+------+------|
116 * | | | | | | | | Left | Down |Right | | |
117 * |------+------+------+------+------+------|------+------+------+------+------+------|
118 * | Caps | | | | | | | | | | | |
119 * |------+------+------+------+------+------+------+------+------+------+------+------|
120 * | | | | | | | | | | | |
121 * `-----------------------------------------------------------------------------------'
122 */
123[_FUNC] = LAYOUT( \
124 _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, KC_PSCR, _______, \
125 _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, \
126 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
127 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
128),
129
130// Numpad
131[_NUMB] = LAYOUT( \
132 _______, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, KC_BSPC, \
133 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, \
134 _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, \
135 _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______, _______ \
136)
137
138};
139
140void persistent_default_layer_set(uint16_t default_layer) {
141 eeconfig_update_default_layer(default_layer);
142 default_layer_set(default_layer);
143}
144
145bool process_record_user(uint16_t keycode, keyrecord_t *record) {
146 switch (keycode) {
147 // case QWERTY:
148 // if (record->event.pressed) {
149 // persistent_default_layer_set(1UL<<_QWERTY);
150 // }
151 // return false;
152 // break;
153 case QWERTY:
154 if (record->event.pressed) {
155 set_single_persistent_default_layer(_QWERTY);
156 }
157 return false;
158 break;
159 case DVORAK:
160 if (record->event.pressed) {
161 set_single_persistent_default_layer(_DVORAK);
162 }
163 return false;
164 break;
165 case LOWER:
166 if (record->event.pressed) {
167 layer_on(_LOWER);
168 update_tri_layer(_LOWER, _RAISE, _ADJUST);
169 } else {
170 layer_off(_LOWER);
171 update_tri_layer(_LOWER, _RAISE, _ADJUST);
172 }
173 return false;
174 break;
175 case RAISE:
176 if (record->event.pressed) {
177 layer_on(_RAISE);
178 update_tri_layer(_LOWER, _RAISE, _ADJUST);
179 } else {
180 layer_off(_RAISE);
181 update_tri_layer(_LOWER, _RAISE, _ADJUST);
182 }
183 return false;
184 break;
185 case ADJUST:
186 if (record->event.pressed) {
187 layer_on(_ADJUST);
188 } else {
189 layer_off(_ADJUST);
190 }
191 return false;
192 break;
193 }
194 return true;
195}
diff --git a/keyboards/planck/keymaps/msiu/config.h b/keyboards/planck/keymaps/msiu/config.h
new file mode 100644
index 000000000..40e399a67
--- /dev/null
+++ b/keyboards/planck/keymaps/msiu/config.h
@@ -0,0 +1,40 @@
1#pragma once
2
3
4#ifdef AUDIO_ENABLE
5 #define STARTUP_SONG SONG(PLANCK_SOUND)
6 // #define STARTUP_SONG SONG(NO_SOUND)
7
8 #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
9 SONG(COLEMAK_SOUND), \
10 SONG(DVORAK_SOUND) \
11 }
12#endif
13
14/*
15 * MIDI options
16 */
17
18/* Prevent use of disabled MIDI features in the keymap */
19//#define MIDI_ENABLE_STRICT 1
20
21/* enable basic MIDI features:
22 - MIDI notes can be sent when in Music mode is on
23*/
24
25#define MIDI_BASIC
26
27/* enable advanced MIDI features:
28 - MIDI notes can be added to the keymap
29 - Octave shift and transpose
30 - Virtual sustain, portamento, and modulation wheel
31 - etc.
32*/
33//#define MIDI_ADVANCED
34
35/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
36//#define MIDI_TONE_KEYCODE_OCTAVES 2
37
38// Most tactile encoders have detents every 4 stages
39#define ENCODER_RESOLUTION 4
40
diff --git a/keyboards/planck/keymaps/msiu/keymap.c b/keyboards/planck/keymaps/msiu/keymap.c
new file mode 100644
index 000000000..aea59e8d7
--- /dev/null
+++ b/keyboards/planck/keymaps/msiu/keymap.c
@@ -0,0 +1,208 @@
1#include QMK_KEYBOARD_H
2#include "muse.h"
3
4extern keymap_config_t keymap_config;
5
6enum planck_layers {
7 _QWERTY,
8 _DVORAK,
9 _LOWER,
10 _RAISE,
11 _NUMB,
12 _FUNC,
13 _ADJUST
14};
15
16enum planck_keycodes {
17 QWERTY = SAFE_RANGE,
18 DVORAK,
19 BACKLIT,
20 EXT_PLV
21};
22
23#define LOWER MO(_LOWER)
24#define RAISE MO(_RAISE)
25
26const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
27
28[_QWERTY] = LAYOUT_planck_grid(
29 LT(_NUMB, KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
30 LCTL_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,
31 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
32 KC_LCTL, KC_HYPR, KC_LALT, KC_LGUI, LOWER, MO(_FUNC), KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
33),
34
35[_DVORAK] = LAYOUT_planck_grid(
36 _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, _______,
37 _______, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
38 _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, _______,
39 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
40),
41
42[_LOWER] = LAYOUT_planck_grid(
43 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
44 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
45 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
46 _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
47),
48
49[_RAISE] = LAYOUT_planck_grid(
50 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
51 _______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
52 _______, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
53 _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
54),
55
56[_ADJUST] = LAYOUT_planck_grid(
57 _______, _______, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL ,
58 _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, DVORAK, _______, _______, _______,
59 _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF,_______, _______, _______,
60 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET
61),
62
63[_FUNC] = LAYOUT_planck_grid(
64 _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, KC_PSCR, _______,
65 _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
66 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
67 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
68),
69
70[_NUMB] = LAYOUT_planck_grid(
71 _______, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, KC_BSPC,
72 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______,
73 _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______,
74 _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______, _______
75)
76
77
78};
79
80#ifdef AUDIO_ENABLE
81 float plover_song[][2] = SONG(PLOVER_SOUND);
82 float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
83#endif
84
85uint32_t layer_state_set_user(uint32_t state) {
86 return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
87}
88
89bool process_record_user(uint16_t keycode, keyrecord_t *record) {
90 switch (keycode) {
91 case QWERTY:
92 if (record->event.pressed) {
93 print("mode just switched to qwerty and this is a huge string\n");
94 set_single_persistent_default_layer(_QWERTY);
95 }
96 return false;
97 break;
98 case DVORAK:
99 if (record->event.pressed) {
100 set_single_persistent_default_layer(_DVORAK);
101 }
102 return false;
103 break;
104 case BACKLIT:
105 if (record->event.pressed) {
106 register_code(KC_RSFT);
107 #ifdef BACKLIGHT_ENABLE
108 backlight_step();
109 #endif
110 #ifdef KEYBOARD_planck_rev5
111 PORTE &= ~(1<<6);
112 #endif
113 } else {
114 unregister_code(KC_RSFT);
115 #ifdef KEYBOARD_planck_rev5
116 PORTE |= (1<<6);
117 #endif
118 }
119 return false;
120 break;
121 }
122 return true;
123}
124
125bool muse_mode = false;
126uint8_t last_muse_note = 0;
127uint16_t muse_counter = 0;
128uint8_t muse_offset = 70;
129uint16_t muse_tempo = 50;
130
131void encoder_update(bool clockwise) {
132 if (muse_mode) {
133 if (IS_LAYER_ON(_RAISE)) {
134 if (clockwise) {
135 muse_offset++;
136 } else {
137 muse_offset--;
138 }
139 } else {
140 if (clockwise) {
141 muse_tempo+=1;
142 } else {
143 muse_tempo-=1;
144 }
145 }
146 } else {
147 if (clockwise) {
148 register_code(KC_PGDN);
149 unregister_code(KC_PGDN);
150 } else {
151 register_code(KC_PGUP);
152 unregister_code(KC_PGUP);
153 }
154 }
155}
156
157void dip_update(uint8_t index, bool active) {
158 switch (index) {
159 case 0:
160 if (active) {
161 #ifdef AUDIO_ENABLE
162 PLAY_SONG(plover_song);
163 #endif
164 layer_on(_ADJUST);
165 } else {
166 #ifdef AUDIO_ENABLE
167 PLAY_SONG(plover_gb_song);
168 #endif
169 layer_off(_ADJUST);
170 }
171 break;
172 case 1:
173 if (active) {
174 muse_mode = true;
175 } else {
176 muse_mode = false;
177 #ifdef AUDIO_ENABLE
178 stop_all_notes();
179 #endif
180 }
181 }
182}
183
184void matrix_scan_user(void) {
185 #ifdef AUDIO_ENABLE
186 if (muse_mode) {
187 if (muse_counter == 0) {
188 uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
189 if (muse_note != last_muse_note) {
190 stop_note(compute_freq_for_midi_note(last_muse_note));
191 play_note(compute_freq_for_midi_note(muse_note), 0xF);
192 last_muse_note = muse_note;
193 }
194 }
195 muse_counter = (muse_counter + 1) % muse_tempo;
196 }
197 #endif
198}
199
200bool music_mask_user(uint16_t keycode) {
201 switch (keycode) {
202 case RAISE:
203 case LOWER:
204 return false;
205 default:
206 return true;
207 }
208}
diff --git a/keyboards/planck/keymaps/msiu/readme.md b/keyboards/planck/keymaps/msiu/readme.md
new file mode 100644
index 000000000..de9680b49
--- /dev/null
+++ b/keyboards/planck/keymaps/msiu/readme.md
@@ -0,0 +1,2 @@
1# The Default Planck Layout
2
diff --git a/keyboards/planck/keymaps/msiu/rules.mk b/keyboards/planck/keymaps/msiu/rules.mk
new file mode 100644
index 000000000..dcf16bef3
--- /dev/null
+++ b/keyboards/planck/keymaps/msiu/rules.mk
@@ -0,0 +1 @@
SRC += muse.c
diff --git a/keyboards/xd75/keymaps/msiu/config.h b/keyboards/xd75/keymaps/msiu/config.h
new file mode 100644
index 000000000..4fbd59bec
--- /dev/null
+++ b/keyboards/xd75/keymaps/msiu/config.h
@@ -0,0 +1,18 @@
1/* Copyright 2017 Benjamin Kesselring
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18// place overrides here
diff --git a/keyboards/xd75/keymaps/msiu/keymap.c b/keyboards/xd75/keymaps/msiu/keymap.c
new file mode 100644
index 000000000..c4cc456a9
--- /dev/null
+++ b/keyboards/xd75/keymaps/msiu/keymap.c
@@ -0,0 +1,120 @@
1/* Copyright 2017 Benjamin Kesselring
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17/* What this layout is: QWERTY layout with the standard 40% layers. For easy
18 * switching between my xd75 and contra
19 */
20
21#include QMK_KEYBOARD_H
22
23// Layer shorthand
24#define _QW 0
25#define _DV 1
26#define _LW 2
27#define _RS 3
28#define _FN 4
29
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31
32/* QWERTY
33 * .--------------------------------------------------------------------------------------------------------------------------------------.
34 * | ` | 1 | 2 | 3 | 4 | 5 | - | = | \ | 6 | 7 | 8 | 9 | 0 | BACKSP |
35 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
36 * | TAB | Q | W | E | R | T | 7 | 8 | 9 | Y | U | I | O | P | BACKSP |
37 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
38 * | ESC | A | S | D | F | G | 4 | 5 | 6 | H | J | K | L | ; | ' |
39 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
40 * | LSHIFT | Z | X | C | V | B | 1 | 2 | 3 | N | M | , | . | / | ENTER |
41 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------+--------|
42 * | LCTRL | HYPER | LALT | LGUI | LOWER | FN | 0 | | . | SPACE | RAISE | LEFT | DOWN | UP | RIGHT |
43 * '--------------------------------------------------------------------------------------------------------------------------------------'
44 */
45
46 [_QW] = { /* QWERTY */
47 { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_PLUS, KC_MINS, KC_ASTR, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC },
48 { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_7, KC_8, KC_9 , KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL },
49 { LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_4, KC_5, KC_6 , KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT },
50 { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_1, KC_2, KC_3 , KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT },
51 { KC_LCTL, KC_HYPR, KC_LALT, KC_LGUI, MO(_LW), MO(_FN), KC_0, _______, KC_DOT , KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT },
52 },
53
54 /* Dvorak */
55
56 [_DV] = { /* Dvorak */
57 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
58 { _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, _______, _______, _______, KC_F, KC_G, KC_C, KC_R, KC_L, _______ },
59 { _______, KC_A, KC_O, KC_E, KC_U, KC_I, _______, _______, _______, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH },
60 { _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, _______, _______, _______, KC_B, KC_M, KC_W, KC_V, KC_Z, _______ },
61 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
62 },
63
64
65/* LOWERED
66 * .--------------------------------------------------------------------------------------------------------------------------------------.
67 * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | DEL |
68 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
69 * | ~ | ! | @ | # | $ | % | | VOLU | | ^ | & | * | ( | ) | DEL |
70 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
71 * | | F1 | F2 | F3 | F4 | F5 | PREV | PLAY | NEXT | F6 | _ | + | { | } | | |
72 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------+--------|
73 * | | F7 | F8 | F9 | F10 | F11 | | VOLD | | F12 | PAGEDW | PAGEUP | HOME | END | MUTE |
74 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------+--------|
75 * | | | | | | | | MUTE | | PLAY | | PREV | VOLD | VOLU | NEXT |
76 * '--------------------------------------------------------------------------------------------------------------------------------------'
77 */
78
79 [_LW] = { /* LOWERED */
80 { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL },
81 { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, KC_VOLU, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL },
82 { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_MPRV, KC_MPLY, KC_MNXT, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE },
83 { _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, KC_VOLD, _______, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE },
84 { _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT },
85 },
86
87/* RAISED
88 * .--------------------------------------------------------------------------------------------------------------------------------------.
89 * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | DEL |
90 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
91 * | ` | 1 | 2 | 3 | 4 | 5 | | VOLU | | 6 | 7 | 8 | 9 | 0 | |
92 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
93 * | | F1 | F2 | F3 | F4 | F5 | PREV | PLAY | NEXT | F6 | - | = | [ | ] | \ |
94 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
95 * | | F7 | F8 | F9 | F10 | F11 | | VOLD | | F12 | PAGEUP | PAGEDW | HOME | END | MUTE |
96 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
97 * | | | | | | | | MUTE | | PLAY | | PREV | VOLD | VOLU | NEXT |
98 * '--------------------------------------------------------------------------------------------------------------------------------------'
99 */
100
101 [_RS] = { /* RAISED */
102 { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL },
103 { KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, _______, KC_VOLU, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL },
104 { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_MPRV, KC_MPLY, KC_MNXT, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS },
105 { _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, KC_VOLD, _______, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE },
106 { _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT },
107 },
108
109/* FUNCTION */
110
111 [_FN] = { /* FUNCTION */
112 { RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_INC, BL_DEC, _______, _______, _______, _______ },
113 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP , _______, KC_PSCR, _______ },
114 { _______, _______, _______, TO(_DV), TO(_QW), _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______ },
115 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
116 { RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
117 },
118};
119
120
diff --git a/keyboards/xd75/keymaps/msiu/readme.md b/keyboards/xd75/keymaps/msiu/readme.md
new file mode 100644
index 000000000..d53c0f34a
--- /dev/null
+++ b/keyboards/xd75/keymaps/msiu/readme.md
@@ -0,0 +1 @@
# The default keymap for xd75