From 59fa34a6fab9a3dfa281e8595bdbd08f728dacb8 Mon Sep 17 00:00:00 2001
From: jack <0x6A73@pm.me>
Date: Thu, 12 May 2022 12:24:03 -0600
Subject: [Keyboard] Refactor mechwild/mokulua (#17068)
---
keyboards/mechwild/mokulua/config.h | 132 +++++++++++
keyboards/mechwild/mokulua/glcdfont.c | 244 +++++++++++++++++++++
keyboards/mechwild/mokulua/info.json | 5 +-
.../mechwild/mokulua/keymaps/default/keymap.c | 46 ++++
.../mechwild/mokulua/keymaps/default/readme.md | 1 +
keyboards/mechwild/mokulua/keymaps/silly/config.h | 7 +
keyboards/mechwild/mokulua/keymaps/silly/keymap.c | 128 +++++++++++
keyboards/mechwild/mokulua/keymaps/silly/readme.md | 1 +
keyboards/mechwild/mokulua/keymaps/silly/rules.mk | 2 +
keyboards/mechwild/mokulua/keymaps/via/keymap.c | 46 ++++
keyboards/mechwild/mokulua/keymaps/via/readme.md | 1 +
keyboards/mechwild/mokulua/keymaps/via/rules.mk | 2 +
keyboards/mechwild/mokulua/lib/mokulua.c | 244 ---------------------
keyboards/mechwild/mokulua/mirrored/config.h | 98 ---------
.../mokulua/mirrored/keymaps/default/keymap.c | 46 ----
.../mokulua/mirrored/keymaps/default/readme.md | 1 -
.../mechwild/mokulua/mirrored/keymaps/via/keymap.c | 46 ----
.../mokulua/mirrored/keymaps/via/readme.md | 1 -
.../mechwild/mokulua/mirrored/keymaps/via/rules.mk | 2 -
keyboards/mechwild/mokulua/mirrored/mirrored.c | 82 -------
keyboards/mechwild/mokulua/mirrored/mirrored.h | 53 -----
keyboards/mechwild/mokulua/mirrored/rules.mk | 22 --
keyboards/mechwild/mokulua/mokulua.c | 82 +++++++
keyboards/mechwild/mokulua/mokulua.h | 29 +++
keyboards/mechwild/mokulua/rules.mk | 23 +-
keyboards/mechwild/mokulua/standard/config.h | 135 ------------
.../mokulua/standard/keymaps/default/keymap.c | 46 ----
.../mokulua/standard/keymaps/default/readme.md | 1 -
.../mokulua/standard/keymaps/silly/config.h | 7 -
.../mokulua/standard/keymaps/silly/keymap.c | 128 -----------
.../mokulua/standard/keymaps/silly/readme.md | 1 -
.../mokulua/standard/keymaps/silly/rules.mk | 2 -
.../mechwild/mokulua/standard/keymaps/via/keymap.c | 46 ----
.../mokulua/standard/keymaps/via/readme.md | 1 -
.../mechwild/mokulua/standard/keymaps/via/rules.mk | 2 -
keyboards/mechwild/mokulua/standard/rules.mk | 22 --
keyboards/mechwild/mokulua/standard/standard.c | 82 -------
keyboards/mechwild/mokulua/standard/standard.h | 52 -----
38 files changed, 744 insertions(+), 1125 deletions(-)
create mode 100644 keyboards/mechwild/mokulua/config.h
create mode 100644 keyboards/mechwild/mokulua/glcdfont.c
create mode 100644 keyboards/mechwild/mokulua/keymaps/default/keymap.c
create mode 100644 keyboards/mechwild/mokulua/keymaps/default/readme.md
create mode 100644 keyboards/mechwild/mokulua/keymaps/silly/config.h
create mode 100644 keyboards/mechwild/mokulua/keymaps/silly/keymap.c
create mode 100644 keyboards/mechwild/mokulua/keymaps/silly/readme.md
create mode 100644 keyboards/mechwild/mokulua/keymaps/silly/rules.mk
create mode 100644 keyboards/mechwild/mokulua/keymaps/via/keymap.c
create mode 100644 keyboards/mechwild/mokulua/keymaps/via/readme.md
create mode 100644 keyboards/mechwild/mokulua/keymaps/via/rules.mk
delete mode 100644 keyboards/mechwild/mokulua/lib/mokulua.c
delete mode 100644 keyboards/mechwild/mokulua/mirrored/config.h
delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c
delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md
delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c
delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md
delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk
delete mode 100644 keyboards/mechwild/mokulua/mirrored/mirrored.c
delete mode 100644 keyboards/mechwild/mokulua/mirrored/mirrored.h
delete mode 100644 keyboards/mechwild/mokulua/mirrored/rules.mk
create mode 100644 keyboards/mechwild/mokulua/mokulua.c
create mode 100644 keyboards/mechwild/mokulua/mokulua.h
delete mode 100644 keyboards/mechwild/mokulua/standard/config.h
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/default/readme.md
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/config.h
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/readme.md
delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk
delete mode 100644 keyboards/mechwild/mokulua/standard/rules.mk
delete mode 100644 keyboards/mechwild/mokulua/standard/standard.c
delete mode 100644 keyboards/mechwild/mokulua/standard/standard.h
(limited to 'keyboards')
diff --git a/keyboards/mechwild/mokulua/config.h b/keyboards/mechwild/mokulua/config.h
new file mode 100644
index 0000000000..a424bc6648
--- /dev/null
+++ b/keyboards/mechwild/mokulua/config.h
@@ -0,0 +1,132 @@
+// Copyright 2022 Kyle McCreery (@kylemccreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include "config_common.h"
+
+/* USB Device descriptor parameter */
+#define VENDOR_ID 0x6D77 // mw = "MechWild"
+#define PRODUCT_ID 0x170B
+#define DEVICE_VER 0x0103
+#define MANUFACTURER MechWild
+#define PRODUCT Mokulua
+
+/* Key matrix size */
+#define MATRIX_ROWS 12
+#define MATRIX_COLS 6
+
+/* Key matrix pins */
+#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 }
+#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 }
+#define UNUSED_PINS
+
+/* Encoder pins */
+#define ENCODERS_PAD_A { D2 }
+#define ENCODERS_PAD_B { B2 }
+
+/* Encoder resolution */
+#define ENCODER_RESOLUTION 4
+#define TAP_CODE_DELAY 10
+
+/* COL2ROW, ROW2COL */
+#define DIODE_DIRECTION COL2ROW
+
+#define OLED_FONT_H "keyboards/mechwild/mokulua/glcdfont.c"
+
+/*
+ * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
+ */
+#define SOFT_SERIAL_PIN D3
+#define MASTER_LEFT
+//#define MASTER_RIGHT
+#define RGBLIGHT_SPLIT
+#define RGBLED_SPLIT { 8, 8 }
+#define SPLIT_LAYER_STATE_ENABLE
+#define SPLIT_LED_STATE_ENABLE
+#define SPLIT_MODS_ENABLE
+#define SPLIT_OLED_ENABLE
+
+/* RGB options */
+#define RGB_DI_PIN B6
+#ifdef RGB_DI_PIN
+# define RGBLED_NUM 16
+# define RGBLIGHT_HUE_STEP 8
+# define RGBLIGHT_SAT_STEP 8
+# define RGBLIGHT_VAL_STEP 8
+# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
+# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
+/*== all animations enable ==*/
+//# define RGBLIGHT_ANIMATIONS
+/*== or choose animations ==*/
+//# define RGBLIGHT_EFFECT_BREATHING
+# define RGBLIGHT_EFFECT_RAINBOW_MOOD
+# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
+//# define RGBLIGHT_EFFECT_SNAKE
+//# define RGBLIGHT_EFFECT_KNIGHT
+//# define RGBLIGHT_EFFECT_CHRISTMAS
+//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
+//# define RGBLIGHT_EFFECT_RGB_TEST
+//# define RGBLIGHT_EFFECT_ALTERNATING
+/*== customize breathing effect ==*/
+/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
+//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
+/*==== use exp() and sin() ====*/
+//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
+//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
+#endif
+
+/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
+#define DEBOUNCE 5
+
+/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
+#define LOCKING_SUPPORT_ENABLE
+/* Locking resynchronize hack */
+#define LOCKING_RESYNC_ENABLE
+
+/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
+ * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
+ */
+//#define GRAVE_ESC_CTRL_OVERRIDE
+
+/*
+ * Force NKRO
+ *
+ * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
+ * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
+ * makefile for this to work.)
+ *
+ * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
+ * until the next keyboard reset.
+ *
+ * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
+ * fully operational during normal computer usage.
+ *
+ * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
+ * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
+ * bootmagic, NKRO mode will always be enabled until it is toggled again during a
+ * power-up.
+ *
+ */
+//#define FORCE_NKRO
+
+/*
+ * Feature disable options
+ * These options are also useful to firmware size reduction.
+ */
+
+/* disable debug print */
+//#define NO_DEBUG
+
+/* disable print */
+//#define NO_PRINT
+
+/* disable action features */
+//#define NO_ACTION_LAYER
+//#define NO_ACTION_TAPPING
+//#define NO_ACTION_ONESHOT
+
+
+/* Bootmagic Lite key configuration */
+//#define BOOTMAGIC_LITE_ROW 0
+//#define BOOTMAGIC_LITE_COLUMN 0
diff --git a/keyboards/mechwild/mokulua/glcdfont.c b/keyboards/mechwild/mokulua/glcdfont.c
new file mode 100644
index 0000000000..d2a7720117
--- /dev/null
+++ b/keyboards/mechwild/mokulua/glcdfont.c
@@ -0,0 +1,244 @@
+/* Copyright 2020 Kyle McCreery
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#include "progmem.h"
+
+const unsigned char font[] PROGMEM = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
+ 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
+ 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
+ 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
+ 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
+ 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
+ 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
+ 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
+ 0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
+ 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
+ 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
+ 0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
+ 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
+ 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
+ 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
+ 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
+ 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
+ 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
+ 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
+ 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
+ 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
+ 0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
+ 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
+ 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
+ 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
+ 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
+ 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
+ 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
+ 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
+ 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
+ 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
+ 0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
+ 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
+ 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
+ 0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
+ 0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
+ 0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
+ 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
+ 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
+ 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
+ 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
+ 0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
+ 0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
+ 0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
+ 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
+ 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
+ 0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
+ 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
+ 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
+ 0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
+ 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
+ 0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
+ 0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
+ 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
+ 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
+ 0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
+ 0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
+ 0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
+ 0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
+ 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
+ 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
+ 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
+ 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
+ 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
+ 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
+ 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
+ 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
+ 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
+ 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
+ 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
+ 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
+ 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
+ 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
+ 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
+ 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
+ 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
+ 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
+ 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
+ 0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
+ 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
+ 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
+ 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
+ 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
+ 0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
+ 0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
+ 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
+ 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
+ 0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
+ 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
+ 0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
+ 0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
+ 0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
+ 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
+ 0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
+ 0x38, 0x44, 0x44, 0x28, 0x7E, 0x00,
+ 0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
+ 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
+ 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
+ 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
+ 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
+ 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
+ 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
+ 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
+ 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
+ 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
+ 0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
+ 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
+ 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
+ 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
+ 0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
+ 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
+ 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
+ 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
+ 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
+ 0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
+ 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
+ 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
+ 0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
+ 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
+ 0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
+ 0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
+ 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
+ 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFF,
+ 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFE,
+ 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x01, 0x3E,
+ 0xE0, 0x80, 0x70, 0x0E, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x07, 0x3C, 0xE0,
+ 0x80, 0x78, 0x07, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFF,
+ 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFE,
+ 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x3E, 0xE0, 0x80, 0x70, 0x0E,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x07,
+ 0x3C, 0xE0, 0x80, 0x78, 0x07, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F,
+ 0x07, 0x1F, 0xFF, 0xFE, 0xF0, 0xC0,
+ 0xF8, 0xFF, 0xF7, 0x07, 0x07, 0x7F,
+ 0xFF, 0xFF, 0xF8, 0x00, 0xC0, 0x38,
+ 0x0C, 0x18, 0x60, 0x80, 0x00, 0x00,
+ 0x00, 0xF0, 0x0C, 0x04, 0xF4, 0x1C,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x80, 0xC0, 0xFC, 0xE6, 0xC3, 0xC1,
+ 0xC1, 0xC3, 0xE6, 0xFC, 0xC0, 0x80,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xF8, 0xFF, 0xF7, 0x07,
+ 0x07, 0x1F, 0xFF, 0xFE, 0xF0, 0xC0,
+ 0xF8, 0x3F, 0x8F, 0x0F, 0x3F, 0xFF,
+ 0xFF, 0xFE, 0x80, 0xF0, 0x0C, 0x04,
+ 0xF4, 0x1C, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x1F, 0x1F, 0x1F, 0x07, 0x00,
+ 0x00, 0x00, 0x00, 0x03, 0x1F, 0x1F,
+ 0x0F, 0x01, 0x03, 0x06, 0xF8, 0x00,
+ 0x07, 0x7F, 0x3F, 0x0E, 0xC1, 0x38,
+ 0x07, 0x0E, 0x70, 0x83, 0x1C, 0x60,
+ 0x1E, 0x03, 0xC0, 0x3E, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x3F, 0x7F, 0xFF, 0xFF, 0xF9, 0xC0,
+ 0xC0, 0xF9, 0xFF, 0xFF, 0x7F, 0x3F,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x1F, 0x1F, 0x1F, 0x07, 0x06,
+ 0xF8, 0x00, 0x00, 0x73, 0x3F, 0x0F,
+ 0xC1, 0x38, 0x07, 0x0F, 0x70, 0x83,
+ 0x07, 0x7F, 0x1F, 0x03, 0xC0, 0x3E,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+};
diff --git a/keyboards/mechwild/mokulua/info.json b/keyboards/mechwild/mokulua/info.json
index 9620a4ddda..0be62ecf80 100644
--- a/keyboards/mechwild/mokulua/info.json
+++ b/keyboards/mechwild/mokulua/info.json
@@ -3,11 +3,8 @@
"url": "https://mechwild.com",
"maintainer": "kylemccreery",
"layouts": {
- "LAYOUT_standard": {
+ "LAYOUT": {
"layout": [{"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":15.75, "y":0}, {"x":16.75, "y":0}, {"x":0.47, "y":1, "w":1.5}, {"x":1.97, "y":1}, {"x":15.5, "y":1}, {"x":16.5, "y":1, "w":1.5}, {"x":0.37, "y":2, "w":1.75}, {"x":2.12, "y":2}, {"x":15.85, "y":2}, {"x":16.85, "y":2, "w":1.75}, {"x":0.22, "y":3, "w":1.25}, {"x":1.47, "y":3}, {"x":2.47, "y":3}, {"x":9.43, "y":3}, {"x":15.5, "y":3}, {"x":16.5, "y":3}, {"x":17.5, "y":3, "w":1.25}, {"x":0.47, "y":4}, {"x":1.47, "y":4}, {"x":2.47, "y":4}, {"x":9.68, "y":4}, {"x":15.5, "y":4}, {"x":16.5, "y":4}, {"x":17.5, "y":4}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":0.5, "y":2.25}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":0.75, "y":3.25}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.57, "y":4.25}, {"x":1, "y":5.25, "w":1.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25, "w":1.5}, {"x":5.32, "y":5.25}, {"x":-1.5, "y":2}, {"x":-0.5, "y":2}, {"x":0.5, "y":2}, {"x":1.5, "y":2}, {"x":2.5, "y":2}, {"x":-1.0, "y":3}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":-1.75, "y":4}, {"x":-0.75, "y":4}, {"x":0.25, "y":4}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":-1.25, "y":5}, {"x":-0.25, "y":5}, {"x":0.75, "y":5}, {"x":1.75, "y":5}, {"x":-1.25, "y":6, "w":1.5}, {"x":0.25, "y":6, "w":1.5}, {"x":1.75, "y":6, "w":1.25}]
- },
- "LAYOUT_mirrored": {
- "layout": [{"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0.47, "y":1, "w":1.5}, {"x":1.97, "y":1}, {"x":15.78, "y":1}, {"x":16.78, "y":1, "w":1.5}, {"x":0.37, "y":2, "w":1.75}, {"x":2.12, "y":2}, {"x":15.63, "y":2}, {"x":16.63, "y":2, "w":1.75}, {"x":0.22, "y":3, "w":1.25}, {"x":1.47, "y":3}, {"x":2.47, "y":3}, {"x":9.43, "y":3}, {"x":15.28, "y":3}, {"x":16.28, "y":3}, {"x":17.28, "y":3, "w":1.25}, {"x":0.47, "y":4}, {"x":1.47, "y":4}, {"x":2.47, "y":4}, {"x":9.68, "y":4}, {"x":15.25, "y":4}, {"x":16.25, "y":4}, {"x":17.25, "y":4}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":0.5, "y":2.25}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":0.75, "y":3.25}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.57, "y":4.25}, {"x":1, "y":5.25, "w":1.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25, "w":1.5}, {"x":5.32, "y":5.25}, {"x":-1.0, "y":2}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":-1.5, "y":3}, {"x":-0.5, "y":3}, {"x":0.5, "y":3}, {"x":1.5, "y":3}, {"x":2.5, "y":3}, {"x":-1.75, "y":4}, {"x":-0.75, "y":4}, {"x":0.25, "y":4}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":-1.25, "y":5}, {"x":-0.25, "y":5}, {"x":0.75, "y":5}, {"x":1.75, "y":5}, {"x":-1.25, "y":6, "w":1.5}, {"x":0.25, "y":6, "w":1.5}, {"x":1.75, "y":6, "w":1.25}]
}
}
}
diff --git a/keyboards/mechwild/mokulua/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/keymaps/default/keymap.c
new file mode 100644
index 0000000000..69a16d090f
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/default/keymap.c
@@ -0,0 +1,46 @@
+// Copyright 2022 Kyle McCreery (@kylemccreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+#define FN1_SPC LT(1, KC_SPC)
+#define FN2_SPC LT(2, KC_SPC)
+
+// Defines names for use in layer keycodes and the keymap
+enum layer_names {
+ _BASE,
+ _FN1,
+ _FN2,
+ _FN3
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_BASE] = LAYOUT(
+ KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
+ MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
+ KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ [_FN1] = LAYOUT(
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
+ ),
+ [_FN2] = LAYOUT(
+ _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_FN3] = LAYOUT(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/mechwild/mokulua/keymaps/default/readme.md b/keyboards/mechwild/mokulua/keymaps/default/readme.md
new file mode 100644
index 0000000000..81569df142
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/default/readme.md
@@ -0,0 +1 @@
+# The default keymap for Mokulua using a standard right-half
diff --git a/keyboards/mechwild/mokulua/keymaps/silly/config.h b/keyboards/mechwild/mokulua/keymaps/silly/config.h
new file mode 100644
index 0000000000..1e0e3ac5eb
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/silly/config.h
@@ -0,0 +1,7 @@
+// Copyright 2022 Kyle McCreery (@kylemccreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include "config_common.h"
+#define RGBLIGHT_LAYERS
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/keymaps/silly/keymap.c b/keyboards/mechwild/mokulua/keymaps/silly/keymap.c
new file mode 100644
index 0000000000..9463f162c0
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/silly/keymap.c
@@ -0,0 +1,128 @@
+// Copyright 2022 Kyle McCreery (@kylemccreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+#define FN1_SPC LT(1, KC_SPC)
+#define FN2_SPC LT(2, KC_SPC)
+#define HSV_SILLY_PURPLE 180, 255, 255
+
+// Defines names for use in layer keycodes and the keymap
+enum layer_names {
+ _BASE,
+ _FN1,
+ _FN2,
+ _RS3
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_BASE] = LAYOUT(
+ KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
+ MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
+ KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, TG(_RS3), KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ [_FN1] = LAYOUT(
+ KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
+ ),
+ [_FN2] = LAYOUT(
+ _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_RS3] = LAYOUT(
+ KC_PAST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_PSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_PPLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_PMNS, _______, _______, _______, _______, _______, _______, TG(_RS3), _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_HOME, KC_END, KC_PGUP, KC_K, KC_L, KC_M, KC_PGDN, _______, KC_F1, KC_F2, KC_F3, _______, _______, _______
+ )
+};
+
+#ifdef OLED_ENABLE
+ static void render_logo(void) { // Render MechWild "MW" Logo
+ static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00};
+ static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00};
+ static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00};
+ static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00};
+ oled_set_cursor(0,0);
+ oled_write_P(logo_1, false);
+ oled_set_cursor(0,1);
+ oled_write_P(logo_2, false);
+ oled_set_cursor(0,2);
+ oled_write_P(logo_3, false);
+ oled_set_cursor(0,3);
+ oled_write_P(logo_4, false);
+ }
+ bool oled_task_user(void) {
+ render_logo();
+ oled_set_cursor(0,6);
+
+ oled_write_ln_P(PSTR("Layer"), false);
+
+ switch (get_highest_layer(layer_state)) {
+ case 0:
+ oled_write_ln_P(PSTR("Base"), false);
+ break;
+ case 1:
+ oled_write_ln_P(PSTR("FN 1"), false);
+ break;
+ case 2:
+ oled_write_ln_P(PSTR("FN 2"), false);
+ break;
+ case 3:
+ oled_write_ln_P(PSTR("RS3"), false);
+ break;
+ default:
+ oled_write_ln_P(PSTR("Undef"), false);
+ }
+ oled_write_ln_P(PSTR(""), false);
+ // Host Keyboard LED Status
+ led_t led_state = host_keyboard_led_state();
+ oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
+ oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
+ oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
+ return false;
+ }
+#endif
+
+#ifdef RGBLIGHT_ENABLE
+ // Optional RGB Light Mapping Zones {LED Posiiton, Number of LEDs, Colour}
+ const rgblight_segment_t PROGMEM _rgb_fn1[] = RGBLIGHT_LAYER_SEGMENTS(
+ {4, 3, HSV_GREEN},
+ {12, 3, HSV_GREEN}
+ );
+ // Light LEDs 9 & 10 in cyan when keyboard layer 1 is active
+ const rgblight_segment_t PROGMEM _rgb_fn2[] = RGBLIGHT_LAYER_SEGMENTS(
+ {4, 3, HSV_GREEN},
+ {12, 3, HSV_GREEN}
+ );
+ const rgblight_segment_t PROGMEM _rgb_rs3[] = RGBLIGHT_LAYER_SEGMENTS(
+ {0, 16, HSV_SILLY_PURPLE}
+ );
+ const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST(
+ _rgb_fn1,
+ _rgb_fn2,
+ _rgb_rs3
+ );
+ layer_state_t layer_state_set_user(layer_state_t state) {
+ rgblight_set_layer_state(0, layer_state_cmp(state, _FN1));
+ rgblight_set_layer_state(1, layer_state_cmp(state, _FN2));
+ rgblight_set_layer_state(2, layer_state_cmp(state, _RS3));
+ return state;
+ }
+#endif // RGBLIGHT_ENABLE
+
+void keyboard_post_init_user(void) {
+ // Enable the LED layers
+ #ifdef RGBLIGHT_ENABLE
+ rgblight_layers = _rgb_layers;
+ #endif // RGBLIGHT_ENABLE
+ }
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/keymaps/silly/readme.md b/keyboards/mechwild/mokulua/keymaps/silly/readme.md
new file mode 100644
index 0000000000..4659a3aaeb
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/silly/readme.md
@@ -0,0 +1 @@
+# A keymap customized for use by Silly. Makes use of RGB Layer indication and a remapped layer for use in specific video games.
diff --git a/keyboards/mechwild/mokulua/keymaps/silly/rules.mk b/keyboards/mechwild/mokulua/keymaps/silly/rules.mk
new file mode 100644
index 0000000000..36b7ba9cbc
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/silly/rules.mk
@@ -0,0 +1,2 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes
diff --git a/keyboards/mechwild/mokulua/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/keymaps/via/keymap.c
new file mode 100644
index 0000000000..69a16d090f
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/via/keymap.c
@@ -0,0 +1,46 @@
+// Copyright 2022 Kyle McCreery (@kylemccreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+#define FN1_SPC LT(1, KC_SPC)
+#define FN2_SPC LT(2, KC_SPC)
+
+// Defines names for use in layer keycodes and the keymap
+enum layer_names {
+ _BASE,
+ _FN1,
+ _FN2,
+ _FN3
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_BASE] = LAYOUT(
+ KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
+ MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
+ KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ [_FN1] = LAYOUT(
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
+ ),
+ [_FN2] = LAYOUT(
+ _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+ [_FN3] = LAYOUT(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/mechwild/mokulua/keymaps/via/readme.md b/keyboards/mechwild/mokulua/keymaps/via/readme.md
new file mode 100644
index 0000000000..4f47e50e88
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/via/readme.md
@@ -0,0 +1 @@
+# The VIA keymap for Mokulua using a standard right-half
diff --git a/keyboards/mechwild/mokulua/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/keymaps/via/rules.mk
new file mode 100644
index 0000000000..36b7ba9cbc
--- /dev/null
+++ b/keyboards/mechwild/mokulua/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes
diff --git a/keyboards/mechwild/mokulua/lib/mokulua.c b/keyboards/mechwild/mokulua/lib/mokulua.c
deleted file mode 100644
index d2a7720117..0000000000
--- a/keyboards/mechwild/mokulua/lib/mokulua.c
+++ /dev/null
@@ -1,244 +0,0 @@
-/* Copyright 2020 Kyle McCreery
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#include "progmem.h"
-
-const unsigned char font[] PROGMEM = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
- 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
- 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
- 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
- 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
- 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
- 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
- 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
- 0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
- 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
- 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
- 0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
- 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
- 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
- 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
- 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
- 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
- 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
- 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
- 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
- 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
- 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
- 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
- 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
- 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
- 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
- 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
- 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
- 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
- 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
- 0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
- 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
- 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
- 0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
- 0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
- 0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
- 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
- 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
- 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
- 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
- 0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
- 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
- 0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
- 0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
- 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
- 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
- 0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
- 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
- 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
- 0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
- 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
- 0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
- 0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
- 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
- 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
- 0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
- 0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
- 0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
- 0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
- 0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
- 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
- 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
- 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
- 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
- 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
- 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
- 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
- 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
- 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
- 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
- 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
- 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
- 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
- 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
- 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
- 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
- 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
- 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
- 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
- 0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
- 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
- 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
- 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
- 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
- 0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
- 0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
- 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
- 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
- 0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
- 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
- 0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
- 0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
- 0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
- 0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
- 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
- 0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
- 0x38, 0x44, 0x44, 0x28, 0x7E, 0x00,
- 0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
- 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
- 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
- 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
- 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
- 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
- 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
- 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
- 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
- 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
- 0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
- 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
- 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
- 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
- 0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
- 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
- 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
- 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
- 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
- 0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
- 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
- 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
- 0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
- 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
- 0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
- 0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
- 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
- 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFF,
- 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFE,
- 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x3E,
- 0xE0, 0x80, 0x70, 0x0E, 0x01, 0x00,
- 0x00, 0x00, 0x00, 0x07, 0x3C, 0xE0,
- 0x80, 0x78, 0x07, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFF,
- 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFE,
- 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x01, 0x3E, 0xE0, 0x80, 0x70, 0x0E,
- 0x01, 0x00, 0x00, 0x00, 0x00, 0x07,
- 0x3C, 0xE0, 0x80, 0x78, 0x07, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F,
- 0x07, 0x1F, 0xFF, 0xFE, 0xF0, 0xC0,
- 0xF8, 0xFF, 0xF7, 0x07, 0x07, 0x7F,
- 0xFF, 0xFF, 0xF8, 0x00, 0xC0, 0x38,
- 0x0C, 0x18, 0x60, 0x80, 0x00, 0x00,
- 0x00, 0xF0, 0x0C, 0x04, 0xF4, 0x1C,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x80, 0xC0, 0xFC, 0xE6, 0xC3, 0xC1,
- 0xC1, 0xC3, 0xE6, 0xFC, 0xC0, 0x80,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xF8, 0xFF, 0xF7, 0x07,
- 0x07, 0x1F, 0xFF, 0xFE, 0xF0, 0xC0,
- 0xF8, 0x3F, 0x8F, 0x0F, 0x3F, 0xFF,
- 0xFF, 0xFE, 0x80, 0xF0, 0x0C, 0x04,
- 0xF4, 0x1C, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x1F, 0x1F, 0x1F, 0x07, 0x00,
- 0x00, 0x00, 0x00, 0x03, 0x1F, 0x1F,
- 0x0F, 0x01, 0x03, 0x06, 0xF8, 0x00,
- 0x07, 0x7F, 0x3F, 0x0E, 0xC1, 0x38,
- 0x07, 0x0E, 0x70, 0x83, 0x1C, 0x60,
- 0x1E, 0x03, 0xC0, 0x3E, 0x01, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3F, 0x7F, 0xFF, 0xFF, 0xF9, 0xC0,
- 0xC0, 0xF9, 0xFF, 0xFF, 0x7F, 0x3F,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x1F, 0x1F, 0x1F, 0x07, 0x06,
- 0xF8, 0x00, 0x00, 0x73, 0x3F, 0x0F,
- 0xC1, 0x38, 0x07, 0x0F, 0x70, 0x83,
- 0x07, 0x7F, 0x1F, 0x03, 0xC0, 0x3E,
- 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
diff --git a/keyboards/mechwild/mokulua/mirrored/config.h b/keyboards/mechwild/mokulua/mirrored/config.h
deleted file mode 100644
index d5887c7ff5..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/config.h
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include "config_common.h"
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x6D77 // mw = "MechWild"
-#define PRODUCT_ID 0x170C
-#define DEVICE_VER 0x0103
-#define MANUFACTURER MechWild
-#define PRODUCT Mokulua
-
-/* Key matrix size */
-#define MATRIX_ROWS 12
-#define MATRIX_COLS 6
-
-/* Key matrix pins */
-#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 }
-#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 }
-#define UNUSED_PINS
-
-/* Encoder pins */
-#define ENCODERS_PAD_A { D2 }
-#define ENCODERS_PAD_B { B2 }
-
-/* Encoder resolution */
-#define ENCODER_RESOLUTION 4
-#define TAP_CODE_DELAY 10
-
-/* COL2ROW, ROW2COL */
-#define DIODE_DIRECTION COL2ROW
-
-#define OLED_FONT_H "keyboards/mechwild/mokulua/lib/mokulua.c"
-
-/*
- * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
- */
-#define SOFT_SERIAL_PIN D3
-#define MASTER_LEFT
-//#define MASTER_RIGHT
-#define RGBLIGHT_SPLIT
-#define RGBLED_SPLIT { 8, 8 }
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-#define SPLIT_OLED_ENABLE
-
-/* RGB options */
-#define RGB_DI_PIN B6
-#ifdef RGB_DI_PIN
-# define RGBLED_NUM 16
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
-# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
-/*== all animations enable ==*/
-//# define RGBLIGHT_ANIMATIONS
-/*== or choose animations ==*/
-//# define RGBLIGHT_EFFECT_BREATHING
-# define RGBLIGHT_EFFECT_RAINBOW_MOOD
-# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-//# define RGBLIGHT_EFFECT_SNAKE
-//# define RGBLIGHT_EFFECT_KNIGHT
-//# define RGBLIGHT_EFFECT_CHRISTMAS
-//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-//# define RGBLIGHT_EFFECT_RGB_TEST
-//# define RGBLIGHT_EFFECT_ALTERNATING
-/*== customize breathing effect ==*/
-/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
-//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
-/*==== use exp() and sin() ====*/
-//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
-//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
-#endif
-
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-//#define MATRIX_HAS_GHOST
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
-
-/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
- * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
- */
-//#define GRAVE_ESC_CTRL_OVERRIDE
-
-
-/* Bootmagic Lite key configuration */
-#define BOOTMAGIC_LITE_ROW 0
-#define BOOTMAGIC_LITE_COLUMN 0
diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c
deleted file mode 100644
index 330c9320a0..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-#define FN1_SPC LT(1, KC_SPC)
-#define FN2_SPC LT(2, KC_SPC)
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = 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_BSPC, _______,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS,
- MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
- KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_FN2] = LAYOUT(
- _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FN3] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md b/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md
deleted file mode 100644
index 727105dcba..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default keymap for Mokulua using a mirrored right-half
diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c
deleted file mode 100644
index 330c9320a0..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-#define FN1_SPC LT(1, KC_SPC)
-#define FN2_SPC LT(2, KC_SPC)
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = 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_BSPC, _______,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS,
- MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
- KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_FN2] = LAYOUT(
- _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FN3] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md b/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md
deleted file mode 100644
index 37aca6eac7..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The VIA keymap for Mokulua using a mirrored right-half
diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk
deleted file mode 100644
index 36b7ba9cbc..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-VIA_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/mechwild/mokulua/mirrored/mirrored.c b/keyboards/mechwild/mokulua/mirrored/mirrored.c
deleted file mode 100644
index 777c146d64..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/mirrored.c
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright 2022 Kyle McCreery (@Kyle McCreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "standard.h"
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_kb(uint8_t index, bool clockwise) {
- if (!encoder_update_user(index, clockwise)) { return false; }
- switch (index) {
- case 0:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- case 1:
- if (clockwise) {
- tap_code(KC_PGUP);
- } else {
- tap_code(KC_PGDN);
- }
- break;
-
- }
- return true;
-}
-#endif
-
-#ifdef OLED_ENABLE
- oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_270; // flips the display 270 degrees
- }
-
- static void render_logo(void) { // Render MechWild "MW" Logo
- static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00};
- static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00};
- static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00};
- static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00};
- oled_set_cursor(0,0);
- oled_write_P(logo_1, false);
- oled_set_cursor(0,1);
- oled_write_P(logo_2, false);
- oled_set_cursor(0,2);
- oled_write_P(logo_3, false);
- oled_set_cursor(0,3);
- oled_write_P(logo_4, false);
- }
- bool oled_task_kb(void) {
- if (!oled_task_user()) {
- return false;
- }
- render_logo();
- oled_set_cursor(0,6);
-
- oled_write_ln_P(PSTR("Layer"), false);
-
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_ln_P(PSTR("Base"), false);
- break;
- case 1:
- oled_write_ln_P(PSTR("FN 1"), false);
- break;
- case 2:
- oled_write_ln_P(PSTR("FN 2"), false);
- break;
- case 3:
- oled_write_ln_P(PSTR("FN 3"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undef"), false);
- }
- oled_write_ln_P(PSTR(""), false);
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
- return false;
- }
-#endif
diff --git a/keyboards/mechwild/mokulua/mirrored/mirrored.h b/keyboards/mechwild/mokulua/mirrored/mirrored.h
deleted file mode 100644
index 5b7dd29c25..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/mirrored.h
+++ /dev/null
@@ -1,53 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include "quantum.h"
-
-#define ___ KC_NO
-
-#define LAYOUT_mirrored( \
- L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
- L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
- L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
- L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \
- L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
-) { \
- { L00, L01, L02, L03, L04, L05 }, \
- { L10, L11, L12, L13, L14, L15 }, \
- { L20, L21, L22, L23, L24, L25 }, \
- { L30, L31, L32, L33, L34, L35 }, \
- { L40, L41, L42, L43, L44, L45 }, \
- { L46, L36, L37, L26, L16, L06 }, \
- { R06, R05, R04, R03, R02, R01 }, \
- { R16, R15, R14, R13, R12, R11 }, \
- { R26, R25, R24, R23, R22, R21 }, \
- { R37, R36, R35, R34, R33, R32 }, \
- { R46, R45, R44, R43, R42, R41 }, \
- { R40, R31, R30, R20, R10, R00 } \
-}
-
-#define LAYOUT_standard( \
- L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
- L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \
- L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
- L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \
- L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
-) { \
- { L00, L01, L02, L03, L04, L05 }, \
- { L10, L11, L12, L13, L14, L15 }, \
- { L20, L21, L22, L23, L24, L25 }, \
- { L30, L31, L32, L33, L34, L35 }, \
- { L40, L41, L42, L43, L44, L45 }, \
- { L46, L36, L37, L26, L16, L06 }, \
- { R01, R02, R03, R04, R05, R06 }, \
- { R11, R12, R13, R14, R15, R16 }, \
- { R21, R22, R23, R24, R25, R26 }, \
- { R32, R33, R34, R35, R36, R37 }, \
- { R41, R42, R43, R44, R45, R46 }, \
- { R00, R20, R31, R30, R40, ___ } \
-}
-
-
-#define LAYOUT LAYOUT_mirrored
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/mirrored/rules.mk b/keyboards/mechwild/mokulua/mirrored/rules.mk
deleted file mode 100644
index 5aae5c7c76..0000000000
--- a/keyboards/mechwild/mokulua/mirrored/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = caterina
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable encoder
-OLED_ENABLE = yes # Enable OLED Screen
-OLED_DRIVER = SSD1306 # Define OLED Driver
-SPLIT_KEYBOARD = yes # Define split functionality
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/mokulua.c b/keyboards/mechwild/mokulua/mokulua.c
new file mode 100644
index 0000000000..57c800ef89
--- /dev/null
+++ b/keyboards/mechwild/mokulua/mokulua.c
@@ -0,0 +1,82 @@
+// Copyright 2022 Kyle McCreery (@Kyle McCreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "mokulua.h"
+
+#ifdef ENCODER_ENABLE
+bool encoder_update_kb(uint8_t index, bool clockwise) {
+ if (!encoder_update_user(index, clockwise)) { return false; }
+ switch (index) {
+ case 0:
+ if (clockwise) {
+ tap_code(KC_VOLU);
+ } else {
+ tap_code(KC_VOLD);
+ }
+ break;
+ case 1:
+ if (clockwise) {
+ tap_code(KC_PGUP);
+ } else {
+ tap_code(KC_PGDN);
+ }
+ break;
+
+ }
+ return true;
+}
+#endif
+
+#ifdef OLED_ENABLE
+ oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
+ return OLED_ROTATION_270; // flips the display 270 degrees
+ }
+
+ static void render_logo(void) { // Render MechWild "MW" Logo
+ static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00};
+ static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00};
+ static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00};
+ static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00};
+ oled_set_cursor(0,0);
+ oled_write_P(logo_1, false);
+ oled_set_cursor(0,1);
+ oled_write_P(logo_2, false);
+ oled_set_cursor(0,2);
+ oled_write_P(logo_3, false);
+ oled_set_cursor(0,3);
+ oled_write_P(logo_4, false);
+ }
+ bool oled_task_kb(void) {
+ if (!oled_task_user()) {
+ return false;
+ }
+ render_logo();
+ oled_set_cursor(0,6);
+
+ oled_write_ln_P(PSTR("Layer"), false);
+
+ switch (get_highest_layer(layer_state)) {
+ case 0:
+ oled_write_ln_P(PSTR("Base"), false);
+ break;
+ case 1:
+ oled_write_ln_P(PSTR("FN 1"), false);
+ break;
+ case 2:
+ oled_write_ln_P(PSTR("FN 2"), false);
+ break;
+ case 3:
+ oled_write_ln_P(PSTR("FN 3"), false);
+ break;
+ default:
+ oled_write_ln_P(PSTR("Undef"), false);
+ }
+ oled_write_ln_P(PSTR(""), false);
+ // Host Keyboard LED Status
+ led_t led_state = host_keyboard_led_state();
+ oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
+ oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
+ oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
+ return false;
+ }
+#endif
diff --git a/keyboards/mechwild/mokulua/mokulua.h b/keyboards/mechwild/mokulua/mokulua.h
new file mode 100644
index 0000000000..95ea1e3709
--- /dev/null
+++ b/keyboards/mechwild/mokulua/mokulua.h
@@ -0,0 +1,29 @@
+// Copyright 2022 Kyle McCreery (@kylemccreery)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include "quantum.h"
+
+#define ___ KC_NO
+
+#define LAYOUT( \
+ L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
+ L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \
+ L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
+ L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \
+ L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
+) { \
+ { L00, L01, L02, L03, L04, L05 }, \
+ { L10, L11, L12, L13, L14, L15 }, \
+ { L20, L21, L22, L23, L24, L25 }, \
+ { L30, L31, L32, L33, L34, L35 }, \
+ { L40, L41, L42, L43, L44, L45 }, \
+ { L46, L36, L37, L26, L16, L06 }, \
+ { R01, R02, R03, R04, R05, R06 }, \
+ { R11, R12, R13, R14, R15, R16 }, \
+ { R21, R22, R23, R24, R25, R26 }, \
+ { R32, R33, R34, R35, R36, R37 }, \
+ { R41, R42, R43, R44, R45, R46 }, \
+ { R00, R20, R31, R30, R40, ___ } \
+}
diff --git a/keyboards/mechwild/mokulua/rules.mk b/keyboards/mechwild/mokulua/rules.mk
index 3a87a143e5..17eb654430 100644
--- a/keyboards/mechwild/mokulua/rules.mk
+++ b/keyboards/mechwild/mokulua/rules.mk
@@ -1 +1,22 @@
-DEFAULT_FOLDER = mechwild/mokulua/standard
\ No newline at end of file
+# MCU name
+MCU = atmega32u4
+
+# Bootloader selection
+BOOTLOADER = caterina
+
+# Build Options
+# change yes to no to disable
+#
+BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
+MOUSEKEY_ENABLE = yes # Mouse keys
+EXTRAKEY_ENABLE = yes # Audio control and System control
+CONSOLE_ENABLE = no # Console for debug
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = no # Enable N-Key Rollover
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
+AUDIO_ENABLE = no # Audio output
+ENCODER_ENABLE = yes # Enable encoder
+OLED_ENABLE = yes # Enable OLED Screen
+OLED_DRIVER = SSD1306 # Define OLED Driver
+SPLIT_KEYBOARD = yes # Define split functionality
diff --git a/keyboards/mechwild/mokulua/standard/config.h b/keyboards/mechwild/mokulua/standard/config.h
deleted file mode 100644
index be6495048c..0000000000
--- a/keyboards/mechwild/mokulua/standard/config.h
+++ /dev/null
@@ -1,135 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include "config_common.h"
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x6D77 // mw = "MechWild"
-#define PRODUCT_ID 0x170B
-#define DEVICE_VER 0x0103
-#define MANUFACTURER MechWild
-#define PRODUCT Mokulua
-
-/* Key matrix size */
-#define MATRIX_ROWS 12
-#define MATRIX_COLS 6
-
-/* Key matrix pins */
-#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 }
-#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 }
-#define UNUSED_PINS
-
-/* Encoder pins */
-#define ENCODERS_PAD_A { D2 }
-#define ENCODERS_PAD_B { B2 }
-
-/* Encoder resolution */
-#define ENCODER_RESOLUTION 4
-#define TAP_CODE_DELAY 10
-
-/* COL2ROW, ROW2COL */
-#define DIODE_DIRECTION COL2ROW
-
-#define OLED_FONT_H "keyboards/mechwild/mokulua/lib/mokulua.c"
-
-/*
- * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
- */
-#define SOFT_SERIAL_PIN D3
-#define MASTER_LEFT
-//#define MASTER_RIGHT
-#define RGBLIGHT_SPLIT
-#define RGBLED_SPLIT { 8, 8 }
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-#define SPLIT_OLED_ENABLE
-
-/* RGB options */
-#define RGB_DI_PIN B6
-#ifdef RGB_DI_PIN
-# define RGBLED_NUM 16
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
-# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
-/*== all animations enable ==*/
-//# define RGBLIGHT_ANIMATIONS
-/*== or choose animations ==*/
-//# define RGBLIGHT_EFFECT_BREATHING
-# define RGBLIGHT_EFFECT_RAINBOW_MOOD
-# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-//# define RGBLIGHT_EFFECT_SNAKE
-//# define RGBLIGHT_EFFECT_KNIGHT
-//# define RGBLIGHT_EFFECT_CHRISTMAS
-//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-//# define RGBLIGHT_EFFECT_RGB_TEST
-//# define RGBLIGHT_EFFECT_ALTERNATING
-/*== customize breathing effect ==*/
-/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
-//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
-/*==== use exp() and sin() ====*/
-//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
-//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
-#endif
-
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-//#define MATRIX_HAS_GHOST
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
-
-/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
- * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
- */
-//#define GRAVE_ESC_CTRL_OVERRIDE
-
-/*
- * Force NKRO
- *
- * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
- * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
- * makefile for this to work.)
- *
- * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
- * until the next keyboard reset.
- *
- * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
- * fully operational during normal computer usage.
- *
- * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
- * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
- * bootmagic, NKRO mode will always be enabled until it is toggled again during a
- * power-up.
- *
- */
-//#define FORCE_NKRO
-
-/*
- * Feature disable options
- * These options are also useful to firmware size reduction.
- */
-
-/* disable debug print */
-//#define NO_DEBUG
-
-/* disable print */
-//#define NO_PRINT
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
-
-
-/* Bootmagic Lite key configuration */
-#define BOOTMAGIC_LITE_ROW 0
-#define BOOTMAGIC_LITE_COLUMN 0
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c
deleted file mode 100644
index 724dfee41c..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-#define FN1_SPC LT(1, KC_SPC)
-#define FN2_SPC LT(2, KC_SPC)
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT(
- KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
- KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_FN2] = LAYOUT(
- _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FN3] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md b/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md
deleted file mode 100644
index 81569df142..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default keymap for Mokulua using a standard right-half
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h b/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h
deleted file mode 100644
index 1e0e3ac5eb..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include "config_common.h"
-#define RGBLIGHT_LAYERS
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c b/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c
deleted file mode 100644
index 9463f162c0..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c
+++ /dev/null
@@ -1,128 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-#define FN1_SPC LT(1, KC_SPC)
-#define FN2_SPC LT(2, KC_SPC)
-#define HSV_SILLY_PURPLE 180, 255, 255
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _BASE,
- _FN1,
- _FN2,
- _RS3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT(
- KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
- KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, TG(_RS3), KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1] = LAYOUT(
- KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_FN2] = LAYOUT(
- _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_RS3] = LAYOUT(
- KC_PAST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_PSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_PPLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_PMNS, _______, _______, _______, _______, _______, _______, TG(_RS3), _______, _______, _______, _______, _______, _______, _______, _______,
- KC_HOME, KC_END, KC_PGUP, KC_K, KC_L, KC_M, KC_PGDN, _______, KC_F1, KC_F2, KC_F3, _______, _______, _______
- )
-};
-
-#ifdef OLED_ENABLE
- static void render_logo(void) { // Render MechWild "MW" Logo
- static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00};
- static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00};
- static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00};
- static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00};
- oled_set_cursor(0,0);
- oled_write_P(logo_1, false);
- oled_set_cursor(0,1);
- oled_write_P(logo_2, false);
- oled_set_cursor(0,2);
- oled_write_P(logo_3, false);
- oled_set_cursor(0,3);
- oled_write_P(logo_4, false);
- }
- bool oled_task_user(void) {
- render_logo();
- oled_set_cursor(0,6);
-
- oled_write_ln_P(PSTR("Layer"), false);
-
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_ln_P(PSTR("Base"), false);
- break;
- case 1:
- oled_write_ln_P(PSTR("FN 1"), false);
- break;
- case 2:
- oled_write_ln_P(PSTR("FN 2"), false);
- break;
- case 3:
- oled_write_ln_P(PSTR("RS3"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undef"), false);
- }
- oled_write_ln_P(PSTR(""), false);
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
- return false;
- }
-#endif
-
-#ifdef RGBLIGHT_ENABLE
- // Optional RGB Light Mapping Zones {LED Posiiton, Number of LEDs, Colour}
- const rgblight_segment_t PROGMEM _rgb_fn1[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 3, HSV_GREEN},
- {12, 3, HSV_GREEN}
- );
- // Light LEDs 9 & 10 in cyan when keyboard layer 1 is active
- const rgblight_segment_t PROGMEM _rgb_fn2[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 3, HSV_GREEN},
- {12, 3, HSV_GREEN}
- );
- const rgblight_segment_t PROGMEM _rgb_rs3[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 16, HSV_SILLY_PURPLE}
- );
- const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- _rgb_fn1,
- _rgb_fn2,
- _rgb_rs3
- );
- layer_state_t layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(0, layer_state_cmp(state, _FN1));
- rgblight_set_layer_state(1, layer_state_cmp(state, _FN2));
- rgblight_set_layer_state(2, layer_state_cmp(state, _RS3));
- return state;
- }
-#endif // RGBLIGHT_ENABLE
-
-void keyboard_post_init_user(void) {
- // Enable the LED layers
- #ifdef RGBLIGHT_ENABLE
- rgblight_layers = _rgb_layers;
- #endif // RGBLIGHT_ENABLE
- }
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md b/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md
deleted file mode 100644
index 4659a3aaeb..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# A keymap customized for use by Silly. Makes use of RGB Layer indication and a remapped layer for use in specific video games.
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk b/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk
deleted file mode 100644
index 36b7ba9cbc..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-VIA_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c
deleted file mode 100644
index 724dfee41c..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-#define FN1_SPC LT(1, KC_SPC)
-#define FN2_SPC LT(2, KC_SPC)
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT(
- KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
- KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_FN2] = LAYOUT(
- _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FN3] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md b/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md
deleted file mode 100644
index 4f47e50e88..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The VIA keymap for Mokulua using a standard right-half
diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk
deleted file mode 100644
index 36b7ba9cbc..0000000000
--- a/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-VIA_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/mechwild/mokulua/standard/rules.mk b/keyboards/mechwild/mokulua/standard/rules.mk
deleted file mode 100644
index 5aae5c7c76..0000000000
--- a/keyboards/mechwild/mokulua/standard/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = caterina
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable encoder
-OLED_ENABLE = yes # Enable OLED Screen
-OLED_DRIVER = SSD1306 # Define OLED Driver
-SPLIT_KEYBOARD = yes # Define split functionality
\ No newline at end of file
diff --git a/keyboards/mechwild/mokulua/standard/standard.c b/keyboards/mechwild/mokulua/standard/standard.c
deleted file mode 100644
index 777c146d64..0000000000
--- a/keyboards/mechwild/mokulua/standard/standard.c
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright 2022 Kyle McCreery (@Kyle McCreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "standard.h"
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_kb(uint8_t index, bool clockwise) {
- if (!encoder_update_user(index, clockwise)) { return false; }
- switch (index) {
- case 0:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- case 1:
- if (clockwise) {
- tap_code(KC_PGUP);
- } else {
- tap_code(KC_PGDN);
- }
- break;
-
- }
- return true;
-}
-#endif
-
-#ifdef OLED_ENABLE
- oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_270; // flips the display 270 degrees
- }
-
- static void render_logo(void) { // Render MechWild "MW" Logo
- static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00};
- static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00};
- static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00};
- static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00};
- oled_set_cursor(0,0);
- oled_write_P(logo_1, false);
- oled_set_cursor(0,1);
- oled_write_P(logo_2, false);
- oled_set_cursor(0,2);
- oled_write_P(logo_3, false);
- oled_set_cursor(0,3);
- oled_write_P(logo_4, false);
- }
- bool oled_task_kb(void) {
- if (!oled_task_user()) {
- return false;
- }
- render_logo();
- oled_set_cursor(0,6);
-
- oled_write_ln_P(PSTR("Layer"), false);
-
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_ln_P(PSTR("Base"), false);
- break;
- case 1:
- oled_write_ln_P(PSTR("FN 1"), false);
- break;
- case 2:
- oled_write_ln_P(PSTR("FN 2"), false);
- break;
- case 3:
- oled_write_ln_P(PSTR("FN 3"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undef"), false);
- }
- oled_write_ln_P(PSTR(""), false);
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
- return false;
- }
-#endif
diff --git a/keyboards/mechwild/mokulua/standard/standard.h b/keyboards/mechwild/mokulua/standard/standard.h
deleted file mode 100644
index a25fe3eff4..0000000000
--- a/keyboards/mechwild/mokulua/standard/standard.h
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright 2022 Kyle McCreery (@kylemccreery)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include "quantum.h"
-
-#define ___ KC_NO
-
-#define LAYOUT_mirrored( \
- L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
- L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
- L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
- L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \
- L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
-) { \
- { L00, L01, L02, L03, L04, L05 }, \
- { L10, L11, L12, L13, L14, L15 }, \
- { L20, L21, L22, L23, L24, L25 }, \
- { L30, L31, L32, L33, L34, L35 }, \
- { L40, L41, L42, L43, L44, L45 }, \
- { L46, L36, L37, L26, L16, L06 }, \
- { R06, R05, R04, R03, R02, R01 }, \
- { R16, R15, R14, R13, R12, R11 }, \
- { R26, R25, R24, R23, R22, R21 }, \
- { R37, R36, R35, R34, R33, R32 }, \
- { R46, R45, R44, R43, R42, R41 }, \
- { R40, R31, R30, R20, R10, R00 } \
-}
-
-#define LAYOUT_standard( \
- L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
- L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \
- L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
- L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \
- L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
-) { \
- { L00, L01, L02, L03, L04, L05 }, \
- { L10, L11, L12, L13, L14, L15 }, \
- { L20, L21, L22, L23, L24, L25 }, \
- { L30, L31, L32, L33, L34, L35 }, \
- { L40, L41, L42, L43, L44, L45 }, \
- { L46, L36, L37, L26, L16, L06 }, \
- { R01, R02, R03, R04, R05, R06 }, \
- { R11, R12, R13, R14, R15, R16 }, \
- { R21, R22, R23, R24, R25, R26 }, \
- { R32, R33, R34, R35, R36, R37 }, \
- { R41, R42, R43, R44, R45, R46 }, \
- { R00, R20, R31, R30, R40, ___ } \
-}
-
-#define LAYOUT LAYOUT_standard
--
cgit v1.2.3