From 937a1e7840c3333b41b05dac6b8273588bed467c Mon Sep 17 00:00:00 2001 From: Wasteland Fluttershy Date: Sat, 17 May 2025 06:28:55 +0300 Subject: [PATCH] Magic force/mf17 (#887) * initial port * fix layout * expand features * tweaks --- .../magic_force/mf17/keymaps/vial/config.h | 12 ++++++++ .../magic_force/mf17/keymaps/vial/keymap.c | 30 +++++++++++++++++++ .../magic_force/mf17/keymaps/vial/rules.mk | 16 ++++++++++ .../magic_force/mf17/keymaps/vial/vial.json | 13 ++++++++ 4 files changed, 71 insertions(+) create mode 100644 keyboards/magic_force/mf17/keymaps/vial/config.h create mode 100644 keyboards/magic_force/mf17/keymaps/vial/keymap.c create mode 100644 keyboards/magic_force/mf17/keymaps/vial/rules.mk create mode 100644 keyboards/magic_force/mf17/keymaps/vial/vial.json diff --git a/keyboards/magic_force/mf17/keymaps/vial/config.h b/keyboards/magic_force/mf17/keymaps/vial/config.h new file mode 100644 index 0000000000..1a84833ccb --- /dev/null +++ b/keyboards/magic_force/mf17/keymaps/vial/config.h @@ -0,0 +1,12 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0xC2, 0x3A, 0x2B, 0xF5, 0xE0, 0xD3, 0x55, 0xE7} +#define VIAL_UNLOCK_COMBO_ROWS {0, 0} +#define VIAL_UNLOCK_COMBO_COLS {0, 1} + +#define DYNAMIC_KEYMAP_LAYER_COUNT 6 +#define VIAL_MACRO_ENTRIES 64 +#define DYNAMIC_KEYMAP_MACRO_COUNT 64 +#define VIAL_COMBO_ENTRIES 32 +#define VIAL_TAP_DANCE_ENTRIES 32 +#define DYNAMIC_KEYMAP_KEY_OVERRIDE_COUNT 0 diff --git a/keyboards/magic_force/mf17/keymaps/vial/keymap.c b/keyboards/magic_force/mf17/keymaps/vial/keymap.c new file mode 100644 index 0000000000..0982dd7f9b --- /dev/null +++ b/keyboards/magic_force/mf17/keymaps/vial/keymap.c @@ -0,0 +1,30 @@ +#include QMK_KEYBOARD_H + +#define LAYOUT_mf17( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, k23, \ + k30, k31, k32, k33, \ + k40, k41, k42, k43 \ +) { \ + { k00, k01, k02, k03 }, \ + { k10, k11, k12, k13 }, \ + { k20, k21, k22, k23 }, \ + { k30, k31, k32, k33 }, \ + { k40, k41, k42, k43 } \ +} + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_mf17( + KC_NUM_LOCK, KC_PSLS, KC_PAST, LT(1, KC_PMNS), + KC_P7, KC_P8, KC_P9, KC_NO, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_NO, + KC_NO, KC_P0, KC_PDOT, KC_PENT), + [1] = LAYOUT_mf17( + KC_TRNS, KC_CALCULATOR, KC_BSPC, KC_TRNS, + RM_NEXT, RM_VALU, RM_HUEU, KC_NO, + RM_SPDD, RM_TOGG, RM_SPDU, QK_BOOTLOADER, + RM_PREV, RM_VALD, RM_HUED, KC_NO, + KC_NO, KC_TRNS, KC_TRNS, KC_TRNS), +}; diff --git a/keyboards/magic_force/mf17/keymaps/vial/rules.mk b/keyboards/magic_force/mf17/keymaps/vial/rules.mk new file mode 100644 index 0000000000..df92788349 --- /dev/null +++ b/keyboards/magic_force/mf17/keymaps/vial/rules.mk @@ -0,0 +1,16 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes + +ENCODER_MAP_ENABLE = no +MOUSEKEY_ENABLE = yes +MUSIC_ENABLE = no +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +KEY_OVERRIDE_ENABLE = no +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = yes +VIALRGB_ENABLE = yes +COMBO_ENABLE = yes + +QMK_SETTINGS = yes diff --git a/keyboards/magic_force/mf17/keymaps/vial/vial.json b/keyboards/magic_force/mf17/keymaps/vial/vial.json new file mode 100644 index 0000000000..442066c127 --- /dev/null +++ b/keyboards/magic_force/mf17/keymaps/vial/vial.json @@ -0,0 +1,13 @@ +{ + "lighting": "vialrgb", + "matrix": { "rows": 5, "cols": 4 }, + "layouts": { + "keymap": [ + ["0,0","0,1","0,2","0,3"], + ["1,0","1,1","1,2",{"h":2},"2,3",{"x":-1,"d":true},"1,3"], + ["2,0","2,1","2,2"], + ["3,0","3,1","3,2",{"h":2},"4,3",{"x":-1,"d":true},"3,3"], + [{"w":2}, "4,1", "4,2"] + ] + } +}