aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/sck/osa/keymaps
diff options
context:
space:
mode:
authorGravatar J.Flanagan <jrfhoutx@comcast.net>2019-10-05 12:44:55 -0500
committerGravatar Drashna Jaelre <drashna@live.com>2019-10-05 10:44:55 -0700
commit19b60c273ab63c250db748e5eead6baba88cd0d8 (patch)
tree72a0fa65515e4d25e099c3ae68250ed0a8e39184 /keyboards/sck/osa/keymaps
parentdbce3f648b342418f79de977068f2005d534cff7 (diff)
downloadqmk_firmware-19b60c273ab63c250db748e5eead6baba88cd0d8.tar.gz
[Keyboard] Add OSA keyboard (#6849)
* initial commit restart of osa development * minor changes Minor changes mostly changing naming and comment out rgb modes * initial commit restart of osa development * minor changes Minor changes mostly changing naming and comment out rgb modes * more minor changes comment out some functions correct some spelling errors change some of the descriptive text * Minor Changes Minor changers per PR requests * Minor Changes Minor changes per PR suggestions * Major Changes Per PR suggestion from noroadsleft: - changed macro to LAYOUT_all in info.json, dualsplit/keymap.c and ocm/keymap.c, and osa.h - added osa.h macros for other layouts per suggestion and used suggested naming - changed naming of layout macros to correspond to macros and naming in default/keymap.c, dualsplit/keymap.c, ocm/keymap.c, splitbs/keymap.c, and splitrs/keymap.c - removed duplicate layers from all keymaps and edited per suggestions - compiled each keymap to check for and correct any potential errors. all compiled with no errors * Minor Change - fixed imgur image link in readme.md to be correct format * Minor Changes changes to macro layouts in osa.h changes to dualsplit/keymap.c - added arrows to layer 1 * Changes - Made changes to info.json to match osa.h - changes to osa.c enabling indicator LEDs - changed "dualsplit" directory name to "all" to match keymap naming in osa.h, info.json, and keymap.c - minor changes to all/keymap.c * Update keyboards/sck/osa/rules.mk Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update keyboards/sck/osa/readme.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Changes to info.json - revert to info.json from version in b3b49c3 per requested changes
Diffstat (limited to 'keyboards/sck/osa/keymaps')
-rw-r--r--keyboards/sck/osa/keymaps/all/config.h19
-rw-r--r--keyboards/sck/osa/keymaps/all/keymap.c103
-rw-r--r--keyboards/sck/osa/keymaps/all/readme.md1
-rw-r--r--keyboards/sck/osa/keymaps/default/config.h19
-rw-r--r--keyboards/sck/osa/keymaps/default/keymap.c103
-rw-r--r--keyboards/sck/osa/keymaps/default/readme.md1
-rw-r--r--keyboards/sck/osa/keymaps/ocm/config.h19
-rw-r--r--keyboards/sck/osa/keymaps/ocm/keymap.c123
-rw-r--r--keyboards/sck/osa/keymaps/ocm/readme.md1
-rw-r--r--keyboards/sck/osa/keymaps/splitbs/config.h19
-rw-r--r--keyboards/sck/osa/keymaps/splitbs/keymap.c103
-rw-r--r--keyboards/sck/osa/keymaps/splitbs/readme.md1
-rw-r--r--keyboards/sck/osa/keymaps/splitrs/config.h19
-rw-r--r--keyboards/sck/osa/keymaps/splitrs/keymap.c103
-rw-r--r--keyboards/sck/osa/keymaps/splitrs/readme.md1
15 files changed, 635 insertions, 0 deletions
diff --git a/keyboards/sck/osa/keymaps/all/config.h b/keyboards/sck/osa/keymaps/all/config.h
new file mode 100644
index 000000000..499a4753f
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/all/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/sck/osa/keymaps/all/keymap.c b/keyboards/sck/osa/keymaps/all/keymap.c
new file mode 100644
index 000000000..378f8ed58
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/all/keymap.c
@@ -0,0 +1,103 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+// Defines the keycodes used by our macros in process_record_user
+//enum custom_keycodes {
+// QMKBEST = SAFE_RANGE,
+// QMKURL
+//};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[0] = LAYOUT_all( /* OSA Base */
+ 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_GRV, KC_BSLS,
+ 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_BSPC,
+ 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_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_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL
+ ),
+/* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| UP| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl |LFT| DN|RGHT| F| G| |LFT|DN| UP |RGHT| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[1] = LAYOUT_all( /* OSA Layer 1 */
+ KC_SLCK, 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_NLCK, KC_TAB, KC_Q, KC_UP, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
+ KC_CLCK, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_F, KC_G, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, 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_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, _______, KC_SPC, KC_RALT, KC_RCTL
+ ),
+};
+
+
+
+
+//bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+// switch (keycode) {
+// case QMKBEST:
+// if (record->event.pressed) {
+// // when keycode QMKBEST is pressed
+// SEND_STRING("QMK is the best thing ever!");
+// } else {
+// // when keycode QMKBEST is released
+// }
+// break;
+// case QMKURL:
+// if (record->event.pressed) {
+// // when keycode QMKURL is pressed
+// SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER));
+// } else {
+// // when keycode QMKURL is released
+// }
+// break;
+// }
+// return true;
+//}
+
+void matrix_init_user(void) {
+
+}
+
+void matrix_scan_user(void) {
+
+}
+
+void led_set_user(uint8_t usb_led) {
+
+}
diff --git a/keyboards/sck/osa/keymaps/all/readme.md b/keyboards/sck/osa/keymaps/all/readme.md
new file mode 100644
index 000000000..03a0b5463
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/all/readme.md
@@ -0,0 +1 @@
+# The split backspace and split right shift keymap for osa
diff --git a/keyboards/sck/osa/keymaps/default/config.h b/keyboards/sck/osa/keymaps/default/config.h
new file mode 100644
index 000000000..499a4753f
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/default/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/sck/osa/keymaps/default/keymap.c b/keyboards/sck/osa/keymaps/default/keymap.c
new file mode 100644
index 000000000..d6cfddc46
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/default/keymap.c
@@ -0,0 +1,103 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+// Defines the keycodes used by our macros in process_record_user
+//enum custom_keycodes {
+// QMKBEST = SAFE_RANGE,
+// QMKURL
+//};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 || ~ | 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =|Backsp |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+ [0] = LAYOUT_default_ansi( /* Base */
+ 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_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_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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL
+ ),
+/* Keymap BASE: (Base Layer) Default Layer
+ * .--------.,----------------------------------------------------------------------.
+ * |RGB_TOG || ~ | 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =|Backsp |
+ * |--------||----------------------------------------------------------------------|
+ * |RGB_MOD ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] | \ |
+ * |--------||----------------------------------------------------------------------|
+ * |RGB_RMOD||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `--------'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+ [1] = LAYOUT_default_ansi( /* OSA Layer 1 */
+ RGB_TOG, RGB_M_T, RGB_VAI, RGB_VAD, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ RGB_MOD, KC_TAB, KC_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,
+ RGB_RMOD, 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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LALT, KC_SPC, _______, KC_SPC, KC_RALT, KC_RCTL
+ ),
+};
+
+
+
+
+//bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+// switch (keycode) {
+// case QMKBEST:
+// if (record->event.pressed) {
+// // when keycode QMKBEST is pressed
+// SEND_STRING("QMK is the best thing ever!");
+// } else {
+// // when keycode QMKBEST is released
+// }
+// break;
+// case QMKURL:
+// if (record->event.pressed) {
+// // when keycode QMKURL is pressed
+// SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER));
+// } else {
+// // when keycode QMKURL is released
+// }
+// break;
+// }
+// return true;
+//}
+
+void matrix_init_user(void) {
+
+}
+
+void matrix_scan_user(void) {
+
+}
+
+//void led_set_user(uint16_t usb_led) {
+//
+//}
diff --git a/keyboards/sck/osa/keymaps/default/readme.md b/keyboards/sck/osa/keymaps/default/readme.md
new file mode 100644
index 000000000..982042494
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/default/readme.md
@@ -0,0 +1 @@
+# The default ANSI keymap for OSA
diff --git a/keyboards/sck/osa/keymaps/ocm/config.h b/keyboards/sck/osa/keymaps/ocm/config.h
new file mode 100644
index 000000000..499a4753f
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/ocm/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/sck/osa/keymaps/ocm/keymap.c b/keyboards/sck/osa/keymaps/ocm/keymap.c
new file mode 100644
index 000000000..cd48b5729
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/ocm/keymap.c
@@ -0,0 +1,123 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+// Defines the keycodes used by our macros in process_record_user
+//enum custom_keycodes {
+// QMKBEST = SAFE_RANGE,
+// QMKURL
+//};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[0] = LAYOUT_all( /* OSA Base */
+ 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_GRV, KC_BSLS,
+ 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_BSPC,
+ 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_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_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL
+ ),
+/* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[1] = LAYOUT_all( /* OSA Layer 1 */
+ 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_GRV, KC_BSLS,
+ 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_BSPC,
+ 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_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_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, MO(2), KC_SPC, KC_RALT, KC_RCTL
+ ),
+/* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[2] = LAYOUT_all( /* OSA Layer 2 */
+ 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_GRV, KC_BSLS,
+ 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_BSPC,
+ 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_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_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL
+ ),
+};
+
+
+
+
+//bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+// switch (keycode) {
+// case QMKBEST:
+// if (record->event.pressed) {
+// // when keycode QMKBEST is pressed
+// SEND_STRING("QMK is the best thing ever!");
+// } else {
+// // when keycode QMKBEST is released
+// }
+// break;
+// case QMKURL:
+// if (record->event.pressed) {
+// // when keycode QMKURL is pressed
+// SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER));
+// } else {
+// // when keycode QMKURL is released
+// }
+// break;
+// }
+// return true;
+//}
+
+void matrix_init_user(void) {
+
+}
+
+void matrix_scan_user(void) {
+
+}
+
+void led_set_user(uint8_t usb_led) {
+
+}
diff --git a/keyboards/sck/osa/keymaps/ocm/readme.md b/keyboards/sck/osa/keymaps/ocm/readme.md
new file mode 100644
index 000000000..3624b1078
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/ocm/readme.md
@@ -0,0 +1 @@
+# OneCreativeMind's keymap for OSA
diff --git a/keyboards/sck/osa/keymaps/splitbs/config.h b/keyboards/sck/osa/keymaps/splitbs/config.h
new file mode 100644
index 000000000..499a4753f
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/splitbs/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/sck/osa/keymaps/splitbs/keymap.c b/keyboards/sck/osa/keymaps/splitbs/keymap.c
new file mode 100644
index 000000000..528e45329
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/splitbs/keymap.c
@@ -0,0 +1,103 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+// Defines the keycodes used by our macros in process_record_user
+//enum custom_keycodes {
+// QMKBEST = SAFE_RANGE,
+// QMKURL
+//};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[0] = LAYOUT_split_backspace( /* OSA Base */
+ 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_GRV, KC_BSLS,
+ 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_BSPC,
+ 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_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, MO(1), KC_SPC, KC_RALT, KC_RCTL
+ ),
+/* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 ||Esc| 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =| ~ | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] |BkSpc|
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[1] = LAYOUT_split_backspace( /* OSA Layer 1 */
+ 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_GRV, KC_BSLS,
+ 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_BSPC,
+ 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_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_SPC, KC_RALT, KC_RCTL
+ ),
+};
+
+
+
+
+//bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+// switch (keycode) {
+// case QMKBEST:
+// if (record->event.pressed) {
+// // when keycode QMKBEST is pressed
+// SEND_STRING("QMK is the best thing ever!");
+// } else {
+// // when keycode QMKBEST is released
+// }
+// break;
+// case QMKURL:
+// if (record->event.pressed) {
+// // when keycode QMKURL is pressed
+// SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER));
+// } else {
+// // when keycode QMKURL is released
+// }
+// break;
+// }
+// return true;
+//}
+
+void matrix_init_user(void) {
+
+}
+
+void matrix_scan_user(void) {
+
+}
+
+void led_set_user(uint8_t usb_led) {
+
+}
diff --git a/keyboards/sck/osa/keymaps/splitbs/readme.md b/keyboards/sck/osa/keymaps/splitbs/readme.md
new file mode 100644
index 000000000..33fb31b33
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/splitbs/readme.md
@@ -0,0 +1 @@
+# The split backspace keymap for osa
diff --git a/keyboards/sck/osa/keymaps/splitrs/config.h b/keyboards/sck/osa/keymaps/splitrs/config.h
new file mode 100644
index 000000000..499a4753f
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/splitrs/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+// place overrides here
diff --git a/keyboards/sck/osa/keymaps/splitrs/keymap.c b/keyboards/sck/osa/keymaps/splitrs/keymap.c
new file mode 100644
index 000000000..a59b66334
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/splitrs/keymap.c
@@ -0,0 +1,103 @@
+/* Copyright 2019 jrfhoutx
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+// Defines the keycodes used by our macros in process_record_user
+//enum custom_keycodes {
+// QMKBEST = SAFE_RANGE,
+// QMKURL
+//};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 || ~ | 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =|Backsp |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[0] = LAYOUT_split_right_shift( /* OSA Base */
+ 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_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_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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL
+ ),
+/* Keymap BASE: (Base Layer) Default Layer
+ * .----.,----------------------------------------------------------------------.
+ * | M1 || ~ | 1 | 2| 3| 4| 5| 6| | 7| 8| 9| 0| -| =|Backsp |
+ * |----||----------------------------------------------------------------------|
+ * | M2 ||Tab | Q| W| E| R| T| | Y| U| I| O| P| [ | ] | \ |
+ * |----||----------------------------------------------------------------------|
+ * | M3 ||Ctrl | A| S| D| F| G| | H| J| K| L| ;| '|Return |
+ * `----'|----------------------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| | B| N| M| ,| .| /|Shift | Fn |
+ * |----------------------------------------------------------------------|
+ * |CAPS| | Alt | Space | Fn | | Space | Alt | | Ctrl|
+ * `----------------------------------------------------------------------'
+ */
+[1] = LAYOUT_split_right_shift( /* OSA Layer 1 */
+ 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_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_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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_HOME,
+ KC_LCTL, KC_LALT, KC_SPC, _______, KC_SPC, KC_RALT, KC_RCTL
+ ),
+};
+
+
+
+
+//bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+// switch (keycode) {
+// case QMKBEST:
+// if (record->event.pressed) {
+// // when keycode QMKBEST is pressed
+// SEND_STRING("QMK is the best thing ever!");
+// } else {
+// // when keycode QMKBEST is released
+// }
+// break;
+// case QMKURL:
+// if (record->event.pressed) {
+// // when keycode QMKURL is pressed
+// SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER));
+// } else {
+// // when keycode QMKURL is released
+// }
+// break;
+// }
+// return true;
+//}
+
+void matrix_init_user(void) {
+
+}
+
+void matrix_scan_user(void) {
+
+}
+
+void led_set_user(uint8_t usb_led) {
+
+}
diff --git a/keyboards/sck/osa/keymaps/splitrs/readme.md b/keyboards/sck/osa/keymaps/splitrs/readme.md
new file mode 100644
index 000000000..9f2315c2a
--- /dev/null
+++ b/keyboards/sck/osa/keymaps/splitrs/readme.md
@@ -0,0 +1 @@
+# The split right shift keymap for osa