Skip to content

Commit

Permalink
[Keymap] Romac Keymap with VIA and OLED Support (qmk#10249)
Browse files Browse the repository at this point in the history
* Add Personal Keymap with VIA and OLED

* Update keyboards/kingly_keys/romac/keymaps/boss566y/keymap.c

Co-authored-by: Drashna Jaelre <[email protected]>

* Update keyboards/kingly_keys/romac/keymaps/boss566y/keymap.c

Co-authored-by: Drashna Jaelre <[email protected]>

* Update keyboards/kingly_keys/romac/keymaps/boss566y/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/kingly_keys/romac/keymaps/boss566y/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/kingly_keys/romac/keymaps/boss566y/keymap.c

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Drashna Jaelre <[email protected]>
Co-authored-by: Ryan <[email protected]>
  • Loading branch information
3 people authored Sep 9, 2020
1 parent 6d1fe6d commit c8099f3
Show file tree
Hide file tree
Showing 3 changed files with 113 additions and 0 deletions.
20 changes: 20 additions & 0 deletions keyboards/kingly_keys/romac/keymaps/boss566y/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*
Copyright 2020 boss566y
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General 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

#define DYNAMIC_KEYMAP_LAYER_COUNT 8
90 changes: 90 additions & 0 deletions keyboards/kingly_keys/romac/keymaps/boss566y/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
/* Copyright 2018 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 <http://www.gnu.org/licenses/>.
*/

#include QMK_KEYBOARD_H

char oled_layer[20];

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
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,
MO(1), KC_KP_0, KC_KP_DOT
),
[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
),
[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
),
[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
),
[4] = 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
),
[5] = 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
),
[6] = 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
),
[7] = 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
)
};



#ifdef OLED_DRIVER_ENABLE
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
return OLED_ROTATION_270;
}

void oled_task_user(void) {
// Host Keyboard Layer Status
sprintf(oled_layer,"Layer\nL: %d\n",get_highest_layer(layer_state));
oled_write(oled_layer,false);

// Host Keyboard LED Status
led_t led_state = host_keyboard_led_state();
oled_write_P(led_state.num_lock ? PSTR("NLCK ") : PSTR(" "), false);
oled_write_P(led_state.caps_lock ? PSTR("CAPS ") : PSTR(" "), false);
oled_write_P(led_state.scroll_lock ? PSTR("SCRLK") : PSTR(" "), false);
}
#endif
3 changes: 3 additions & 0 deletions keyboards/kingly_keys/romac/keymaps/boss566y/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
VIA_ENABLE = yes
BOOTLOADER = qmk-dfu
OLED_DRIVER_ENABLE = yes # Enable Support for SSD1306 or SH1106 OLED Displays; Communicating over I2C

0 comments on commit c8099f3

Please sign in to comment.