summaryrefslogtreecommitdiff
path: root/keyboards/jc65
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/jc65')
-rw-r--r--keyboards/jc65/readme.md16
-rw-r--r--keyboards/jc65/v32a/config.h43
-rw-r--r--keyboards/jc65/v32a/i2c.c106
-rw-r--r--keyboards/jc65/v32a/i2c.h27
-rw-r--r--keyboards/jc65/v32a/info.json12
-rw-r--r--keyboards/jc65/v32a/keymaps/default/keymap.c11
-rw-r--r--keyboards/jc65/v32a/keymaps/default/readme.md10
-rw-r--r--keyboards/jc65/v32a/keymaps/default/rules.mk2
-rw-r--r--keyboards/jc65/v32a/keymaps/naut/keymap.c84
-rw-r--r--keyboards/jc65/v32a/keymaps/naut/readme.md16
-rw-r--r--keyboards/jc65/v32a/keymaps/naut/rules.mk2
-rw-r--r--keyboards/jc65/v32a/matrix.c106
-rw-r--r--keyboards/jc65/v32a/readme.md32
-rw-r--r--keyboards/jc65/v32a/rules.mk50
-rw-r--r--keyboards/jc65/v32a/usbconfig.h396
-rw-r--r--keyboards/jc65/v32a/v32a.c65
-rw-r--r--keyboards/jc65/v32a/v32a.h58
-rw-r--r--keyboards/jc65/v32u4/config.h57
-rw-r--r--keyboards/jc65/v32u4/info.json12
-rw-r--r--keyboards/jc65/v32u4/keymaps/coth/config.h1
-rw-r--r--keyboards/jc65/v32u4/keymaps/coth/keymap.c25
-rw-r--r--keyboards/jc65/v32u4/keymaps/coth/readme.md14
-rw-r--r--keyboards/jc65/v32u4/keymaps/coth/rules.mk0
-rw-r--r--keyboards/jc65/v32u4/keymaps/dead_encryption/config.h1
-rw-r--r--keyboards/jc65/v32u4/keymaps/dead_encryption/keymap.c35
-rw-r--r--keyboards/jc65/v32u4/keymaps/dead_encryption/readme.md10
-rw-r--r--keyboards/jc65/v32u4/keymaps/default/config.h3
-rw-r--r--keyboards/jc65/v32u4/keymaps/default/keymap.c11
-rw-r--r--keyboards/jc65/v32u4/keymaps/default/readme.md10
-rw-r--r--keyboards/jc65/v32u4/keymaps/default/rules.mk0
-rw-r--r--keyboards/jc65/v32u4/keymaps/gam3cat/config.h10
-rw-r--r--keyboards/jc65/v32u4/keymaps/gam3cat/keymap.c266
-rw-r--r--keyboards/jc65/v32u4/keymaps/gam3cat/readme.md105
-rw-r--r--keyboards/jc65/v32u4/keymaps/gam3cat/rules.mk25
-rw-r--r--keyboards/jc65/v32u4/keymaps/jetpacktuxedo/config.h1
-rw-r--r--keyboards/jc65/v32u4/keymaps/jetpacktuxedo/keymap.c25
-rw-r--r--keyboards/jc65/v32u4/keymaps/jetpacktuxedo/readme.md10
-rw-r--r--keyboards/jc65/v32u4/keymaps/jetpacktuxedo/rules.mk0
-rw-r--r--keyboards/jc65/v32u4/keymaps/na7thana/config.h1
-rw-r--r--keyboards/jc65/v32u4/keymaps/na7thana/keymap.c18
-rw-r--r--keyboards/jc65/v32u4/keymaps/na7thana/readme.md10
-rw-r--r--keyboards/jc65/v32u4/keymaps/na7thana/rules.mk0
-rw-r--r--keyboards/jc65/v32u4/keymaps/naut/keymap.c93
-rw-r--r--keyboards/jc65/v32u4/keymaps/naut/readme.md18
-rw-r--r--keyboards/jc65/v32u4/keymaps/naut/rules.mk2
-rw-r--r--keyboards/jc65/v32u4/readme.md22
-rw-r--r--keyboards/jc65/v32u4/rules.mk68
-rw-r--r--keyboards/jc65/v32u4/v32u4.c36
-rw-r--r--keyboards/jc65/v32u4/v32u4.h21
49 files changed, 0 insertions, 1946 deletions
diff --git a/keyboards/jc65/readme.md b/keyboards/jc65/readme.md
deleted file mode 100644
index 6fb2e5edcf..0000000000
--- a/keyboards/jc65/readme.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# JC65
-
-![JC65 with 32u4](https://i.imgur.com/I4hCyBI.jpg)
-![JC65 with 32a](https://i.imgur.com/9cJ9UbX.jpg)
-
-The JC65 is the PCB for the Rama M65-A sold through [keyclack.com](https://keyclack.com/). There are two revisions available, a native QMK powered PCB (v32u4) and a PS2AVRGB PCB (v32a), both are available on keyclack.
-
-QMK is supported for both variants.
-
-Make example native QMK version (after setting up your build environment):
-
- make jc65/v32u4:default
-
-Make example ps2avrGB version (after setting up your build environment):
-
- make jc65/v32a:default
diff --git a/keyboards/jc65/v32a/config.h b/keyboards/jc65/v32a/config.h
deleted file mode 100644
index a5ec23ae4d..0000000000
--- a/keyboards/jc65/v32a/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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
-
-#include "config_common.h"
-
-#define VENDOR_ID 0x1234
-#define PRODUCT_ID 0x5679
-#define MANUFACTURER winkeyless.kr
-#define PRODUCT JC65 PS2AVRGB
-
-/* matrix size */
-#define MATRIX_ROWS 8
-#define MATRIX_COLS 16
-
-#define NO_BACKLIGHT_CLOCK
-#define BACKLIGHT_LEVELS 1
-#define RGBLED_NUM 16
-#define RGBLIGHT_ANIMATIONS
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
-#define RGBLIGHT_EFFECT_KNIGHT_LED_NUM 8
-
-#define NO_UART 1
-
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
diff --git a/keyboards/jc65/v32a/i2c.c b/keyboards/jc65/v32a/i2c.c
deleted file mode 100644
index a4f9521352..0000000000
--- a/keyboards/jc65/v32a/i2c.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
-Copyright 2016 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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/>.
-*/
-
-// Please do not modify this file
-
-#include <avr/io.h>
-#include <util/twi.h>
-
-#include "i2c.h"
-
-void i2c_set_bitrate(uint16_t bitrate_khz) {
- uint8_t bitrate_div = ((F_CPU / 1000l) / bitrate_khz);
- if (bitrate_div >= 16) {
- bitrate_div = (bitrate_div - 16) / 2;
- }
- TWBR = bitrate_div;
-}
-
-void i2c_init(void) {
- // set pull-up resistors on I2C bus pins
- PORTC |= 0b11;
-
- i2c_set_bitrate(400);
-
- // enable TWI (two-wire interface)
- TWCR |= (1 << TWEN);
-
- // enable TWI interrupt and slave address ACK
- TWCR |= (1 << TWIE);
- TWCR |= (1 << TWEA);
-}
-
-uint8_t i2c_start(uint8_t address) {
- // reset TWI control register
- TWCR = 0;
-
- // begin transmission and wait for it to end
- TWCR = (1<<TWINT) | (1<<TWSTA) | (1<<TWEN);
- while (!(TWCR & (1<<TWINT)));
-
- // check if the start condition was successfully transmitted
- if ((TWSR & 0xF8) != TW_START) {
- return 1;
- }
-
- // transmit address and wait
- TWDR = address;
- TWCR = (1<<TWINT) | (1<<TWEN);
- while (!(TWCR & (1<<TWINT)));
-
- // check if the device has acknowledged the READ / WRITE mode
- uint8_t twst = TW_STATUS & 0xF8;
- if ((twst != TW_MT_SLA_ACK) && (twst != TW_MR_SLA_ACK)) {
- return 1;
- }
-
- return 0;
-}
-
-void i2c_stop(void) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTO);
-}
-
-uint8_t i2c_write(uint8_t data) {
- TWDR = data;
-
- // transmit data and wait
- TWCR = (1<<TWINT) | (1<<TWEN);
- while (!(TWCR & (1<<TWINT)));
-
- if ((TWSR & 0xF8) != TW_MT_DATA_ACK) {
- return 1;
- }
-
- return 0;
-}
-
-uint8_t i2c_send(uint8_t address, uint8_t *data, uint16_t length) {
- if (i2c_start(address)) {
- return 1;
- }
-
- for (uint16_t i = 0; i < length; i++) {
- if (i2c_write(data[i])) {
- return 1;
- }
- }
-
- i2c_stop();
-
- return 0;
-}
diff --git a/keyboards/jc65/v32a/i2c.h b/keyboards/jc65/v32a/i2c.h
deleted file mode 100644
index 93a69c94da..0000000000
--- a/keyboards/jc65/v32a/i2c.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-Copyright 2016 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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/>.
-*/
-
-// Please do not modify this file
-
-#ifndef __I2C_H__
-#define __I2C_H__
-
-void i2c_init(void);
-void i2c_set_bitrate(uint16_t bitrate_khz);
-uint8_t i2c_send(uint8_t address, uint8_t *data, uint16_t length);
-
-#endif
diff --git a/keyboards/jc65/v32a/info.json b/keyboards/jc65/v32a/info.json
deleted file mode 100644
index a6cc823771..0000000000
--- a/keyboards/jc65/v32a/info.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "keyboard_name": "jc65",
- "url": "",
- "maintainer": "qmk",
- "width": 16,
- "height": 5,
- "layouts": {
- "LAYOUT": {
- "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"x":15, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":2.75}, {"x":6.5, "y":4, "w":1.25}, {"x":7.75, "y":4, "w":2.25}, {"label":"Alt", "x":10, "y":4}, {"label":"Win", "x":11, "y":4}, {"x":12, "y":4}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
- }
- }
-}
diff --git a/keyboards/jc65/v32a/keymaps/default/keymap.c b/keyboards/jc65/v32a/keymaps/default/keymap.c
deleted file mode 100644
index 2a581ae41d..0000000000
--- a/keyboards/jc65/v32a/keymaps/default/keymap.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_GESC, 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_BSLS,KC_BSPC, KC_INS,
- 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L,KC_SCLN,KC_QUOT,KC_NUHS, KC_ENT,KC_PGUP,
- 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_PGDN,
- KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT,KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT
- ),
-};
diff --git a/keyboards/jc65/v32a/keymaps/default/readme.md b/keyboards/jc65/v32a/keymaps/default/readme.md
deleted file mode 100644
index 61e55f3ce8..0000000000
--- a/keyboards/jc65/v32a/keymaps/default/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Default Keymap
-=======
-
-Default plain keymap with only a base layer.
-
-Keymap Maintainer: [Jason Barnachea](https://github.com/nautxx)
-
-Difference from base layout: None.
-
-Intended usage: Reference layout.
diff --git a/keyboards/jc65/v32a/keymaps/default/rules.mk b/keyboards/jc65/v32a/keymaps/default/rules.mk
deleted file mode 100644
index d7463419b4..0000000000
--- a/keyboards/jc65/v32a/keymaps/default/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-BACKLIGHT_ENABLE = yes
diff --git a/keyboards/jc65/v32a/keymaps/naut/keymap.c b/keyboards/jc65/v32a/keymaps/naut/keymap.c
deleted file mode 100644
index 52a0c8ce1e..0000000000
--- a/keyboards/jc65/v32a/keymaps/naut/keymap.c
+++ /dev/null
@@ -1,84 +0,0 @@
-#include QMK_KEYBOARD_H
-
-// Define Layers
-#define _BASE 0
-#define _FNX 1
-#define _MAC 2
-#define _RGB 3
-
-// Define Macros
-#define M_PRTS M(0)
-#define M_PRTA M(1)
-#define M_PRTSC M(2)
-#define M_PRTAC M(3)
-#define M_MSSN M(4)
-#define M_APPS M(5)
-#define M_SPOT M(6)
-#define M_LEFT M(7)
-#define M_RGHT M(8)
-#define RGB_WHT M(9)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // Base Layer
- [_BASE] = LAYOUT(
- 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_BSLS, KC_GRV, KC_INS,
- 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_DEL,
- 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_NO, KC_ENT,KC_PGUP,
- KC_LSFT, KC_NO, 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_PGDN,
- MO(1),KC_LALT,KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_NO,KC_RALT,KC_LEFT,KC_DOWN,KC_RGHT
- ),
- // Fn Layer
- [_FNX] = LAYOUT(
- KC_TRNS, 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_TRNS,KC_TRNS, TG(3),
- KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, TG(2),KC_VOLU,KC_MPLY,
- KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_MRWD,KC_VOLD,KC_MFFD
- ),
- // Mac Layer
- [_MAC] = LAYOUT(
- TO(0), KC_F14, KC_F15, M_APPS, M_MSSN, KC_F11, KC_F12,KC_MRWD,KC_MPLY,KC_MFFD,KC_MUTE,KC_VOLD,KC_VOLU,KC_EJCT, KC_NO, KC_NO,
- KC_NO, M_PRTS, M_PRTA, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSPC, KC_NO,
- KC_NO,M_PRTSC,M_PRTAC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_ENT, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_X, KC_C, KC_V, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0), M_MSSN, KC_NO,
- KC_NO, KC_NO,KC_LGUI, M_SPOT, M_SPOT, M_SPOT, KC_RGUI, KC_NO, KC_NO, M_LEFT, M_APPS, M_RGHT
- ),
- // RGB and BL Layer
- [_RGB] = LAYOUT(
- TO(0), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_NO,RGB_HUD,RGB_HUI,RGB_WHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,BL_TOGG,
- KC_NO,RGB_SAD,RGB_SAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,RGB_TOG,
- KC_NO, KC_NO,RGB_VAD,RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,RGB_MOD,RGB_RMOD, KC_NO,RGB_M_P,RGB_M_R,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,RGB_M_G,RGB_M_SW
- ),
-};
-
-// The Macros
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
- if (record->event.pressed) {
- switch(id) {
- case 0:
- return MACRO(D(LGUI), D(LSFT), T(3), U(LSFT), U(LGUI), END); // Mac print screen
- case 1:
- return MACRO(D(LGUI), D(LSFT), T(4), U(LSFT), U(LGUI), END); // Mac print area
- case 2:
- return MACRO(D(LCTL), D(LSFT), D(LGUI), T(3), D(LCTL), D(LSFT), D(LGUI), END); // Mac print screen to clipboard
- case 3:
- return MACRO(D(LCTL), D(LSFT), D(LGUI), T(4), D(LCTL), D(LSFT), D(LGUI), END); // Mac print area to clipboard
- case 4:
- return MACRO(D(LCTL), T(UP), U(LCTL), END); // Mac mission control
- case 5:
- return MACRO(D(LCTL), T(DOWN), U(LCTL), END); // Mac app windows
- case 6:
- return MACRO(D(LGUI), T(SPC), U(LGUI), END); // Mac spotlight search
- case 7:
- return MACRO(D(LCTL), T(LEFT), U(LCTL), END); // Mac mission left
- case 8:
- return MACRO(D(LCTL), T(RGHT), U(LCTL), END); // Mac mission right
- case 9:
- rgblight_setrgb(0xff, 0xff, 0xff); // White rgb shortcut
- break;
- }
- }
- return MACRO_NONE;
-};
diff --git a/keyboards/jc65/v32a/keymaps/naut/readme.md b/keyboards/jc65/v32a/keymaps/naut/readme.md
deleted file mode 100644
index e7d1096666..0000000000
--- a/keyboards/jc65/v32a/keymaps/naut/readme.md
+++ /dev/null
@@ -1,16 +0,0 @@
-Naut's Keymap
-=======
-
-Layer 1: HHKB Split backspace, 6.25u space, control on caps, Fn on L-Ctl.
-
-Layer 2: F Row on numrow, caps on tab, media shortcuts on arrows
-
-Layer 3: Mac Media buttons on numrow
-
-Layer 4: RGB control
-
-Keymap Maintainer: [Jason Barnachea](https://github.com/nautxx)
-
-Difference from base layout: HHKBish layout. HHKB Fn layer. Mac media layer. RGB control layer.
-
-Intended usage: Daily driver for keyboard peacocking.
diff --git a/keyboards/jc65/v32a/keymaps/naut/rules.mk b/keyboards/jc65/v32a/keymaps/naut/rules.mk
deleted file mode 100644
index d7463419b4..0000000000
--- a/keyboards/jc65/v32a/keymaps/naut/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-BACKLIGHT_ENABLE = yes
diff --git a/keyboards/jc65/v32a/matrix.c b/keyboards/jc65/v32a/matrix.c
deleted file mode 100644
index 57aa36b5ff..0000000000
--- a/keyboards/jc65/v32a/matrix.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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 <avr/io.h>
-#include <util/delay.h>
-
-#include "matrix.h"
-
-#ifndef DEBOUNCE
-#define DEBOUNCE 5
-#endif
-
-static uint8_t debouncing = DEBOUNCE;
-
-static matrix_row_t matrix[MATRIX_ROWS];
-static matrix_row_t matrix_debouncing[MATRIX_ROWS];
-
-void matrix_init(void) {
- // all outputs for rows high
- DDRB = 0xFF;
- PORTB = 0xFF;
- // all inputs for columns
- DDRA = 0x00;
- DDRC &= ~(0x111111<<2);
- DDRD &= ~(1<<PIND7);
- // all columns are pulled-up
- PORTA = 0xFF;
- PORTC |= (0b111111<<2);
- PORTD |= (1<<PIND7);
-
- // initialize matrix state: all keys off
- for (uint8_t row = 0; row < MATRIX_ROWS; row++) {
- matrix[row] = 0x00;
- matrix_debouncing[row] = 0x00;
- }
-}
-
-void matrix_set_row_status(uint8_t row) {
- DDRB = (1 << row);
- PORTB = ~(1 << row);
-}
-
-uint8_t bit_reverse(uint8_t x) {
- x = ((x >> 1) & 0x55) | ((x << 1) & 0xaa);
- x = ((x >> 2) & 0x33) | ((x << 2) & 0xcc);
- x = ((x >> 4) & 0x0f) | ((x << 4) & 0xf0);
- return x;
-}
-
-uint8_t matrix_scan(void) {
- for (uint8_t row = 0; row < MATRIX_ROWS; row++) {
- matrix_set_row_status(row);
- _delay_us(5);
-
- matrix_row_t cols = (
- // cols 0..7, PORTA 0 -> 7
- (~PINA) & 0xFF
- ) | (
- // cols 8..13, PORTC 7 -> 0
- bit_reverse((~PINC) & 0xFF) << 8
- ) | (
- // col 14, PORTD 7
- ((~PIND) & (1 << PIND7)) << 7
- );
-
- if (matrix_debouncing[row] != cols) {
- matrix_debouncing[row] = cols;
- debouncing = DEBOUNCE;
- }
- }
-
- if (debouncing) {
- if (--debouncing) {
- _delay_ms(1);
- } else {
- for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
- matrix[i] = matrix_debouncing[i];
- }
- }
- }
-
- matrix_scan_user();
-
- return 1;
-}
-
-inline matrix_row_t matrix_get_row(uint8_t row) {
- return matrix[row];
-}
-
-void matrix_print(void) {
-}
diff --git a/keyboards/jc65/v32a/readme.md b/keyboards/jc65/v32a/readme.md
deleted file mode 100644
index 5027f83613..0000000000
--- a/keyboards/jc65/v32a/readme.md
+++ /dev/null
@@ -1,32 +0,0 @@
-JC65 ps2avrGB
-=======
-
-![JC65](https://i.imgur.com/9cJ9UbX.jpg)
-
-A 65% keyboard with RGB
-
-Keyboard Maintainer: [Jason Barnachea](https://github.com/nautxx)
-
-Hardware Supported: JC65 rev.ps2avrgb
-
-Hardware Availability: [keyclack.com](https://keyclack.com/)
-
-The JC65 PCB actually has two revisions: A QMK native version, and a PS2AVRGB version. Jchan offered both PCBs as options during the M65-A Round 1 group buy, and were also available choices for the 65% acrylic case group buy.
-
-Please note that there have been issues with QMK and PS2AVRGB boards. Random shutdowns and overheating have been reported. As of now, the cause has not been discovered.
-
-These docs are for the PS2AVRGB version of the PCB. More info on qmk.fm
-
-Make example for this keyboard (after setting up your build environment):
-
- make jc65/v32a:default
-
-Flash example for this keyboard:
-
- bootloadHID -r jc65_v32a_default.hex
-
-Flashing on Windows can be accomplished by downloading [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash)
-
-To put the PS2AVRGB board into reset, hold down the left control key while plugging in the keyboard.
-
-See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. \ No newline at end of file
diff --git a/keyboards/jc65/v32a/rules.mk b/keyboards/jc65/v32a/rules.mk
deleted file mode 100644
index fac85172ec..0000000000
--- a/keyboards/jc65/v32a/rules.mk
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-#
-# 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/>.
-
-# MCU name
-MCU = atmega32a
-PROTOCOL = VUSB
-
-# unsupported features for now
-NO_UART = yes
-NO_SUSPEND_POWER_DOWN = yes
-
-# processor frequency
-F_CPU = 12000000
-
-# Bootloader
-# This definition is optional, and if your keyboard supports multiple bootloaders of
-# different sizes, comment this out, and the correct address will be loaded
-# automatically (+60). See bootloader.mk for all options.
-BOOTLOADER = bootloadHID
-
-# build options
-BOOTMAGIC_ENABLE = full
-MOUSEKEY_ENABLE = no
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = yes
-COMMAND_ENABLE = yes
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-RGBLIGHT_CUSTOM_DRIVER = yes
-
-OPT_DEFS = -DDEBUG_LEVEL=0
-
-# custom matrix setup
-CUSTOM_MATRIX = yes
-SRC = matrix.c i2c.c
-
-# programming options
-PROGRAM_CMD = ./util/atmega32a_program.py $(TARGET).hex
diff --git a/keyboards/jc65/v32a/usbconfig.h b/keyboards/jc65/v32a/usbconfig.h
deleted file mode 100644
index d2d848fcdc..0000000000
--- a/keyboards/jc65/v32a/usbconfig.h
+++ /dev/null
@@ -1,396 +0,0 @@
-/* Name: usbconfig.h
- * Project: V-USB, virtual USB port for Atmel's(r) AVR(r) microcontrollers
- * Author: Christian Starkjohann
- * Creation Date: 2005-04-01
- * Tabsize: 4
- * Copyright: (c) 2005 by OBJECTIVE DEVELOPMENT Software GmbH
- * License: GNU GPL v2 (see License.txt), GNU GPL v3 or proprietary (CommercialLicense.txt)
- * This Revision: $Id: usbconfig-prototype.h 785 2010-05-30 17:57:07Z cs $
- */
-
-#ifndef __usbconfig_h_included__
-#define __usbconfig_h_included__
-
-#include "config.h"
-
-/*
-General Description:
-This file is an example configuration (with inline documentation) for the USB
-driver. It configures V-USB for USB D+ connected to Port D bit 2 (which is
-also hardware interrupt 0 on many devices) and USB D- to Port D bit 4. You may
-wire the lines to any other port, as long as D+ is also wired to INT0 (or any
-other hardware interrupt, as long as it is the highest level interrupt, see
-section at the end of this file).
-*/
-
-/* ---------------------------- Hardware Config ---------------------------- */
-
-#define USB_CFG_IOPORTNAME D
-/* This is the port where the USB bus is connected. When you configure it to
- * "B", the registers PORTB, PINB and DDRB will be used.
- */
-#define USB_CFG_DMINUS_BIT 3
-/* This is the bit number in USB_CFG_IOPORT where the USB D- line is connected.
- * This may be any bit in the port.
- */
-#define USB_CFG_DPLUS_BIT 2
-/* This is the bit number in USB_CFG_IOPORT where the USB D+ line is connected.
- * This may be any bit in the port. Please note that D+ must also be connected
- * to interrupt pin INT0! [You can also use other interrupts, see section
- * "Optional MCU Description" below, or you can connect D- to the interrupt, as
- * it is required if you use the USB_COUNT_SOF feature. If you use D- for the
- * interrupt, the USB interrupt will also be triggered at Start-Of-Frame
- * markers every millisecond.]
- */
-#define USB_CFG_CLOCK_KHZ (F_CPU/1000)
-/* Clock rate of the AVR in kHz. Legal values are 12000, 12800, 15000, 16000,
- * 16500, 18000 and 20000. The 12.8 MHz and 16.5 MHz versions of the code
- * require no crystal, they tolerate +/- 1% deviation from the nominal
- * frequency. All other rates require a precision of 2000 ppm and thus a
- * crystal!
- * Since F_CPU should be defined to your actual clock rate anyway, you should
- * not need to modify this setting.
- */
-#define USB_CFG_CHECK_CRC 0
-/* Define this to 1 if you want that the driver checks integrity of incoming
- * data packets (CRC checks). CRC checks cost quite a bit of code size and are
- * currently only available for 18 MHz crystal clock. You must choose
- * USB_CFG_CLOCK_KHZ = 18000 if you enable this option.
- */
-
-/* ----------------------- Optional Hardware Config ------------------------ */
-
-/* #define USB_CFG_PULLUP_IOPORTNAME D */
-/* If you connect the 1.5k pullup resistor from D- to a port pin instead of
- * V+, you can connect and disconnect the device from firmware by calling
- * the macros usbDeviceConnect() and usbDeviceDisconnect() (see usbdrv.h).
- * This constant defines the port on which the pullup resistor is connected.
- */
-/* #define USB_CFG_PULLUP_BIT 4 */
-/* This constant defines the bit number in USB_CFG_PULLUP_IOPORT (defined
- * above) where the 1.5k pullup resistor is connected. See description
- * above for details.
- */
-
-/* --------------------------- Functional Range ---------------------------- */
-
-#define USB_CFG_HAVE_INTRIN_ENDPOINT 1
-/* Define this to 1 if you want to compile a version with two endpoints: The
- * default control endpoint 0 and an interrupt-in endpoint (any other endpoint
- * number).
- */
-#define USB_CFG_HAVE_INTRIN_ENDPOINT3 1
-/* Define this to 1 if you want to compile a version with three endpoints: The
- * default control endpoint 0, an interrupt-in endpoint 3 (or the number
- * configured below) and a catch-all default interrupt-in endpoint as above.
- * You must also define USB_CFG_HAVE_INTRIN_ENDPOINT to 1 for this feature.
- */
-#define USB_CFG_EP3_NUMBER 3
-/* If the so-called endpoint 3 is used, it can now be configured to any other
- * endpoint number (except 0) with this macro. Default if undefined is 3.
- */
-/* #define USB_INITIAL_DATATOKEN USBPID_DATA1 */
-/* The above macro defines the startup condition for data toggling on the
- * interrupt/bulk endpoints 1 and 3. Defaults to USBPID_DATA1.
- * Since the token is toggled BEFORE sending any data, the first packet is
- * sent with the oposite value of this configuration!
- */
-#define USB_CFG_IMPLEMENT_HALT 0
-/* Define this to 1 if you also want to implement the ENDPOINT_HALT feature
- * for endpoint 1 (interrupt endpoint). Although you may not need this feature,
- * it is required by the standard. We have made it a config option because it
- * bloats the code considerably.
- */
-#define USB_CFG_SUPPRESS_INTR_CODE 0
-/* Define this to 1 if you want to declare interrupt-in endpoints, but don't
- * want to send any data over them. If this macro is defined to 1, functions
- * usbSetInterrupt() and usbSetInterrupt3() are omitted. This is useful if
- * you need the interrupt-in endpoints in order to comply to an interface
- * (e.g. HID), but never want to send any data. This option saves a couple
- * of bytes in flash memory and the transmit buffers in RAM.
- */
-#define USB_CFG_INTR_POLL_INTERVAL 1
-/* If you compile a version with endpoint 1 (interrupt-in), this is the poll
- * interval. The value is in milliseconds and must not be less than 10 ms for
- * low speed devices.
- */
-#define USB_CFG_IS_SELF_POWERED 0
-/* Define this to 1 if the device has its own power supply. Set it to 0 if the
- * device is powered from the USB bus.
- */
-#define USB_CFG_MAX_BUS_POWER 500
-/* Set this variable to the maximum USB bus power consumption of your device.
- * The value is in milliamperes. [It will be divided by two since USB
- * communicates power requirements in units of 2 mA.]
- */
-#define USB_CFG_IMPLEMENT_FN_WRITE 1
-/* Set this to 1 if you want usbFunctionWrite() to be called for control-out
- * transfers. Set it to 0 if you don't need it and want to save a couple of
- * bytes.
- */
-#define USB_CFG_IMPLEMENT_FN_READ 0
-/* Set this to 1 if you need to send control replies which are generated
- * "on the fly" when usbFunctionRead() is called. If you only want to send
- * data from a static buffer, set it to 0 and return the data from
- * usbFunctionSetup(). This saves a couple of bytes.
- */
-#define USB_CFG_IMPLEMENT_FN_WRITEOUT 0
-/* Define this to 1 if you want to use interrupt-out (or bulk out) endpoints.
- * You must implement the function usbFunctionWriteOut() which receives all
- * interrupt/bulk data sent to any endpoint other than 0. The endpoint number
- * can be found in 'usbRxToken'.
- */
-#define USB_CFG_HAVE_FLOWCONTROL 0
-/* Define this to 1 if you want flowcontrol over USB data. See the definition
- * of the macros usbDisableAllRequests() and usbEnableAllRequests() in
- * usbdrv.h.
- */
-#define USB_CFG_DRIVER_FLASH_PAGE 0
-/* If the device has more than 64 kBytes of flash, define this to the 64 k page
- * where the driver's constants (descriptors) are located. Or in other words:
- * Define this to 1 for boot loaders on the ATMega128.
- */
-#define USB_CFG_LONG_TRANSFERS 0
-/* Define this to 1 if you want to send/receive blocks of more than 254 bytes
- * in a single control-in or control-out transfer. Note that the capability
- * for long transfers increases the driver size.
- */
-/* #define USB_RX_USER_HOOK(data, len) if(usbRxToken == (uchar)USBPID_SETUP) blinkLED(); */
-/* This macro is a hook if you want to do unconventional things. If it is
- * defined, it's inserted at the beginning of received message processing.
- * If you eat the received message and don't want default processing to
- * proceed, do a return after doing your things. One possible application
- * (besides debugging) is to flash a status LED on each packet.
- */
-/* #define USB_RESET_HOOK(resetStarts) if(!resetStarts){hadUsbReset();} */
-/* This macro is a hook if you need to know when an USB RESET occurs. It has
- * one parameter which distinguishes between the start of RESET state and its
- * end.
- */
-/* #define USB_SET_ADDRESS_HOOK() hadAddressAssigned(); */
-/* This macro (if defined) is executed when a USB SET_ADDRESS request was
- * received.
- */
-#define USB_COUNT_SOF 1
-/* define this macro to 1 if you need the global variable "usbSofCount" which
- * counts SOF packets. This feature requires that the hardware interrupt is
- * connected to D- instead of D+.
- */
-/* #ifdef __ASSEMBLER__
- * macro myAssemblerMacro
- * in YL, TCNT0
- * sts timer0Snapshot, YL
- * endm
- * #endif
- * #define USB_SOF_HOOK myAssemblerMacro
- * This macro (if defined) is executed in the assembler module when a
- * Start Of Frame condition is detected. It is recommended to define it to
- * the name of an assembler macro which is defined here as well so that more
- * than one assembler instruction can be used. The macro may use the register
- * YL and modify SREG. If it lasts longer than a couple of cycles, USB messages
- * immediately after an SOF pulse may be lost and must be retried by the host.
- * What can you do with this hook? Since the SOF signal occurs exactly every
- * 1 ms (unless the host is in sleep mode), you can use it to tune OSCCAL in
- * designs running on the internal RC oscillator.
- * Please note that Start Of Frame detection works only if D- is wired to the
- * interrupt, not D+. THIS IS DIFFERENT THAN MOST EXAMPLES!
- */
-#define USB_CFG_CHECK_DATA_TOGGLING 0
-/* define this macro to 1 if you want to filter out duplicate data packets
- * sent by the host. Duplicates occur only as a consequence of communication
- * errors, when the host does not receive an ACK. Please note that you need to
- * implement the filtering yourself in usbFunctionWriteOut() and
- * usbFunctionWrite(). Use the global usbCurrentDataToken and a static variable
- * for each control- and out-endpoint to check for duplicate packets.
- */
-#define USB_CFG_HAVE_MEASURE_FRAME_LENGTH 0
-/* define this macro to 1 if you want the function usbMeasureFrameLength()
- * compiled in. This function can be used to calibrate the AVR's RC oscillator.
- */
-#define USB_USE_FAST_CRC 0
-/* The assembler module has two implementations for the CRC algorithm. One is
- * faster, the other is smaller. This CRC routine is only used for transmitted
- * messages where timing is not critical. The faster routine needs 31 cycles
- * per byte while the smaller one needs 61 to 69 cycles. The faster routine
- * may be worth the 32 bytes bigger code size if you transmit lots of data and
- * run the AVR close to its limit.
- */
-
-/* -------------------------- Device Description --------------------------- */
-
-#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF)
-/* USB vendor ID for the device, low byte first. If you have registered your
- * own Vendor ID, define it here. Otherwise you may use one of obdev's free
- * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
- * *** IMPORTANT NOTE ***
- * This template uses obdev's shared VID/PID pair for Vendor Class devices
- * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
- * the implications!
- */
-#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF)
-/* This is the ID of the product, low byte first. It is interpreted in the
- * scope of the vendor ID. If you have registered your own VID with usb.org
- * or if you have licensed a PID from somebody else, define it here. Otherwise
- * you may use one of obdev's free shared VID/PID pairs. See the file
- * USB-IDs-for-free.txt for details!
- * *** IMPORTANT NOTE ***
- * This template uses obdev's shared VID/PID pair for Vendor Class devices
- * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
- * the implications!
- */
-#define USB_CFG_DEVICE_VERSION 0x00, 0x02
-/* Version number of the device: Minor number first, then major number.
- */
-#define USB_CFG_VENDOR_NAME 'w', 'i', 'n', 'k', 'e', 'y', 'l', 'e', 's', 's', '.', 'k', 'r'
-#define USB_CFG_VENDOR_NAME_LEN 13
-/* These two values define the vendor name returned by the USB device. The name
- * must be given as a list of characters under single quotes. The characters
- * are interpreted as Unicode (UTF-16) entities.
- * If you don't want a vendor name string, undefine these macros.
- * ALWAYS define a vendor name containing your Internet domain name if you use
- * obdev's free shared VID/PID pair. See the file USB-IDs-for-free.txt for
- * details.
- */
-#define USB_CFG_DEVICE_NAME 'p', 's', '2', 'a', 'v', 'r', 'G', 'B'
-#define USB_CFG_DEVICE_NAME_LEN 8
-/* Same as above for the device name. If you don't want a device name, undefine
- * the macros. See the file USB-IDs-for-free.txt before you assign a name if
- * you use a shared VID/PID.
- */
-/*#define USB_CFG_SERIAL_NUMBER 'N', 'o', 'n', 'e' */
-/*#define USB_CFG_SERIAL_NUMBER_LEN 0 */
-/* Same as above for the serial number. If you don't want a serial number,
- * undefine the macros.
- * It may be useful to provide the serial number through other means than at
- * compile time. See the section about descriptor properties below for how
- * to fine tune control over USB descriptors such as the string descriptor
- * for the serial number.
- */
-#define USB_CFG_DEVICE_CLASS 0
-#define USB_CFG_DEVICE_SUBCLASS 0
-/* See USB specification if you want to conform to an existing device class.
- * Class 0xff is "vendor specific".
- */
-#define USB_CFG_INTERFACE_CLASS 3 /* HID */
-#define USB_CFG_INTERFACE_SUBCLASS 1 /* Boot */
-#define USB_CFG_INTERFACE_PROTOCOL 1 /* Keyboard */
-/* See USB specification if you want to conform to an existing device class or
- * protocol. The following classes must be set at interface level:
- * HID class is 3, no subclass and protocol required (but may be useful!)
- * CDC class is 2, use subclass 2 and protocol 1 for ACM
- */
-#define USB_CFG_HID_REPORT_DESCRIPTOR_LENGTH 0
-/* Define this to the length of the HID report descriptor, if you implement
- * an HID device. Otherwise don't define it or define it to 0.
- * If you use this define, you must add a PROGMEM character array named
- * "usbHidReportDescriptor" to your code which contains the report descriptor.
- * Don't forget to keep the array and this define in sync!
- */
-
-/* #define USB_PUBLIC static */
-/* Use the define above if you #include usbdrv.c instead of linking against it.
- * This technique saves a couple of bytes in flash memory.
- */
-
-/* ------------------- Fine Control over USB Descriptors ------------------- */
-/* If you don't want to use the driver's default USB descriptors, you can
- * provide our own. These can be provided as (1) fixed length static data in
- * flash memory, (2) fixed length static data in RAM or (3) dynamically at
- * runtime in the function usbFunctionDescriptor(). See usbdrv.h for more
- * information about this function.
- * Descriptor handling is configured through the descriptor's properties. If
- * no properties are defined or if they are 0, the default descriptor is used.
- * Possible properties are:
- * + USB_PROP_IS_DYNAMIC: The data for the descriptor should be fetched
- * at runtime via usbFunctionDescriptor(). If the usbMsgPtr mechanism is
- * used, the data is in FLASH by default. Add property USB_PROP_IS_RAM if
- * you want RAM pointers.
- * + USB_PROP_IS_RAM: The data returned by usbFunctionDescriptor() or found
- * in static memory is in RAM, not in flash memory.
- * + USB_PROP_LENGTH(len): If the data is in static memory (RAM or flash),
- * the driver must know the descriptor's length. The descriptor itself is
- * found at the address of a well known identifier (see below).
- * List of static descriptor names (must be declared PROGMEM if in flash):
- * char usbDescriptorDevice[];
- * char usbDescriptorConfiguration[];
- * char usbDescriptorHidReport[];
- * char usbDescriptorString0[];
- * int usbDescriptorStringVendor[];
- * int usbDescriptorStringDevice[];
- * int usbDescriptorStringSerialNumber[];
- * Other descriptors can't be provided statically, they must be provided
- * dynamically at runtime.
- *
- * Descriptor properties are or-ed or added together, e.g.:
- * #define USB_CFG_DESCR_PROPS_DEVICE (USB_PROP_IS_RAM | USB_PROP_LENGTH(18))
- *
- * The following descriptors are defined:
- * USB_CFG_DESCR_PROPS_DEVICE
- * USB_CFG_DESCR_PROPS_CONFIGURATION
- * USB_CFG_DESCR_PROPS_STRINGS
- * USB_CFG_DESCR_PROPS_STRING_0
- * USB_CFG_DESCR_PROPS_STRING_VENDOR
- * USB_CFG_DESCR_PROPS_STRING_PRODUCT
- * USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER
- * USB_CFG_DESCR_PROPS_HID
- * USB_CFG_DESCR_PROPS_HID_REPORT
- * USB_CFG_DESCR_PROPS_UNKNOWN (for all descriptors not handled by the driver)
- *
- * Note about string descriptors: String descriptors are not just strings, they
- * are Unicode strings prefixed with a 2 byte header. Example:
- * int serialNumberDescriptor[] = {
- * USB_STRING_DESCRIPTOR_HEADER(6),
- * 'S', 'e', 'r', 'i', 'a', 'l'
- * };
- */
-
-#define USB_CFG_DESCR_PROPS_DEVICE 0
-#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
-//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
-#define USB_CFG_DESCR_PROPS_STRINGS 0
-#define USB_CFG_DESCR_PROPS_STRING_0 0
-#define USB_CFG_DESCR_PROPS_STRING_VENDOR 0
-#define USB_CFG_DESCR_PROPS_STRING_PRODUCT 0
-#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER 0
-#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
-//#define USB_CFG_DESCR_PROPS_HID 0
-#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
-//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
-#define USB_CFG_DESCR_PROPS_UNKNOWN 0
-
-#define usbMsgPtr_t unsigned short
-/* If usbMsgPtr_t is not defined, it defaults to 'uchar *'. We define it to
- * a scalar type here because gcc generates slightly shorter code for scalar
- * arithmetics than for pointer arithmetics. Remove this define for backward
- * type compatibility or define it to an 8 bit type if you use data in RAM only
- * and all RAM is below 256 bytes (tiny memory model in IAR CC).
- */
-
-/* ----------------------- Optional MCU Description ------------------------ */
-
-/* The following configurations have working defaults in usbdrv.h. You
- * usually don't need to set them explicitly. Only if you want to run
- * the driver on a device which is not yet supported or with a compiler
- * which is not fully supported (such as IAR C) or if you use a differnt
- * interrupt than INT0, you may have to define some of these.
- */
-/* #define USB_INTR_CFG MCUCR */
-/* #define USB_INTR_CFG_SET ((1 << ISC00) | (1 << ISC01)) */
-/* #define USB_INTR_CFG_CLR 0 */
-/* #define USB_INTR_ENABLE GIMSK */
-/* #define USB_INTR_ENABLE_BIT INT0 */
-/* #define USB_INTR_PENDING GIFR */
-/* #define USB_INTR_PENDING_BIT INTF0 */
-/* #define USB_INTR_VECTOR INT0_vect */
-
-/* Set INT1 for D- falling edge to count SOF */
-/* #define USB_INTR_CFG EICRA */
-#define USB_INTR_CFG_SET ((1 << ISC11) | (0 << ISC10))
-/* #define USB_INTR_CFG_CLR 0 */
-/* #define USB_INTR_ENABLE EIMSK */
-#define USB_INTR_ENABLE_BIT INT1
-/* #define USB_INTR_PENDING EIFR */
-#define USB_INTR_PENDING_BIT INTF1
-#define USB_INTR_VECTOR INT1_vect
-
-#endif /* __usbconfig_h_included__ */
diff --git a/keyboards/jc65/v32a/v32a.c b/keyboards/jc65/v32a/v32a.c
deleted file mode 100644
index 621789423f..0000000000
--- a/keyboards/jc65/v32a/v32a.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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 "v32a.h"
-#ifdef BACKLIGHT_ENABLE
-#include "backlight.h"
-#endif
-#ifdef RGBLIGHT_ENABLE
-#include "rgblight.h"
-#endif
-
-#include <avr/pgmspace.h>
-
-#include "action_layer.h"
-#include "i2c.h"
-#include "quantum.h"
-
-extern rgblight_config_t rgblight_config;
-
-void rgblight_set(void) {
- if (!rgblight_config.enable) {
- for (uint8_t i = 0; i < RGBLED_NUM; i++) {
- led[i].r = 0;
- led[i].g = 0;
- led[i].b = 0;
- }
- }
-
- i2c_init();
- i2c_send(0xb0, (uint8_t*)led, 3 * RGBLED_NUM);
-}
-
-__attribute__ ((weak))
-void matrix_scan_user(void) {
- rgblight_task();
-}
-
-void backlight_init_ports(void) {
- DDRD |= (1<<0 | 1<<1 | 1<<4 | 1<<6);
- PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6);
-}
-
-void backlight_set(uint8_t level) {
- if (level == 0) {
- // Turn out the lights
- PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6);
- } else {
- // Turn on the lights
- PORTD |= (1<<0 | 1<<1 | 1<<4 | 1<<6);
- }
-} \ No newline at end of file
diff --git a/keyboards/jc65/v32a/v32a.h b/keyboards/jc65/v32a/v32a.h
deleted file mode 100644
index ba91d80a64..0000000000
--- a/keyboards/jc65/v32a/v32a.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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/>.
-*/
-
-#ifndef V32A_H
-#define V32A_H
-
-#include "quantum.h"
-
-#define LAYOUT( \
- K04,K14,K24,K34,K44,K54,K16,KB6,KB7,K17,KA4,KB4,KC4,KD4,KE4,KD0, \
- K03,K13,K23,K33,K43,K53,K26,KC6,KC7,K27,KA3,KB3,KC3, KD3,K67, \
- K02,K12,K22,K32,K42,K52,K36,KD6,KD7,K37,KA2,KB2,KC2, KD2,K87, \
- K01,K30,K11,K21,K31,K41,K51,K46,KE6,KE7,K47,KA1, KB1,K86,K77, \
- K00,K10,K20, K40,K56,K50, K57,KB0,KC0,K96,K76,K66 \
-){ \
- { K00, K10, K20, K30, K40, K50,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO, KB0, KC0, KD0,KC_NO,KC_NO }, \
- { K01, K11, K21, K31, K41, K51,KC_NO,KC_NO,KC_NO,KC_NO, KA1, KB1,KC_NO,KC_NO,KC_NO,KC_NO }, \
- { K02, K12, K22, K32, K42, K52,KC_NO,KC_NO,KC_NO,KC_NO, KA2, KB2, KC2, KD2,KC_NO,KC_NO }, \
- { K03, K13, K23, K33, K43, K53,KC_NO,KC_NO,KC_NO,KC_NO, KA3, KB3, KC3, KD3,KC_NO,KC_NO }, \
- { K04, K14, K24, K34, K44, K54,KC_NO,KC_NO,KC_NO,KC_NO, KA4, KB4, KC4, KD4, KE4,KC_NO }, \
- { KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO,KC_NO }, \
- { KC_NO, K16, K26, K36, K46, K56, K66, K76, K86, K96,KC_NO, KB6, KC6, KD6, KE6,KC_NO }, \
- { KC_NO, K17, K27, K37, K47, K57, K67, K77, K87,KC_NO,KC_NO, KB7, KC7, KD7, KE7,KC_NO } \
-}
-
-#define LAYOUT_kc( \
- K04,K14,K24,K34,K44,K54,K16,KB6,KB7,K17,KA4,KB4,KC4,KD4,KE4,KD0, \
- K03,K13,K23,K33,K43,K53,K26,KC6,KC7,K27,KA3,KB3,KC3, KD3,K67, \
- K02,K12,K22,K32,K42,K52,K36,KD6,KD7,K37,KA2,KB2,KC2, KD2,K87, \
- K01,K30,K11,K21,K31,K41,K51,K46,KE6,KE7,K47,KA1, KB1,K86,K77, \
- K00,K10,K20, K40,K56,K50, K57,KB0,KC0,K96,K76,K66 \
-) \
-{ \
- { KC_##K00,KC_##K10,KC_##K20,KC_##K30,KC_##K40,KC_##K50, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KB0,KC_##KC0,KC_##KD0, KC_NO,KC_NO }, \
- { KC_##K01,KC_##K11,KC_##K21,KC_##K31,KC_##K41,KC_##K51, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA1,KC_##KB1, KC_NO, KC_NO, KC_NO,KC_NO }, \
- { KC_##K02,KC_##K12,KC_##K22,KC_##K32,KC_##K42,KC_##K52, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA2,KC_##KB2,KC_##KC2,KC_##KD2, KC_NO,KC_NO }, \
- { KC_##K03,KC_##K13,KC_##K23,KC_##K33,KC_##K43,KC_##K53, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA3,KC_##KB3,KC_##KC3,KC_##KD3, KC_NO,KC_NO }, \
- { KC_##K04,KC_##K14,KC_##K24,KC_##K34,KC_##K44,KC_##K54, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA4,KC_##KB4,KC_##KC4,KC_##KD4,KC_##KE4,KC_NO }, \
- { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,KC_NO }, \
- { KC_NO,KC_##K16,KC_##K26,KC_##K36,KC_##K46,KC_##K56,KC_##K66,KC_##K76,KC_##K86,KC_##K96, KC_NO,KC_##KB6,KC_##KC6,KC_##KD6,KC_##KE6,KC_NO }, \
- { KC_NO,KC_##K17,KC_##K27,KC_##K37,KC_##K47,KC_##K57,KC_##K67,KC_##K77,KC_##K87, KC_NO, KC_NO,KC_##KB7,KC_##KC7,KC_##KD7,KC_##KE7,KC_NO } \
-}
-
-#endif
diff --git a/keyboards/jc65/v32u4/config.h b/keyboards/jc65/v32u4/config.h
deleted file mode 100644
index 98256b1281..0000000000
--- a/keyboards/jc65/v32u4/config.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-
-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/>.
-*/
-
-#ifndef CONFIG_H
-#define CONFIG_H
-
-#include "config_common.h"
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
-#define PRODUCT_ID 0x6060
-#define DEVICE_VER 0x0002
-#define MANUFACTURER dou
-#define PRODUCT KEYCLACK65-V1
-#define DESCRIPTION JC65 PCB
-
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 16
-
-/* QMK JC65 PCB default pin-out */
-#define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 }
-#define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B7, D4, B1, B0, B5, B4, D7, D6, B3, F4, F5 }
-#define UNUSED_PINS
-
-#define RGB_DI_PIN E2
-#ifdef RGB_DI_PIN
-#define RGBLIGHT_ANIMATIONS
-#define RGBLED_NUM 20
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
-#endif
-
-#define BACKLIGHT_PIN B6
-#ifdef BACKLIGHT_PIN
-#define BACKLIGHT_LEVELS 3
-#endif
-
-#define DIODE_DIRECTION COL2ROW
-#define DEBOUNCING_DELAY 5
-
-#endif
diff --git a/keyboards/jc65/v32u4/info.json b/keyboards/jc65/v32u4/info.json
deleted file mode 100644
index 234a5cbfa7..0000000000
--- a/keyboards/jc65/v32u4/info.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "keyboard_name": "jc65",
- "url": "",
- "maintainer": "qmk",
- "width": 16,
- "height": 5,
- "layouts": {
- "LAYOUT": {
- "layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":2.75}, {"x":6.5, "y":4, "w":1.25}, {"x":7.75, "y":4, "w":2.25}, {"label":"Alt", "x":10, "y":4}, {"label":"Win", "x":11, "y":4}, {"x":12, "y":4}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
- }
- }
-}
diff --git a/keyboards/jc65/v32u4/keymaps/coth/config.h b/keyboards/jc65/v32u4/keymaps/coth/config.h
deleted file mode 100644
index a5568e400d..0000000000
--- a/keyboards/jc65/v32u4/keymaps/coth/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../config.h"
diff --git a/keyboards/jc65/v32u4/keymaps/coth/keymap.c b/keyboards/jc65/v32u4/keymaps/coth/keymap.c
deleted file mode 100644
index 800516a2be..0000000000
--- a/keyboards/jc65/v32u4/keymaps/coth/keymap.c
+++ /dev/null
@@ -1,25 +0,0 @@
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_GESC, 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_BSLS, KC_GRV, KC_INS,
- 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_DEL,
- 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_PGUP,
- 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_PGDN,
- KC_LALT, KC_LCTL, KC_LGUI, KC_SPACE, KC_SPACE, KC_SPACE, MO(1), KC_NO, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT(
- KC_GRV, 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_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_BTN2, KC_MS_U, KC_BTN1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_HOME, KC_END, KC_DEL, KC_TRNS,
- KC_CAPS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_VOLU,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_PGUP, KC_TRNS, KC_TRNS, KC_PGUP, KC_VOLD,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END
- ),
- [2] = LAYOUT(
- RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_MOD, RGB_RMOD, BL_STEP, BL_TOGG, KC_TRNS, KC_TRNS, RESET,
- KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, RGB_HUD, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-};
diff --git a/keyboards/jc65/v32u4/keymaps/coth/readme.md b/keyboards/jc65/v32u4/keymaps/coth/readme.md
deleted file mode 100644
index 3d621859e7..0000000000
--- a/keyboards/jc65/v32u4/keymaps/coth/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-ChildoftheHorn's Keymap
-===
-
-Layer 1: "HHKB Mac" Split backspace, 6.25u space, caps is cntl
-
-Layer 2: V60++ with mouse controls on WASD
-
-Layer 3: RGB control on number row, LED controls, and Reset
-
-Keymap Maintainer: [Stacy Devino](https://github.com/childofthehorn)
-
-Difference from base layout: Primarily the HHKB-ness
-
-Intended usage: Daily driver for programming
diff --git a/keyboards/jc65/v32u4/keymaps/coth/rules.mk b/keyboards/jc65/v32u4/keymaps/coth/rules.mk
deleted file mode 100644
index e69de29bb2..0000000000
--- a/keyboards/jc65/v32u4/keymaps/coth/rules.mk
+++ /dev/null
diff --git a/keyboards/jc65/v32u4/keymaps/dead_encryption/config.h b/keyboards/jc65/v32u4/keymaps/dead_encryption/config.h
deleted file mode 100644
index a5568e400d..0000000000
--- a/keyboards/jc65/v32u4/keymaps/dead_encryption/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../config.h"
diff --git a/keyboards/jc65/v32u4/keymaps/dead_encryption/keymap.c b/keyboards/jc65/v32u4/keymaps/dead_encryption/keymap.c
deleted file mode 100644
index 61386395a8..0000000000
--- a/keyboards/jc65/v32u4/keymaps/dead_encryption/keymap.c
+++ /dev/null
@@ -1,35 +0,0 @@
-#include QMK_KEYBOARD_H
-// How long (in ms) to wait between animation steps for the breathing mode
-const uint8_t RGBLED_BREATHING_INTERVALS[] PROGMEM = {30, 20, 10, 5};
-
-// How long (in ms) to wait between animation steps for the rainbow mode
-const uint8_t RGBLED_RAINBOW_MOOD_INTERVALS[] PROGMEM = {120, 60, 30};
-
-// How long (in ms) to wait between animation steps for the swirl mode
-const uint8_t RGBLED_RAINBOW_SWIRL_INTERVALS[] PROGMEM = {30, 20, 3};
-
-// How long (in ms) to wait between animation steps for the snake mode
-const uint8_t RGBLED_SNAKE_INTERVALS[] PROGMEM = {100, 50, 20};
-
-// How long (in ms) to wait between animation steps for the knight modes
-const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {127, 63, 31};
-
-// These control which colors are selected for the gradient mode
-const uint16_t RGBLED_GRADIENT_RANGES[] PROGMEM = {360, 240, 180, 120, 90};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_GESC, 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_BSLS, KC_GRV, KC_PSCR,
- 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_PGUP,
- 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_PGDN,
- 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_DEL,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_SPACE, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT(
- RESET, 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_INS, KC_PAUS, KC_TRNS,
- KC_TRNS, RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_MOD, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS,
- KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_DOWN, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, BL_TOGG, BL_STEP, BL_INC, BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MPLY, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-};
diff --git a/keyboards/jc65/v32u4/keymaps/dead_encryption/readme.md b/keyboards/jc65/v32u4/keymaps/dead_encryption/readme.md
deleted file mode 100644
index b48075db9f..0000000000
--- a/keyboards/jc65/v32u4/keymaps/dead_encryption/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Dead's Keymap
-===
-
-Split backspace, 6.25u space, 2 Function Layers, reset + rgb controls on layer(2)
-
-Intended usage: This is my daily driver keymap
-
-===
-
-Encryption Complete \ No newline at end of file
diff --git a/keyboards/jc65/v32u4/keymaps/default/config.h b/keyboards/jc65/v32u4/keymaps/default/config.h
deleted file mode 100644
index 271f48d001..0000000000
--- a/keyboards/jc65/v32u4/keymaps/default/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-// place overrides here
diff --git a/keyboards/jc65/v32u4/keymaps/default/keymap.c b/keyboards/jc65/v32u4/keymaps/default/keymap.c
deleted file mode 100644
index c11e5ebeeb..0000000000
--- a/keyboards/jc65/v32u4/keymaps/default/keymap.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_GESC, 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_BSLS, KC_BSPC, KC_INS,
- 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_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_PGUP,
- 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_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_SPACE, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-};
diff --git a/keyboards/jc65/v32u4/keymaps/default/readme.md b/keyboards/jc65/v32u4/keymaps/default/readme.md
deleted file mode 100644
index 13430a630b..0000000000
--- a/keyboards/jc65/v32u4/keymaps/default/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Default Keymap
-===
-
-Super simple default keymap with only a base layer.
-
-Keymap Maintainer: [Ethan Madden](https://github.com/jetpacktuxedo)
-
-Difference from base layout: This is (as close as I can tell) the same as the layout that ships on the boards other than default underglow color.
-
-Intended usage: This is mostly provided for testing before you build your own keymap and as a reference to a stock(ish) configuration
diff --git a/keyboards/jc65/v32u4/keymaps/default/rules.mk b/keyboards/jc65/v32u4/keymaps/default/rules.mk
deleted file mode 100644
index e69de29bb2..0000000000
--- a/keyboards/jc65/v32u4/keymaps/default/rules.mk
+++ /dev/null
diff --git a/keyboards/jc65/v32u4/keymaps/gam3cat/config.h b/keyboards/jc65/v32u4/keymaps/gam3cat/config.h
deleted file mode 100644
index e4df94be70..0000000000
--- a/keyboards/jc65/v32u4/keymaps/gam3cat/config.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#pragma once
-
-//Force NKRO to be enabled.
-#define FORCE_NKRO
-
-//GRAVE_ESC override for CTRL+SHIFT+ESC Windows task manager shortcut.
-#define GRAVE_ESC_CTRL_OVERRIDE
-
-//Delay matrix scan for tap dance, reduce to activate modifier keys faster.
-//#define TAPPING_TERM 200
diff --git a/keyboards/jc65/v32u4/keymaps/gam3cat/keymap.c b/keyboards/jc65/v32u4/keymaps/gam3cat/keymap.c
deleted file mode 100644
index aa5709a373..0000000000
--- a/keyboards/jc65/v32u4/keymaps/gam3cat/keymap.c
+++ /dev/null
@@ -1,266 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "version.h"
-
-enum layers {
- _BL = 0, // Base Layer
- _WL, // Workman Layer
- _NL, // Norman Layer
- _DL, // Dvorak Layer
- _CL, // Base Layer
- _FL, // Function Layer
- _AL, // Adjust Layer
-};
-
-enum custom_keycodes {
- DYNAMIC_MACRO_RANGE = SAFE_RANGE,
- QMK_REV,
- KC_WEB,
- KC_SP4
-};
-
-extern backlight_config_t backlight_config;
-
-#include "dynamic_macro.h"
-#define FN_CAPS LT(_FL, KC_CAPS)
-#define KC_DMR1 DYN_REC_START1
-#define KC_DMR2 DYN_REC_START2
-#define KC_DMP1 DYN_MACRO_PLAY1
-#define KC_DMP2 DYN_MACRO_PLAY2
-#define KC_DMRS DYN_REC_STOP
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*#### _BL: Base Layer - Mostly standard 65% QWERTY layout.
- * .---------------------------------------------------------------.
- * |GrE|1 |2 |3 |4 |5 |6 |7 |8 |9 |0 |- |= |Backsp |Ins|
- * |---------------------------------------------------------------|
- * |Tab |Q |W |E |R |T |Y |U |I |O |P |[ |] |\ |Del|
- * |---------------------------------------------------------------|
- * |FnCaps|A |S |D |F |G |H |J |K |L |; |' |Return |PgU|
- * |---------------------------------------------------------------|
- * |Shift |Z |X |C |V |B |N |M |, |. |/ |Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |Ctrl|Gui |Alt | Space |RAlt |Ctrl |Lft|Dwn|Rgt|
- * *---------------------------------------------------------------*
- */
- [_BL] = LAYOUT(
- KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_INS,
- 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,
- FN_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_PGUP,
- KC_LSFT, XXXXXXX, 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_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- /*#### _WL: Workman Layer.
- * .---------------------------------------------------------------.
- * | | | | | | | | | | | |- |= | | |
- * |---------------------------------------------------------------|
- * | |Q |D |R |W |B |J |F |U |P |; |[ |] |\ | |
- * |---------------------------------------------------------------|
- * | |A |S |H |T |G |Y |N |E |O |I |' | | |
- * |---------------------------------------------------------------|
- * | |Z |X |M |C |V |K |L |, |. |/ | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | |
- * *---------------------------------------------------------------*
- */
- [_WL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_Q , KC_D , KC_R , KC_W , KC_B , KC_J , KC_F , KC_U , KC_P , KC_SCLN, _______, _______, _______, _______,
- _______, KC_A , KC_S , KC_H , KC_T , KC_G , KC_Y , KC_N , KC_E , KC_O , KC_I , _______, _______, _______,
- _______, _______, KC_Z , KC_X , KC_M , KC_C , KC_V , KC_K , KC_L , KC_COMM, KC_DOT , KC_SLSH, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /*#### _NL: Norman Layer.
- * .---------------------------------------------------------------.
- * | | | | | | | | | | | |- |= | | |
- * |---------------------------------------------------------------|
- * | |Q |W |D |F |K |J |U |R |L |; |[ |] |\ | |
- * |---------------------------------------------------------------|
- * | |A |S |E |T |G |Y |N |I |O |H |' | | |
- * |---------------------------------------------------------------|
- * | |Z |X |C |V |B |P |M |, |. |/ | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | |
- * *---------------------------------------------------------------*
- */
- [_NL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_Q , KC_W , KC_D , KC_F , KC_K , KC_J , KC_U , KC_R , KC_L , KC_SCLN, _______, _______, _______, _______,
- _______, KC_A , KC_S , KC_E , KC_T , KC_G , KC_Y , KC_N , KC_I , KC_O , KC_H , _______, _______, _______,
- _______, _______, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_P , KC_M , KC_COMM, KC_DOT , KC_SLSH, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /*#### _DL: Dvorak Layer.
- * .---------------------------------------------------------------.
- * | | | | | | | | | | | |[ |] | | |
- * |---------------------------------------------------------------|
- * | |' |, |. |P |Y |F |G |C |R |L |/ |= |\ | |
- * |---------------------------------------------------------------|
- * | |A |O |E |U |I |D |H |T |N |S |- | | |
- * |---------------------------------------------------------------|
- * | |; |Q |J |K |X |B |M |W |V |Z | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | |
- * *---------------------------------------------------------------*
- */
- [_DL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, _______,
- _______, KC_QUOT, KC_COMM, KC_DOT , KC_P , KC_Y , KC_F , KC_G , KC_C , KC_R , KC_L , KC_SLSH, KC_EQL , _______, _______,
- _______, KC_A , KC_O , KC_E , KC_U , KC_I , KC_D , KC_H , KC_T , KC_N , KC_S , KC_MINS, _______, _______,
- _______, _______, KC_SCLN, KC_Q , KC_J , KC_K , KC_X , KC_B , KC_M , KC_W , KC_V , KC_Z , _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /*#### _CL: Colmak Layer.
- * .---------------------------------------------------------------.
- * | | | | | | | | | | | |- |= | | |
- * |---------------------------------------------------------------|
- * | |Q |W |F |P |G |J |L |U |Y |; |[ |] |\ | |
- * |---------------------------------------------------------------|
- * | |A |R |S |T |D |H |N |E |I |O |' | | |
- * |---------------------------------------------------------------|
- * | |Z |X |C |V |B |K |M |, |. |/ | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | |
- * *---------------------------------------------------------------*
- */
- [_CL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN, _______, _______, _______, _______,
- _______, KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , _______, _______, _______,
- _______, _______, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /*#### _FL: Function Layer.
- * .---------------------------------------------------------------.
- * |Web|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|SLock |PSc|
- * |---------------------------------------------------------------|
- * |Fn_AL| | | | | | | | | | | | | |Pau|
- * |---------------------------------------------------------------|
- * |FnCaps| | | | | |Lft|Dwn|Up |Rgt| | | |Hme|
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | |VlMute|VlU|End|
- * |---------------------------------------------------------------|
- * | | |Menu| SP4 | | |WBk|VlD|WFw|
- * *---------------------------------------------------------------*
- */
- [_FL] = LAYOUT(
- KC_WEB, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_SLCK, KC_PSCR,
- MO(_AL), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PAUS,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MUTE, KC_VOLU, KC_END,
- XXXXXXX, XXXXXXX, KC_MENU, KC_SP4, KC_SP4, KC_SP4, XXXXXXX, XXXXXXX, XXXXXXX, KC_WBAK, KC_VOLD, KC_WFWD
- ),
- /*#### _AL: Adjust Layer - Keymap select, RGB Underglow, LED backlight, and Dynamic Macro settings.
- * .---------------------------------------------------------------.
- * |Rev|Tog|Mod|H- |H+ |S- |S+ |V- |V+ | |BLT|BL-|BL+| |MP1|
- * |---------------------------------------------------------------|
- * |Fn_AL|_BL|_WL| | | | | | | | | | | |MR1|
- * |---------------------------------------------------------------|
- * |FnCaps| | |_DL| | | | | | | | | |MS |
- * |---------------------------------------------------------------|
- * | | | |_CL| |_BL|_NL| | | | | | |MR2|
- * |---------------------------------------------------------------|
- * |Rst | | | | | | | |MP2|
- * *---------------------------------------------------------------*
- */
- [_AL] = LAYOUT(
- QMK_REV, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, XXXXXXX, BL_TOGG, BL_DEC, BL_INC, XXXXXXX, XXXXXXX, KC_DMP1,
- _______, DF(_BL), DF(_WL), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DMR1,
- _______, XXXXXXX, XXXXXXX, DF(_DL), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DMRS,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DF(_CL), XXXXXXX, DF(_BL), DF(_NL), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DMR2,
- RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DMP2
- ),
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QMK_REV:
- if (record->event.pressed) {
- SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP "@" QMK_VERSION ":" QMK_BUILDDATE);
- }
- return false;
- break;
- case KC_WEB:
- if (record->event.pressed) {
- SEND_STRING(SS_LGUI("r"));
- wait_ms(100);
- SEND_STRING("chrome.exe https://geekhack.org/index.php?topic=86756.new;topicseen#new\n");
- }
- return false;
- break;
- case KC_SP4:
- if (record->event.pressed) {
- SEND_STRING (" ");
- }
- return false;
- break;
- }
- // Dynamic Macros.
- if (!process_record_dynamic_macro(keycode, record)) {
- return false;
- }
- return true;
-}
-
-void custom_backlight_level(uint8_t level) {
- if (level > BACKLIGHT_LEVELS)
- level = BACKLIGHT_LEVELS;
- backlight_config.level = level;
- backlight_config.enable = !!backlight_config.level;
- backlight_set(backlight_config.level);
-}
-
-void matrix_init_user(void) {
- #ifdef BACKLIGHT_ENABLE
- custom_backlight_level(0);
- #endif
- #ifdef RGBLIGHT_ENABLE
- rgblight_mode(1);
- rgblight_sethsv_noeeprom(180,100,100);
- #endif
-}
-
-void matrix_scan_user(void) {
-
-}
-
-uint32_t layer_state_set_user(uint32_t state) {
- switch (biton32(state)) {
- case _BL:
- custom_backlight_level(0);
- rgblight_sethsv_noeeprom(180,100,255);
- break;
- case _WL:
- custom_backlight_level(1);
- rgblight_sethsv_noeeprom(180,95,240);
- break;
- case _NL:
- custom_backlight_level(1);
- rgblight_sethsv_noeeprom(180,90,225);
- break;
- case _DL:
- custom_backlight_level(1);
- rgblight_sethsv_noeeprom(180,85,210);
- break;
- case _CL:
- custom_backlight_level(1);
- rgblight_sethsv_noeeprom(180,80,195);
- break;
- case _FL:
- custom_backlight_level(2);
- rgblight_sethsv_noeeprom(230,255,255);
- break;
- case _AL:
- custom_backlight_level(3);
- rgblight_sethsv_noeeprom(350,255,255);
- break;
- default:
- custom_backlight_level(0);
- rgblight_sethsv_noeeprom(180,100,100);
- break;
- }
- return state;
-}
-
-void led_set_user(uint8_t usb_led) {
-
-}
diff --git a/keyboards/jc65/v32u4/keymaps/gam3cat/readme.md b/keyboards/jc65/v32u4/keymaps/gam3cat/readme.md
deleted file mode 100644
index e79ce4ff7f..0000000000
--- a/keyboards/jc65/v32u4/keymaps/gam3cat/readme.md
+++ /dev/null
@@ -1,105 +0,0 @@
-# Keymap Maintainer: Gam3cat
-make jc65/v32u4:gam3cat
-## Layout Config:
-2u backspace, 2.25u left shift/enter, 1.75u right shift.
-(2x1.5u, 1x7.0u, 2x1.5u, 3x1u), (3x1.25u, 1x6.25u, 2x1.5u, 3x1u), or
-(3x1.25u, 1x6.25u, 6x1u) bottom row.
-
- FN_CAPS = MO(_FL) when held, CAPS when tapped.
- GRAVE_ESC + GUI = `
- GRAVE_ESC + SHIFT = ~
-
-## Base Layer Selection:
-(Caps+TAB+( )): (Q)WERTY, (W)orkman, (N)orman, (D)vorak, (C)olmak
-
-### Base Layer Options:
-#### _BL: Base Layer - Mostly standard 65% QWERTY layout.
- .---------------------------------------------------------------.
- |GrE|1 |2 |3 |4 |5 |6 |7 |8 |9 |0 |- |= |Backsp |Ins|
- |---------------------------------------------------------------|
- |Tab |Q |W |E |R |T |Y |U |I |O |P |[ |] |\ |Del|
- |---------------------------------------------------------------|
- |FnCaps|A |S |D |F |G |H |J |K |L |; |' |Return |PgU|
- |---------------------------------------------------------------|
- |Shift |Z |X |C |V |B |N |M |, |. |/ |Shift |Up |PgD|
- |---------------------------------------------------------------|
- |Ctrl|Gui |Alt | Space |RAlt |Ctrl |Lft|Dwn|Rgt|
- *---------------------------------------------------------------*
-
-#### _WL: Workman Layer.
- .---------------------------------------------------------------.
- | | | | | | | | | | | |- |= | | |
- |---------------------------------------------------------------|
- | |Q |D |R |W |B |J |F |U |P |; |[ |] |\ | |
- |---------------------------------------------------------------|
- | |A |S |H |T |G |Y |N |E |O |I |' | | |
- |---------------------------------------------------------------|
- | |Z |X |M |C |V |K |L |, |. |/ | | | |
- |---------------------------------------------------------------|
- | | | | | | | | | |
- *---------------------------------------------------------------*
-
-#### _NL: Norman Layer.
- .---------------------------------------------------------------.
- | | | | | | | | | | | |- |= | | |
- |---------------------------------------------------------------|
- | |Q |W |D |F |K |J |U |R |L |; |[ |] |\ | |
- |---------------------------------------------------------------|
- | |A |S |E |T |G |Y |N |I |O |H |' | | |
- |---------------------------------------------------------------|
- | |Z |X |C |V |B |P |M |, |. |/ | | | |
- |---------------------------------------------------------------|
- | | | | | | | | | |
- *---------------------------------------------------------------*
-
-#### _DL: Dvorak Layer.
- .---------------------------------------------------------------.
- | | | | | | | | | | | |[ |] | | |
- |---------------------------------------------------------------|
- | |' |, |. |P |Y |F |G |C |R |L |/ |= |\ | |
- |---------------------------------------------------------------|
- | |A |O |E |U |I |D |H |T |N |S |- | | |
- |---------------------------------------------------------------|
- | |; |Q |J |K |X |B |M |W |V |Z | | | |
- |---------------------------------------------------------------|
- | | | | | | | | | |
- *---------------------------------------------------------------*
-
-#### _CL: Colmak Layer.
- .---------------------------------------------------------------.
- | | | | | | | | | | | |- |= | | |
- |---------------------------------------------------------------|
- | |Q |W |F |P |G |J |L |U |Y |; |[ |] |\ | |
- |---------------------------------------------------------------|
- | |A |R |S |T |D |H |N |E |I |O |' | | |
- |---------------------------------------------------------------|
- | |Z |X |C |V |B |K |M |, |. |/ | | | |
- |---------------------------------------------------------------|
- | | | | | | | | | |
- *---------------------------------------------------------------*
-
-#### _FL: Function Layer.
- .---------------------------------------------------------------.
- |Web|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|SLock |PSc|
- |---------------------------------------------------------------|
- |Fn_AL| | | | | | | | | | | | | |Pau|
- |---------------------------------------------------------------|
- |FnCaps| | | | | |Lft|Dwn|Up |Rgt| | | |Hme|
- |---------------------------------------------------------------|
- | | | | | | | | | | | |VlMute|VlU|End|
- |---------------------------------------------------------------|
- | | |Menu| SP4 | | |WBk|VlD|WFw|
- *---------------------------------------------------------------*
-
-#### _AL: Adjust Layer - Keymap select, RGB Underglow, LED backlight, and Dynamic Macro settings.
- .---------------------------------------------------------------.
- |Rev|Tog|Mod|H- |H+ |S- |S+ |V- |V+ | |BLT|BL-|BL+| |MP1|
- |---------------------------------------------------------------|
- |Fn_AL|_BL|_WL| | | | | | | | | | | |MR1|
- |---------------------------------------------------------------|
- |FnCaps| | |_DL| | | | | | | | | |MS |
- |---------------------------------------------------------------|
- | | | |_CL| |_BL|_NL| | | | | | |MR2|
- |---------------------------------------------------------------|
- |Rst | | | | | | | |MP2|
- *---------------------------------------------------------------*
diff --git a/keyboards/jc65/v32u4/keymaps/gam3cat/rules.mk b/keyboards/jc65/v32u4/keymaps/gam3cat/rules.mk
deleted file mode 100644
index 4086c15d4f..0000000000
--- a/keyboards/jc65/v32u4/keymaps/gam3cat/rules.mk
+++ /dev/null
@@ -1,25 +0,0 @@
-# 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
-#
-TAP_DANCE_ENABLE = no # Enable TapDance functionality
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
-MOUSEKEY_ENABLE = no # Mouse keys(+1500)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-NKRO_ENABLE = yes # Nkey Rollover - If this doesn't work, add this to config.h: #define FORCE_NKRO
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-UNICODE_ENABLE = no # Unicode
-UNICODEMAP_ENABLE = no # Enable extended unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-AUDIO_ENABLE = no # Audio output on port C6
-FAUXCLICKY_ENABLE = no # Uses buzzer to emulate clicky switches. By default, uses the C6 pin, same as AUDIO_ENABLE.
-#VARIABLE_TRACE = no # Use this to debug changes to variable values
-API_SYSEX_ENABLE = no # This enables using the Quantum SYSEX API to send strings(+5390)
-KEY_LOCK_ENABLE = no # This enables key lock(+260)
-SPLIT_KEYBOARD = no # This enables split keyboard support and includes all necessary files located at quantum/split_common
-
diff --git a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/config.h b/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/config.h
deleted file mode 100644
index a5568e400d..0000000000
--- a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../config.h"
diff --git a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/keymap.c b/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/keymap.c
deleted file mode 100644
index 992640523a..0000000000
--- a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/keymap.c
+++ /dev/null
@@ -1,25 +0,0 @@
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_GESC, 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_BSLS, KC_GRV, KC_INS,
- 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_DEL,
- MO(1), 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_PGUP,
- 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_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_SPACE, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT(
- KC_GRV, 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_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_DEL, KC_TRNS,
- MO(1), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_PGUP, KC_TRNS, KC_TRNS, KC_PGUP, KC_VOLD,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_HOME, KC_PGDN, KC_END
- ),
- [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, KC_TRNS, KC_TRNS, KC_TRNS, RESET,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- MO(1), RGB_SAD, RGB_SAI, KC_TRNS, KC_TRNS, RGB_HUD, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-};
diff --git a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/readme.md b/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/readme.md
deleted file mode 100644
index 4083d8f470..0000000000
--- a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Jetpacktuxedo's Keymap
-===
-
-Split backspace, 6.25u space, caps is fn, my standard fn layer, reset + rgb controls on layer(2)
-
-Keymap Maintainer: [Ethan Madden](https://github.com/jetpacktuxedo)
-
-Difference from base layout: The base layer is the same, except caps is fn, and there are additional tools on layers
-
-Intended usage: This is my daily driver keymap
diff --git a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/rules.mk b/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/rules.mk
deleted file mode 100644
index e69de29bb2..0000000000
--- a/keyboards/jc65/v32u4/keymaps/jetpacktuxedo/rules.mk
+++ /dev/null
diff --git a/keyboards/jc65/v32u4/keymaps/na7thana/config.h b/keyboards/jc65/v32u4/keymaps/na7thana/config.h
deleted file mode 100644
index a5568e400d..0000000000
--- a/keyboards/jc65/v32u4/keymaps/na7thana/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../config.h"
diff --git a/keyboards/jc65/v32u4/keymaps/na7thana/keymap.c b/keyboards/jc65/v32u4/keymaps/na7thana/keymap.c
deleted file mode 100644
index 68560464b6..0000000000
--- a/keyboards/jc65/v32u4/keymaps/na7thana/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_GESC, 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_NO, KC_BSLS, KC_HOME,
- 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_PGUP,
- 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_PGDN,
- 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, MO(1),
- KC_LCTL, KC_LALT, KC_LALT, KC_SPACE, KC_SPACE, KC_SPACE, KC_SPACE, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT(
- RESET, 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_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_DEL, KC_TRNS,
- KC_CAPS, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_MPLY, KC_MPLY, KC_VOLU, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_VOLD, KC_TRNS
- ),
-};
diff --git a/keyboards/jc65/v32u4/keymaps/na7thana/readme.md b/keyboards/jc65/v32u4/keymaps/na7thana/readme.md
deleted file mode 100644
index 13430a630b..0000000000
--- a/keyboards/jc65/v32u4/keymaps/na7thana/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Default Keymap
-===
-
-Super simple default keymap with only a base layer.
-
-Keymap Maintainer: [Ethan Madden](https://github.com/jetpacktuxedo)
-
-Difference from base layout: This is (as close as I can tell) the same as the layout that ships on the boards other than default underglow color.
-
-Intended usage: This is mostly provided for testing before you build your own keymap and as a reference to a stock(ish) configuration
diff --git a/keyboards/jc65/v32u4/keymaps/na7thana/rules.mk b/keyboards/jc65/v32u4/keymaps/na7thana/rules.mk
deleted file mode 100644
index e69de29bb2..0000000000
--- a/keyboards/jc65/v32u4/keymaps/na7thana/rules.mk
+++ /dev/null
diff --git a/keyboards/jc65/v32u4/keymaps/naut/keymap.c b/keyboards/jc65/v32u4/keymaps/naut/keymap.c
deleted file mode 100644
index 2fa5ec47c4..0000000000
--- a/keyboards/jc65/v32u4/keymaps/naut/keymap.c
+++ /dev/null
@@ -1,93 +0,0 @@
-#include QMK_KEYBOARD_H
-
-// Define Layers
-#define _BASE 0
-#define _FNX 1
-#define _MAC 2
-#define _RGB 3
-#define _OFF 4
-
-// Define Macros
-#define M_PRTS M(0)
-#define M_PRTA M(1)
-#define M_PRTSC M(2)
-#define M_PRTAC M(3)
-#define M_MSSN M(4)
-#define M_APPS M(5)
-#define M_SPOT M(6)
-#define M_LEFT M(7)
-#define M_RGHT M(8)
-#define RGB_WHT M(9)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // Base Layer
- [_BASE] = LAYOUT(
- 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_BSLS, KC_GRV, KC_INS,
- 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_DEL,
- 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_PGUP,
- KC_LSFT, KC_NO, 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_PGDN,
- MO(1),KC_LALT,KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_NO,KC_RALT,KC_LEFT,KC_DOWN,KC_RGHT
- ),
- // Fn Layer
- [_FNX] = LAYOUT(
- KC_TRNS, 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_TRNS, TG(4), TG(3),
- KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, TG(2),KC_VOLU,KC_MPLY,
- KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_MRWD,KC_VOLD,KC_MFFD
- ),
- // Mac Layer
- [_MAC] = LAYOUT(
- TO(0), KC_F14, KC_F15, M_APPS, M_MSSN, KC_F11, KC_F12,KC_MRWD,KC_MPLY,KC_MFFD,KC_MUTE,KC_VOLD,KC_VOLU,KC_EJCT, KC_NO, KC_NO,
- KC_NO, M_PRTS, M_PRTA, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSPC, KC_NO,
- KC_NO,M_PRTSC,M_PRTAC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_ENT, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_X, KC_C, KC_V, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0), M_MSSN, KC_NO,
- KC_NO, KC_NO,KC_LGUI, M_SPOT, M_SPOT, M_SPOT, KC_RGUI, KC_NO, KC_NO, M_LEFT, M_APPS, M_RGHT
- ),
- // RGB and BL Layer
- [_RGB] = LAYOUT(
- TO(0), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_NO,RGB_HUD,RGB_HUI,RGB_WHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,BL_TOGG,
- KC_NO,RGB_SAD,RGB_SAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,RGB_TOG,
- KC_NO, KC_NO,RGB_VAD,RGB_VAI, BL_DEC, BL_INC, KC_NO, KC_NO, KC_NO, KC_NO,RGB_MOD,RGB_RMOD, KC_NO,RGB_M_P,RGB_M_R,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,RGB_M_G,RGB_M_SW
- ),
- // Mash Layer
- [_OFF] = LAYOUT(
- TO(0), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- ),
-};
-
-// The Macros
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
- if (record->event.pressed) {
- switch(id) {
- case 0:
- return MACRO(D(LGUI), D(LSFT), T(3), U(LSFT), U(LGUI), END); // Mac print screen
- case 1:
- return MACRO(D(LGUI), D(LSFT), T(4), U(LSFT), U(LGUI), END); // Mac print area
- case 2:
- return MACRO(D(LCTL), D(LSFT), D(LGUI), T(3), D(LCTL), D(LSFT), D(LGUI), END); // Mac print screen to clipboard
- case 3:
- return MACRO(D(LCTL), D(LSFT), D(LGUI), T(4), D(LCTL), D(LSFT), D(LGUI), END); // Mac print area to clipboard
- case 4:
- return MACRO(D(LCTL), T(UP), U(LCTL), END); // Mac mission control
- case 5:
- return MACRO(D(LCTL), T(DOWN), U(LCTL), END); // Mac app windows
- case 6:
- return MACRO(D(LGUI), T(SPC), U(LGUI), END); // Mac spotlight search
- case 7:
- return MACRO(D(LCTL), T(LEFT), U(LCTL), END); // Mac mission left
- case 8:
- return MACRO(D(LCTL), T(RGHT), U(LCTL), END); // Mac mission right
- case 9:
- rgblight_setrgb(0xff, 0xff, 0xff); // White rgb shortcut
- break;
- }
- }
- return MACRO_NONE;
-};
diff --git a/keyboards/jc65/v32u4/keymaps/naut/readme.md b/keyboards/jc65/v32u4/keymaps/naut/readme.md
deleted file mode 100644
index ef5947f7ce..0000000000
--- a/keyboards/jc65/v32u4/keymaps/naut/readme.md
+++ /dev/null
@@ -1,18 +0,0 @@
-Naut's Keymap
-=======
-
-Layer 1: HHKB Split backspace, 6.25u space, control on caps, Fn on L-Ctl.
-
-Layer 2: F Row on numrow, caps on tab, media shortcuts on arrows
-
-Layer 3: Mac Media buttons on numrow
-
-Layer 4: RGB control
-
-Layer 5: Keyboard off (for mashing purposes and reset)
-
-Keymap Maintainer: [Jason Barnachea](https://github.com/nautxx)
-
-Difference from base layout: HHKBish layout. HHKB Fn layer. Mac media layer. RGB control layer. Button mashing layer.
-
-Intended usage: Daily driver for keyboard peacocking.
diff --git a/keyboards/jc65/v32u4/keymaps/naut/rules.mk b/keyboards/jc65/v32u4/keymaps/naut/rules.mk
deleted file mode 100644
index d7463419b4..0000000000
--- a/keyboards/jc65/v32u4/keymaps/naut/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-BACKLIGHT_ENABLE = yes
diff --git a/keyboards/jc65/v32u4/readme.md b/keyboards/jc65/v32u4/readme.md
deleted file mode 100644
index 61ac70e28e..0000000000
--- a/keyboards/jc65/v32u4/readme.md
+++ /dev/null
@@ -1,22 +0,0 @@
-JC65
-===
-
-![JC65](https://i.imgur.com/I4hCyBI.jpg)
-
-The JC65 PCB actually has two revisions: A QMK native version, and a PS2AVRGB version. Jchan offered both PCBs as options during the M65-A Round 1 group buy, and were also available choices for the 65% acrylic case group buy.
-
-These docs are for the QMK version of the PCB. [More info on qmk.fm](http://qmk.fm/planck/)
-
-Keyboard Maintainer: [Ethan Madden](https://github.com/jetpacktuxedo)
-Hardware Supported: JC65 rev.qmk
-Hardware Availability: [keyclack.com](https://keyclack.com/)
-
-Make example for this keyboard (after setting up your build environment):
-
- make jc65/v32u4:default
-
-Or to make and flash:
-
- make jc65/v32u4:default:dfu
-
-See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
diff --git a/keyboards/jc65/v32u4/rules.mk b/keyboards/jc65/v32u4/rules.mk
deleted file mode 100644
index c2c02b6147..0000000000
--- a/keyboards/jc65/v32u4/rules.mk
+++ /dev/null
@@ -1,68 +0,0 @@
-# MCU name
-#MCU = at90usb1287
-MCU = atmega32u4
-
-# Processor frequency.
-# This will define a symbol, F_CPU, in all source code files equal to the
-# processor frequency in Hz. You can then use this symbol in your source code to
-# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
-# automatically to create a 32-bit value in your source code.
-#
-# This will be an integer division of F_USB below, as it is sourced by
-# F_USB after it has run through any CPU prescalers. Note that this value
-# does not *change* the processor frequency - it should merely be updated to
-# reflect the processor speed set externally so that the code can use accurate
-# software delays.
-F_CPU = 16000000
-
-
-#
-# LUFA specific
-#
-# Target architecture (see library "Board Types" documentation).
-ARCH = AVR8
-
-# Input clock frequency.
-# This will define a symbol, F_USB, in all source code files equal to the
-# input clock frequency (before any prescaling is performed) in Hz. This value may
-# differ from F_CPU if prescaling is used on the latter, and is required as the
-# raw input clock is fed directly to the PLL sections of the AVR for high speed
-# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
-# at the end, this will be done automatically to create a 32-bit value in your
-# source code.
-#
-# If no clock division is performed on the input clock inside the AVR (via the
-# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
-F_USB = $(F_CPU)
-
-# Interrupt driven control endpoint task(+60)
-OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
-
-
-# Boot Section Size in *bytes*
-# Teensy halfKay 512
-# Teensy++ halfKay 1024
-# Atmel DFU loader 4096
-# LUFA bootloader 4096
-# USBaspLoader 2048
-OPT_DEFS += -DBOOTLOADER_SIZE=4096
-
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
-MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-NKRO_ENABLE = yes # USB Nkey Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default
-RGBLIGHT_ENABLE = yes
-MIDI_ENABLE = no # MIDI controls
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-AUDIO_ENABLE = no # Audio output on port C6
diff --git a/keyboards/jc65/v32u4/v32u4.c b/keyboards/jc65/v32u4/v32u4.c
deleted file mode 100644
index c69c5d5316..0000000000
--- a/keyboards/jc65/v32u4/v32u4.c
+++ /dev/null
@@ -1,36 +0,0 @@
-#include "v32u4.h"
-
-void matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
-
- matrix_init_user();
-}
-
-void matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
-
- matrix_scan_user();
-}
-
-bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
- // put your per-action keyboard code here
- // runs for every action, just before processing by the firmware
-
- return process_record_user(keycode, record);
-}
-
-void led_set_kb(uint8_t usb_led) {
- // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
- if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
- // output low
- DDRB |= (1<<2);
- PORTB &= ~(1<<2);
- } else {
- // Hi-Z
- DDRB &= ~(1<<2);
- PORTB &= ~(1<<2);
- }
- led_set_user(usb_led);
-}
diff --git a/keyboards/jc65/v32u4/v32u4.h b/keyboards/jc65/v32u4/v32u4.h
deleted file mode 100644
index 866e6cc689..0000000000
--- a/keyboards/jc65/v32u4/v32u4.h
+++ /dev/null
@@ -1,21 +0,0 @@
-#ifndef V32U4_H
-#define V32U4_H
-
-#include "quantum.h"
-
-#define LAYOUT( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
- K10, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
- K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \
- K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, K3F, \
- K40, K41, K43, K44, K46, K48, K4A, K4B, K4C, K4D, K4E, K4F \
-)\
-{\
- {K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F}, \
- {K10, KC_NO, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F}, \
- {K20, KC_NO, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, KC_NO, K2F}, \
- {K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E, K3F}, \
- {K40, K41, KC_NO, K43, K44, KC_NO, K46, KC_NO, K48, KC_NO, K4A, K4B, K4C, K4D, K4E, K4F}, \
-}
-
-#endif