From 0703899361d4e7948b52a0ee8c0074f5e68cfab1 Mon Sep 17 00:00:00 2001 From: jcshumpert <38388154+jcshumpert@users.noreply.github.com> Date: Sat, 4 Feb 2023 00:53:36 -0500 Subject: [PATCH] Adding vial port for Apollo/space80 (#353) --- .../apollo80/keymaps/vial/config.h | 27 ++++++++++ .../apollo80/keymaps/vial/keymap.c | 51 +++++++++++++++++++ .../apollo80/keymaps/vial/rules.mk | 5 ++ .../apollo80/keymaps/vial/vial.json | 29 +++++++++++ 4 files changed, 112 insertions(+) create mode 100644 keyboards/gray_studio/apollo80/keymaps/vial/config.h create mode 100644 keyboards/gray_studio/apollo80/keymaps/vial/keymap.c create mode 100644 keyboards/gray_studio/apollo80/keymaps/vial/rules.mk create mode 100644 keyboards/gray_studio/apollo80/keymaps/vial/vial.json diff --git a/keyboards/gray_studio/apollo80/keymaps/vial/config.h b/keyboards/gray_studio/apollo80/keymaps/vial/config.h new file mode 100644 index 0000000000..0055c7f48c --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/vial/config.h @@ -0,0 +1,27 @@ +/* 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 + +#define VIAL_KEYBOARD_UID {0x80, 0xBD, 0x08, 0xCF, 0xAA, 0x09, 0xB8, 0xCB} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } + +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 \ No newline at end of file diff --git a/keyboards/gray_studio/apollo80/keymaps/vial/keymap.c b/keyboards/gray_studio/apollo80/keymaps/vial/keymap.c new file mode 100644 index 0000000000..ba0fd63110 --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/vial/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( + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, 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/vial/rules.mk b/keyboards/gray_studio/apollo80/keymaps/vial/rules.mk new file mode 100644 index 0000000000..5bf92d13e6 --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +KEY_OVERRIDE_ENABLE = no +QMK_SETTINGS = no \ No newline at end of file diff --git a/keyboards/gray_studio/apollo80/keymaps/vial/vial.json b/keyboards/gray_studio/apollo80/keymaps/vial/vial.json new file mode 100644 index 0000000000..3503e01a9f --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/vial/vial.json @@ -0,0 +1,29 @@ +{ + "name": "space80: apollo", + "vendorId": "0x4753", + "productId": "0x3001", + "lighting": "qmk_backlight_rgblight", + "matrix": { + "rows": 6, + "cols": 17 + }, + "layouts": { + "labels": [ + "Split Backspace", + "ISO Enter", + "Split Left Shift", + "Split Right Shift", + "7u Bottom Row" + ], + "keymap": [ + ["0,0",{"x":1.0},"0,2","0,3","0,4","0,5",{"x":0.5},"0,7","0,8","0,9","0,10",{"x":0.5},"0,11","0,12","0,13","0,6",{"x":0.25},"0,14","0,15","0,16"], + [{"y":0.25},"1,0","1,1","1,2","1,3","1,4","1,5","1,6","1,7","1,8","1,9","1,10","1,11","1,12",{"w":2},"1,13\n\n\n0,0","1,13\n\n\n0,1","3,14\n\n\n0,1",{"x":-1.75},"1,14","1,15","1,16"], + [{"w":1.5},"2,0","2,1","2,2","2,3","2,4","2,5","2,6","2,7","2,8","2,9","2,10","2,11","2,12",{"w":1.5},"2,13\n\n\n1,0",{"x":0.25,"w":1.25,"h":2,"w2":1.5,"h2":1,"x2":-0.25},"3,13\n\n\n1,1",{"x":-1.25},"2,14","2,15","2,16"], + [{"w":1.75},"3,0","3,1","3,2","3,3","3,4","3,5","3,6","3,7","3,8","3,9","3,10","3,11",{"w":2.25},"3,13\n\n\n1,0",{"x":-0.75},"2,13\n\n\n1,1"], + [{"w":2.25},"4,0\n\n\n2,0",{"w":1.25},"4,0\n\n\n2,1",{"x":-1.25},"4,2","4,3",{"x":-0.75},"4,1\n\n\n2,1",{"x":-0.25},"4,4","4,5","4,6","4,7","4,8","4,9","4,10","4,11",{"w":2.75},"4,12\n\n\n3,0",{"w":1.75},"4,12\n\n\n3,1","4,13\n\n\n3,1",{"x":-1.5},"4,15"], + [{"w":1.25},"5,0\n\n\n4,0",{"w":1.25},"5,1\n\n\n4,0",{"w":1.25},"5,2\n\n\n4,0",{"w":6.25},"5,6\n\n\n4,0",{"w":1.25},"5,10\n\n\n4,0",{"w":1.25},"5,11\n\n\n4,0",{"w":1.25},"5,12\n\n\n4,0",{"w":1.25},"5,13\n\n\n4,0",{"w":1.5},"5,0\n\n\n4,1",{"x":-1.25},"5,14","5,15",{"x":-0.75},"5,1\n\n\n4,1",{"x":-0.25},"5,16",{"x":-0.75,"w":1.5},"5,2\n\n\n4,1",{"w":7},"5,6\n\n\n4,1",{"w":1.5},"5,11\n\n\n4,1","5,12\n\n\n4,1",{"w":1.5},"5,13\n\n\n4,1"] + + ] + + } +}