diff --git a/keyboards/durgod/k320/info.json b/keyboards/durgod/k320/info.json
index 0f0c584e62..5e33d8fcd2 100644
--- a/keyboards/durgod/k320/info.json
+++ b/keyboards/durgod/k320/info.json
@@ -457,6 +457,464 @@
"y": 5.5
}
]
+ },
+ "LAYOUT_tkl_iso": {
+ "layout": [
+ {
+ "label": "Esc",
+ "x": 0,
+ "y": 0
+ },
+ {
+ "label": "F1",
+ "x": 2,
+ "y": 0
+ },
+ {
+ "label": "F2",
+ "x": 3,
+ "y": 0
+ },
+ {
+ "label": "F3",
+ "x": 4,
+ "y": 0
+ },
+ {
+ "label": "F4",
+ "x": 5,
+ "y": 0
+ },
+ {
+ "label": "F5",
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "label": "F6",
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "label": "F7",
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "label": "F8",
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "label": "F9",
+ "x": 11,
+ "y": 0
+ },
+ {
+ "label": "F10",
+ "x": 12,
+ "y": 0
+ },
+ {
+ "label": "F11",
+ "x": 13,
+ "y": 0
+ },
+ {
+ "label": "F12",
+ "x": 14,
+ "y": 0
+ },
+ {
+ "label": "PrtSc",
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "label": "Scroll Lock",
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "label": "Pause",
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "label": "~",
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "label": "!",
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "label": "@",
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "label": "#",
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "label": "$",
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "label": "%",
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "label": "^",
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "label": "&",
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "label": "*",
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "label": "(",
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "label": ")",
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "label": "_",
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "label": "+",
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "label": "Backspace",
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "label": "Insert",
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "label": "Home",
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "label": "PgUp",
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "label": "Tab",
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "label": "Q",
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "label": "W",
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "label": "E",
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "label": "R",
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "label": "T",
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "label": "Y",
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "label": "U",
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "label": "I",
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "label": "O",
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "label": "P",
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "label": "{",
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "label": "}",
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "label": "Enter",
+ "x": 13.75,
+ "y": 2.5,
+ "w": 1.25,
+ "h": 2
+ },
+ {
+ "label": "Delete",
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "label": "End",
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "label": "PgDn",
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "label": "Caps Lock",
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "label": "A",
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "label": "S",
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "label": "D",
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "label": "F",
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "label": "G",
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "label": "H",
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "label": "J",
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "label": "K",
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "label": "L",
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "label": ":",
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "label": "\"",
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "label": "#",
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "label": "Shift",
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "label": "\\",
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "label": "Z",
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "label": "X",
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "label": "C",
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "label": "V",
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "label": "B",
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "label": "N",
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "label": "M",
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "label": "<",
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "label": ">",
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "label": "?",
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "label": "Shift",
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "label": "\u2191",
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "label": "Ctrl",
+ "x": 0,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "label": "Win",
+ "x": 1.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "label": "Alt",
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "x": 3.75,
+ "y": 5.5,
+ "w": 6.25
+ },
+ {
+ "label": "Alt",
+ "x": 10,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "label": "Fn",
+ "x": 11.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "label": "Menu",
+ "x": 12.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "label": "Ctrl",
+ "x": 13.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "label": "\u2190",
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "label": "\u2193",
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "label": "\u2192",
+ "x": 17.25,
+ "y": 5.5
+ }
+ ]
}
}
}
diff --git a/keyboards/durgod/k320/k320.h b/keyboards/durgod/k320/k320.h
index 1f5b884a75..956cc0dcdf 100644
--- a/keyboards/durgod/k320/k320.h
+++ b/keyboards/durgod/k320/k320.h
@@ -42,3 +42,21 @@ void on_all_leds(void);
{ K50, K51, K52, XXX, XXX, XXX, K56, XXX, XXX, XXX, K5A, K5B, K5C, K5D, K5E, K5F }, \
{ XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, K6F } \
}
+
+// This a shortcut to help you visually see your layout.
+#define LAYOUT_tkl_iso( \
+ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
+ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K2E, K2F, K1F, \
+ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K4E, K3D, K3E, K3F, \
+ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
+ K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4F, \
+ K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K6F \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \
+ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, XXX, K1E, K1F }, \
+ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E, K2F }, \
+ { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, XXX, K4D, K4E, K4F }, \
+ { K50, K51, K52, XXX, XXX, XXX, K56, XXX, XXX, XXX, K5A, K5B, K5C, K5D, K5E, K5F }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, K6F } \
+}
diff --git a/keyboards/durgod/k320/keymaps/default_iso/keymap.c b/keyboards/durgod/k320/keymaps/default_iso/keymap.c
new file mode 100644
index 0000000000..559b6fe715
--- /dev/null
+++ b/keyboards/durgod/k320/keymaps/default_iso/keymap.c
@@ -0,0 +1,72 @@
+/* Copyright 2021 kuenhlee and Don Kjer
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+#include QMK_KEYBOARD_H
+
+// Layer shorthand
+enum _layer {
+ _BASE,
+ _FUNC
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap _BASE: Base Layer (Default Layer)
+ * ,-----------------------------------------------------------. ,--------------.
+ * |Esc |f1| f2| f3| f4| | f5| f6| f7| f8| | f9|f10|f11|f12| |Prnt|ScLk|Paus|
+ * |-----------------------------------------------------------| |--------------|
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backsp | | Ins|Home|PgUp|
+ * |-----------------------------------------------------------| |--------------|
+ * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | Del| End|PgDn|
+ * |------------------------------------------------------ Ret | `--------------'
+ * |CAPS | A| S| D| F| G| H| J| K| L| ;| '| #| |
+ * |-----------------------------------------------------------| ,----.
+ * |Shift| \| Z| X| C| V| B| N| M| ,| .| /|Shift | | Up |
+ * |-----------------------------------------------------------| ,-------------.
+ * |Ctrl|Gui |Alt | Space |Alt | Fn |App |Ctrl| |Lft| Dn |Rig |
+ * `-----------------------------------------------------------' `-------------'
+ */
+ [_BASE] = LAYOUT_tkl_iso( /* Base Layer */
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_DEL, KC_END, KC_PGDN,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FUNC),KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ /* Keymap _FUNC: Function Layer
+ * ,-----------------------------------------------------------. ,--------------.
+ * | |Play|Stop|Prev|Next| |Mute|Vol+|Vol-| | | | | | | | | | |
+ * |-----------------------------------------------------------| |--------------|
+ * | | | | | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------| |--------------|
+ * | | | | | | | | | | | | | | | | | | |
+ * |------------------------------------------------------- | `--------------'
+ * | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------| ,----.
+ * | | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------| ,-------------.
+ * | | | | | |Func | | | | | | |
+ * `-----------------------------------------------------------' `-------------'
+ */
+ [_FUNC] = LAYOUT_tkl_iso( /* Function Layer */
+ _______, KC_MPLY, KC_MSTP, KC_MRWD, KC_MFFD, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
+
diff --git a/keyboards/durgod/k320/keymaps/default_iso/readme.md b/keyboards/durgod/k320/keymaps/default_iso/readme.md
new file mode 100644
index 0000000000..a7d1d5f1d3
--- /dev/null
+++ b/keyboards/durgod/k320/keymaps/default_iso/readme.md
@@ -0,0 +1,7 @@
+# The ISO keymap for Durgod Taurus K320.
+
+Layer 0 : Standard ISO 88 Keys TKL layout (Windows)
+
+Layer 1 : Media control and Windows lock key
+- Reusing Durgod's Original Media Control for Fn + F1 ~ Fn + F7
+
diff --git a/keyboards/durgod/k320/keymaps/default_iso_mac/keymap.c b/keyboards/durgod/k320/keymaps/default_iso_mac/keymap.c
new file mode 100644
index 0000000000..783fc45f1b
--- /dev/null
+++ b/keyboards/durgod/k320/keymaps/default_iso_mac/keymap.c
@@ -0,0 +1,71 @@
+/* Copyright 2021 kuenhlee and Don Kjer
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+#include QMK_KEYBOARD_H
+
+// Layer shorthand
+enum _layer {
+ _BASE,
+ _FUNC
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Keymap _BASE: Base Layer (Default Layer)
+ * ,-----------------------------------------------------------. ,--------------.
+ * |Esc |f1| f2| f3| f4| | f5| f6| f7| f8| | f9|f10|f11|f12| |Prnt|ScLk|Paus|
+ * |-----------------------------------------------------------| |--------------|
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backsp | | Ins|Home|PgUp|
+ * |-----------------------------------------------------------| |--------------|
+ * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | Del| End|PgDn|
+ * |------------------------------------------------------ Ret | `--------------'
+ * |CAPS | A| S| D| F| G| H| J| K| L| ;| '| #| |
+ * |-----------------------------------------------------------| ,----.
+ * |Shift| \| Z| X| C| V| B| N| M| ,| .| /|Shift | | Up |
+ * |-----------------------------------------------------------| ,-------------.
+ * |Ctrl|Alt |Gui | Space |Alt | Fn |App |Ctrl| |Lft| Dn |Rig |
+ * `-----------------------------------------------------------' `-------------'
+ */
+ [_BASE] = LAYOUT_tkl_iso( /* Base Layer */
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_DEL, KC_END, KC_PGDN,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(_FUNC),KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+ /* Keymap _FUNC: Function Layer
+ * ,-----------------------------------------------------------. ,--------------.
+ * | |Play|Stop|Prev|Next| |Mute|Vol+|Vol-| | | | | | | | | | |
+ * |-----------------------------------------------------------| |--------------|
+ * | | | | | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------| |--------------|
+ * | | | | | | | | | | | | | | | | | | |
+ * |------------------------------------------------------- | `--------------'
+ * | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------| ,----.
+ * | | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------| ,-------------.
+ * | | | | | |Func | | | | | | |
+ * `-----------------------------------------------------------' `-------------'
+ */
+ [_FUNC] = LAYOUT_tkl_iso( /* Function Layer */
+ _______, KC_MPLY, KC_MSTP, KC_MRWD, KC_MFFD, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/durgod/k320/keymaps/default_iso_mac/readme.md b/keyboards/durgod/k320/keymaps/default_iso_mac/readme.md
new file mode 100644
index 0000000000..354f7b4cba
--- /dev/null
+++ b/keyboards/durgod/k320/keymaps/default_iso_mac/readme.md
@@ -0,0 +1,6 @@
+# The ISO (Mac) keymap for Durgod Taurus K320.
+
+Layer 0 : Standard ISO 88 Keys TKL layout (Mac)
+
+Layer 1 : Media control
+- Reusing Durgod's Original Media Control for Fn + F1 ~ Fn + F7
diff --git a/keyboards/durgod/k320/rules.mk b/keyboards/durgod/k320/rules.mk
index 3fb50bb8a4..040ea2dc88 100644
--- a/keyboards/durgod/k320/rules.mk
+++ b/keyboards/durgod/k320/rules.mk
@@ -24,4 +24,4 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
BLUETOOTH_ENABLE = no # Enable Bluetooth
AUDIO_ENABLE = no # Audio output
-LAYOUTS = tkl_ansi
+LAYOUTS = tkl_ansi tkl_iso