diff --git a/converter/adb_usb/matrix.c b/converter/adb_usb/matrix.c
index 7f7066d6..c4ef2705 100644
--- a/converter/adb_usb/matrix.c
+++ b/converter/adb_usb/matrix.c
@@ -36,7 +36,11 @@ along with this program. If not, see .
static bool has_media_keys = false;
-static bool is_iso_layout = false;
+static enum {
+ ADB_LAYOUT_ANSI,
+ ADB_LAYOUT_ISO,
+ ADB_LAYOUT_JIS
+} adb_layout = ADB_LAYOUT_ANSI;
// matrix state buffer(1:on, 0:off)
@@ -64,7 +68,7 @@ static void keyboard_init(void)
// Check if there is keyboard at default address
reg3 = adb_host_talk(ADB_ADDR_KEYBOARD, ADB_REG_3);
if (reg3) {
- xprintf("K:found: reg3:%04X\n", reg3);
+ xprintf("K:Found: reg3:%04X\n", reg3);
adb_host_listen(ADB_ADDR_KEYBOARD, ADB_REG_3, ((reg3 >> 8) & 0xF0) | ADB_ADDR_KBD_TMP, 0xFE);
}
@@ -75,20 +79,30 @@ static void keyboard_init(void)
}
xprintf("K:TMP: reg3:%04X\n", reg3);
- // Determine ISO keyboard by handler id
- // http://lxr.free-electrons.com/source/drivers/macintosh/adbhid.c?v=4.4#L815
+ // https://elixir.bootlin.com/linux/v5.17.4/source/drivers/macintosh/adbhid.c#L802
handler = reg3 & 0xFF;
switch (handler) {
+ case 0x01: case 0x02: case 0x03: case 0x06: case 0x08:
+ case 0x0C: case 0x10: case 0x18: case 0x1B: case 0x1C:
+ case 0xC0: case 0xC3: case 0xC6:
+ adb_layout = ADB_LAYOUT_ANSI;
+ break;
case 0x04: case 0x05: case 0x07: case 0x09: case 0x0D:
case 0x11: case 0x14: case 0x19: case 0x1D: case 0xC1:
case 0xC4: case 0xC7:
- is_iso_layout = true;
+ adb_layout = ADB_LAYOUT_ISO;
+ break;
+ case 0x12: case 0x15: case 0x16: case 0x17: case 0x1A:
+ case 0x1E: case 0xC2: case 0xC5: case 0xC8: case 0xC9:
+ adb_layout = ADB_LAYOUT_JIS;
break;
default:
- is_iso_layout = false;
+ adb_layout = ADB_LAYOUT_ANSI;
break;
}
- xprintf("K:ISO: %s\n", (is_iso_layout ? "yes" : "no"));
+ xprintf("K:Layout: %s\n", (adb_layout == ADB_LAYOUT_ANSI ? "ANSI" : (
+ adb_layout == ADB_LAYOUT_ISO ? "ISO" : (
+ adb_layout == ADB_LAYOUT_JIS ? "JIS" : "???"))));
// Adjustable keyboard media keys: address=0x07 and handlerID=0x02
has_media_keys = (0x02 == (adb_host_talk(ADB_ADDR_APPLIANCE, ADB_REG_3) & 0xff));
@@ -693,7 +707,7 @@ uint8_t matrix_scan(void)
key1 = 0xFF;
}
- /* Swap codes for ISO keyboard
+ /* Keyboard code translation
* https://github.com/tmk/tmk_keyboard/issues/35
*
* ANSI
@@ -704,8 +718,8 @@ uint8_t matrix_scan(void)
* |----------- ----------|
* |CapsLo| A| '|Return |
* |----------- ----------|
- * |Shift | Shift |
- * `----------- ----------'
+ * |Shift | |Shift |
+ * |----------- ----------|
*
* ISO
* ,----------- ----------.
@@ -715,27 +729,49 @@ uint8_t matrix_scan(void)
* |----------- -----` |
* |CapsLo| A| '| *c| |
* |----------- ----------|
- * |Shif| *b| Shift |
- * `----------- ----------'
+ * |Shif| *b| |Shift |
+ * |----------- ----------|
*
- * ADB scan code USB usage
- * ------------- ---------
- * Key ANSI ISO ANSI ISO
- * ---------------------------------------------
- * *a 0x32 0x0A GRAVE GRAVE
- * *b ---- 0x32 ---- NUBS
- * *c 0x2A 0x70 BSLASH NUHS
+ * JIS
+ * ,----------- ----------.
+ * | *a| 1| 2 =| *d| BS|
+ * |----------- ----------|
+ * |Tab | Q| | [|Retur|
+ * |----------- -----` |
+ * |CapsLo| A| :| *c| |
+ * |----------- ----------|
+ * |Shift | | *e| Shift|
+ * |----------- ----------|
+ *
+ * ADB scan code USB usage
+ * ------------- ---------
+ * Key ANSI ISO JIS ANSI ISO JIS
+ * ---------------------------------------------------
+ * *a 0x32 0x0A 0x32 GRAVE GRAVE GRAVE
+ * *b ---- 0x32 ---- ---- NUBS ----
+ * *c 0x2A 0x70 0x2A BSLASH NUHS NUHS
+ * *d ---- ---- 0x5D ---- ---- JPY
+ * *e ---- ---- 0x5E ---- ---- RO
*/
- if (is_iso_layout) {
+ if (adb_layout == ADB_LAYOUT_ISO) {
+ // 32 <-> 0A
if ((key0 & 0x7F) == 0x32) {
key0 = (key0 & 0x80) | 0x0A;
} else if ((key0 & 0x7F) == 0x0A) {
key0 = (key0 & 0x80) | 0x32;
}
+ // 2A -> 70
if ((key0 & 0x7F) == 0x2A) {
key0 = (key0 & 0x80) | 0x70;
}
}
+ if (adb_layout == ADB_LAYOUT_JIS) {
+ // 2A -> 70
+ if ((key0 & 0x7F) == 0x2A) {
+ key0 = (key0 & 0x80) | 0x70;
+ }
+ }
+
register_key(key0);
if (key1 != 0xFF) // key1 is 0xFF when no second key.
extra_key = key1<<8 | 0xFF; // process in a separate call
diff --git a/converter/adb_usb/unimap_common.h b/converter/adb_usb/unimap_common.h
index 81922137..397dc887 100644
--- a/converter/adb_usb/unimap_common.h
+++ b/converter/adb_usb/unimap_common.h
@@ -27,59 +27,57 @@ along with this program. If not, see .
* |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau| |F24|
* `---' `---------------' `---------------' `---------------' `-----------' `---'
* ,-----------------------------------------------------------. ,-----------. ,---------------. ,---.
- * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backspa| |Ins|Hom|PgU| |NmL| =| /| *| |VUp|
+ * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|JPY| BS| |Ins|Hom|PgU| |NmL| =| /| *| |VUp|
* |-----------------------------------------------------------| |-----------| |---------------| |---|
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ | |Del|End|PgD| | 7| 8| 9| -| |VDn|
* |-----------------------------------------------------------| `-----------' |---------------| |---|
* |CapsLo| A| S| D| F| G| H| J| K| L| ;| '| #| Ret| | 4| 5| 6| +| |Mut|
* |-----------------------------------------------------------| ,---. |---------------| `---'
- * |Shif| <| Z| X| C| V| B| N| M| ,| ,| /|Shift | |Up | | 1| 2| 3| |
+ * |Shif| <| Z| X| C| V| B| N| M| ,| ,| /| RO| Shift| |Up | | 1| 2| 3| |
* |-----------------------------------------------------------| ,-----------. |-----------|Ent| ,---.
- * |Ctrl |Opt |Gui | Space |Gui* |Opt |Ctrl | |Lef|Dow|Rig| | 0| .| | |F13|
+ * |Ctrl |Opt |Cmd |Eng| Space |Jpn|Ent|Cmd* |Opt |Ctrl | |Lef|Dow|Rig| | 0| ,| .| | |F13|
* `-----------------------------------------------------------' `-----------' `---------------' `---'
+ * Eng:英数, Jpn:かな
*
* ,---. .---------------. ,---------------. ,---------------. ,-----------. ,---.
* | 35| | 7A| 78| 63| 76| | 60| 61| 62| 64| | 65| 6D| 67| 6F| | 69| 6B| 71| | 7F|
* `---' `---------------' `---------------' `---------------' `-----------' `---'
* ,-----------------------------------------------------------. ,-----------. ,---------------. ,---.
- * |*32| 12| 13| 14| 15| 17| 16| 1A| 1C| 19| 1D| 1B| 18| 33 | | 72| 73| 74| | 47| 51| 4B| 43| | 48|
+ * |*32| 12| 13| 14| 15| 17| 16| 1A| 1C| 19| 1D| 1B| 18| 5D| 33| | 72| 73| 74| | 47| 51| 4B| 43| | 48|
* |-----------------------------------------------------------| |-----------| |---------------| |---|
- * | 30 | 0C| 0D| 0E| 0F| 10| 11| 20| 22| 1F| 23| 21| 1E| 2A | | 75| 77| 79| | 59| 5B| 5C| 4E| | 49|
+ * | 30 | 0C| 0D| 0E| 0F| 11| 10| 20| 22| 1F| 23| 21| 1E| 2A | | 75| 77| 79| | 59| 5B| 5C| 4E| | 49|
* |-----------------------------------------------------------| `-----------' |---------------| |---|
* | 39 | 00| 01| 02| 03| 05| 04| 26| 28| 25| 29| 27|*70| 24 | | 56| 57| 58| 45| | 4A|
* |-----------------------------------------------------------| ,---. |---------------| `---'
- * | 38 |*0A| 06| 07| 08| 09| 0B| 2D| 2E| 2B| 2F| 2C| 7B | | 3E| | 53| 54| 55| |
+ * | 38 |*0A| 06| 07| 08| 09| 0B| 2D| 2E| 2B| 2F| 2C| 5E| 7B | | 3E| | 53| 54| 55| |
* |-----------------------------------------------------------| ,-----------. |-----------| 4C| ,---.
- * | 36 | 3A | 37 | 31 | 37 | 7C | 7D | | 3B| 3D| 3C| | 52 | 41| | | 42|
+ * | 36 | 3A | 37 | 66| 31 | 68| 6A| *37 | 7C | 7D | | 3B| 3D| 3C| | 52| 5F| 41| | | 42|
* `-----------------------------------------------------------' `-----------' `---------------' `---'
* NOTE: Not-extended ADB keyboards have no discrimination between left and right modifiers.
* Use left ones for mapping. Right modifier always sends same code as left one.
* Apple Extended Keyboard can discriminate the modifiers except for Command(GUI) key.
- * For Apple ISO keyboard scan code 0A and 32 are swapped and scan code 2A is translated to 70.
+ * For ISO keyboard scan code 0A and 32 are swapped and scan code 2A is translated to 70.
+ * For JIS Keyboard scan code 2A is translated to 70.
*/
#define UNIMAP_ADB( \
K35, K7A,K78,K63,K76,K60,K61,K62,K64,K65,K6D,K67,K6F, K69,K6B,K71, K7F, \
- K32,K12,K13,K14,K15,K17,K16,K1A,K1C,K19,K1D,K1B,K18, K33, K72,K73,K74, K47,K51,K4B,K43, K48, \
- K30,K0C,K0D,K0E,K0F,K10,K11,K20,K22,K1F,K23,K21,K1E, K2A, K75,K77,K79, K59,K5B,K5C,K4E, K49, \
+ K32,K12,K13,K14,K15,K17,K16,K1A,K1C,K19,K1D,K1B,K18,K5D,K33, K72,K73,K74, K47,K51,K4B,K43, K48, \
+ K30,K0C,K0D,K0E,K0F,K11,K10,K20,K22,K1F,K23,K21,K1E, K2A, K75,K77,K79, K59,K5B,K5C,K4E, K49, \
K39,K00,K01,K02,K03,K05,K04,K26,K28,K25,K29,K27, K70,K24, K56,K57,K58,K45, K4A, \
- K38,K0A,K06,K07,K08,K09,K0B,K2D,K2E,K2B,K2F,K2C, K7B, K3E, K53,K54,K55,K4C, \
- K36,K3A,K37, K31, K7C,K7D, K3B,K3D,K3C, K52,K41, K42 \
+ K38,K0A,K06,K07,K08,K09,K0B,K2D,K2E,K2B,K2F,K2C, K5E,K7B, K3E, K53,K54,K55,K4C, \
+ K36,K3A,K37,K66, K31, K68,K6A, K7C,K7D, K3B,K3D,K3C, K52,K5F,K41, K42 \
) UNIMAP( \
K42,NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, K7F, \
K35, K7A,K78,K63,K76,K60,K61,K62,K64,K65,K6D,K67,K6F, K69,K6B,K71, K49,K48,K4A, \
- K32,K12,K13,K14,K15,K17,K16,K1A,K1C,K19,K1D,K1B,K18,NO, K33, K72,K73,K74, K47,K51,K4B,K43, \
- K30,K0C,K0D,K0E,K0F,K10,K11,K20,K22,K1F,K23,K21,K1E, K2A, K75,K77,K79, K59,K5B,K5C,K4E, \
+ K32,K12,K13,K14,K15,K17,K16,K1A,K1C,K19,K1D,K1B,K18,K5D,K33, K72,K73,K74, K47,K51,K4B,K43, \
+ K30,K0C,K0D,K0E,K0F,K11,K10,K20,K22,K1F,K23,K21,K1E, K2A, K75,K77,K79, K59,K5B,K5C,K4E, \
K39,K00,K01,K02,K03,K05,K04,K26,K28,K25,K29,K27, K70,K24, K56,K57,K58,K45, \
- K38,K0A,K06,K07,K08,K09,K0B,K2D,K2E,K2B,K2F,K2C, NO, K7B, K3E, K53,K54,K55,K4C, \
- K36,K37,K3A,NO, K31, NO, NO, K7C,NO, NO, K7D, K3B,K3D,K3C, K52,K41,NO \
+ K38,K0A,K06,K07,K08,K09,K0B,K2D,K2E,K2B,K2F,K2C, K5E,K7B, K3E, K53,K54,K55,K4C, \
+ K36,K37,K3A,K66, K31, K68,K6A,K7C,NO, NO, K7D, K3B,K3D,K3C, K52, K41,K5F \
)
-// http://lxr.free-electrons.com/source/drivers/macintosh/adbhid.c
-// http://opensource.apple.com//source/IOHIDFamily/IOHIDFamily-701.20.10/IOHIDFamily/Cosmo_USB2ADB.c
-// http://m0115.web.fc2.com/m0115.jpg
-// Not used: UNIMAP_{F14, F15, F21, F22, KP_EQUAL}
-// Not mapped: 0x46, 0x4D, 0x6C
+// https://github.com/tmk/tmk_keyboard/wiki/Apple-Desktop-Bus#scan-codes
const uint8_t PROGMEM unimap_trans[MATRIX_ROWS][MATRIX_COLS] = {
// Position(unimap) ADB scan code(matrix)
// ---------------------------------------------
@@ -161,14 +159,14 @@ const uint8_t PROGMEM unimap_trans[MATRIX_ROWS][MATRIX_COLS] = {
UNIMAP_RIGHT, // 0x3C
UNIMAP_DOWN, // 0x3D
UNIMAP_UP, // 0x3E
- UNIMAP_F23, // 0x3F FN?
+ UNIMAP_NO, // 0x3F FN?
},
{
- UNIMAP_F17, // 0x40
+ UNIMAP_NO, // 0x40
UNIMAP_KP_DOT, // 0x41
UNIMAP_F13, // 0x42 Mic(Adjustable keyboard)
UNIMAP_KP_MINUS, // 0x43 ADB keypad asterisk(top right)
- UNIMAP_F18, // 0x44 dup
+ UNIMAP_NO, // 0x44
UNIMAP_KP_COMMA, // 0x45 ADB keypad plus
UNIMAP_NO, // 0x46
UNIMAP_NUMLOCK, // 0x47
@@ -181,10 +179,10 @@ const uint8_t PROGMEM unimap_trans[MATRIX_ROWS][MATRIX_COLS] = {
UNIMAP_KP_ENTER, // 0x4C dup
UNIMAP_NO, // 0x4D
UNIMAP_KP_PLUS, // 0x4E ADB keypad minus
- UNIMAP_F18, // 0x4F dup
+ UNIMAP_NO, // 0x4F
},
{
- UNIMAP_F19, // 0x50
+ UNIMAP_NO, // 0x50
UNIMAP_KP_SLASH, // 0x51 ADB keypad equal(next to clear/numlock)
UNIMAP_KP_0, // 0x52
UNIMAP_KP_1, // 0x53
@@ -196,12 +194,12 @@ const uint8_t PROGMEM unimap_trans[MATRIX_ROWS][MATRIX_COLS] = {
{
UNIMAP_KP_6, // 0x58
UNIMAP_KP_7, // 0x59
- UNIMAP_F20, // 0x5A
+ UNIMAP_NO, // 0x5A
UNIMAP_KP_8, // 0x5B
UNIMAP_KP_9, // 0x5C
- UNIMAP_JYEN, // 0x5D
- UNIMAP_RO, // 0x5E
- UNIMAP_KP_COMMA, // 0x5F
+ UNIMAP_JPY, // 0x5D JIS Yen
+ UNIMAP_RO, // 0x5E JIS Ro
+ UNIMAP_KP_COMMA, // 0x5F JIS Keypad-,
},
{
UNIMAP_F5, // 0x60
@@ -210,13 +208,13 @@ const uint8_t PROGMEM unimap_trans[MATRIX_ROWS][MATRIX_COLS] = {
UNIMAP_F3, // 0x63
UNIMAP_F8, // 0x64
UNIMAP_F9, // 0x65
- UNIMAP_MHEN, // 0x66
+ UNIMAP_MHEN, // 0x66 Eisu
UNIMAP_F11, // 0x67
},
{
- UNIMAP_HENK, // 0x68
+ UNIMAP_HENK, // 0x68 Kana
UNIMAP_PSCREEN, // 0x69 PrintScreen/F13
- UNIMAP_F16, // 0x6A
+ UNIMAP_KANA, // 0x6A
UNIMAP_SCROLLLOCK, // 0x6B ScrollLock/F14
UNIMAP_NO, // 0x6C
UNIMAP_F10, // 0x6D
diff --git a/converter/adb_usb/unimap_plain.c b/converter/adb_usb/unimap_plain.c
index 1da5f4df..bff9ba4d 100644
--- a/converter/adb_usb/unimap_plain.c
+++ b/converter/adb_usb/unimap_plain.c
@@ -18,7 +18,7 @@ along with this program. If not, see .
#define AC_FN0 ACTION_LAYER_TAP_KEY(1, KC_GRV)
-#define AC_FN1 ACTION_LAYER_TAP_KEY(2, KC_BSLS)
+#define AC_FN1 ACTION_LAYER_TAP_KEY(1, KC_BSLS)
#define AC_PKEY ACTION_MODS_TAP_KEY(MOD_NONE, KC_PWR)
#ifdef KEYMAP_SECTION_ENABLE
@@ -31,27 +31,24 @@ const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] PROGMEM = {
* |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau| |Pwr|
* `---' `---------------' `---------------' `---------------' `-----------' `---'
* ,-----------------------------------------------------------. ,-----------. ,---------------. ,---.
- * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backspa| |Ins|Hom|PgU| |NmL| =| /| *| |VUp|
+ * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|JPY| BS| |Ins|Hom|PgU| |NmL| =| /| *| |VUp|
* |-----------------------------------------------------------| |-----------| |---------------| |---|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |Del|End|PgD| | 7| 8| 9| -| |VDn|
+ * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ | |Del|End|PgD| | 7| 8| 9| -| |VDn|
* |-----------------------------------------------------------| `-----------' |---------------| |---|
- * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|# |Retn| | 4| 5| 6| +| |Mut|
+ * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '| #| Ret| | 4| 5| 6| +| |Mut|
* |-----------------------------------------------------------| ,---. |---------------| `---'
- * |Shif|\ | Z| X| C| V| B| N| M| ,| ,| /|Shift | |Up | | 1| 2| 3| |
+ * |Shif| <| Z| X| C| V| B| N| M| ,| ,| /| RO| Shift| |Up | | 1| 2| 3| |
* |-----------------------------------------------------------| ,-----------. |-----------|Ent| ,---.
- * |Ctrl |Opt |Gui | Space |Gui* |Opt |Ctrl | |Lef|Dow|Rig| | 0| .| | |Ply|
+ * |Ctrl |Opt |Gui |MHN| Space |HNK|Ent|Gui* |Opt |Ctrl | |Lef|Dow|Rig| | 0| ,| .| | |Ply|
* `-----------------------------------------------------------' `-----------' `---------------' `---'
- * NOTE: Not-extended ADB keyboards have no discrimination between left and right modifiers.
- * Use left ones for mapping. Right modifier always sends same code as left one.
- * Apple Extended Keyboard can discriminate the modifiers except for Command(GUI) key.
*/
[0] = UNIMAP_ADB(
ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,SLCK,PAUS, PKEY,
- FN0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, HOME,PGUP, NLCK,EQL, PSLS,PAST, VOLU,
+ FN0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, JPY, BSPC, INS, HOME,PGUP, NLCK,EQL, PSLS,PAST, VOLU,
TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC, FN1, DEL, END, PGDN, P7, P8, P9, PMNS, VOLD,
LCAP,A, S, D, F, G, H, J, K, L, SCLN,QUOT, NUHS,ENT, P4, P5, P6, PPLS, MUTE,
- LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT, UP, P1, P2, P3, PENT,
- LCTL,LALT,LGUI, SPC, RALT,RCTL, LEFT,DOWN,RGHT, P0, PDOT, MPLY
+ LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RO, RSFT, UP, P1, P2, P3, PENT,
+ LCTL,LALT,LGUI,MHEN, SPC, HENK,KANA, RALT,RCTL, LEFT,DOWN,RGHT, P0, PCMM,PDOT, MPLY
),
/*
@@ -59,48 +56,23 @@ const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] PROGMEM = {
* | `| | | | | | | | | | | | | | | | | | | | | |
* `---' `---------------' `---------------' `---------------' `-----------' `---'
* ,-----------------------------------------------------------. ,-----------. ,---------------. ,---.
- * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delete | | | | | | | | | | | |
+ * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del| | | | | | | | | | | |
* |-----------------------------------------------------------| |-----------| |---------------| |---|
* | | | | | | | | |PrS|ScL|Pau|Up |INS| | | | | | | | | | | | |
* |-----------------------------------------------------------| `-----------' |---------------| |---|
* |CapsLo|VoD|VoU|Mut| | | | |Hom|PgU|Lef|Rig|# |Retn| | | | | | | |
* |-----------------------------------------------------------| ,---. |---------------| `---'
- * | | | | | | | | | |End|PgD|Dow|Shift | |PgU| | | | | |
+ * | | | | | | | | | |End|PgD|Dow| RO| Shift| |PgU| | | | | |
* |-----------------------------------------------------------| ,-----------. |-----------| | ,---.
- * | | | | | | | | |Hom|PgD|End| | | | | | |
+ * | | | | | | | | | | |Hom|PgD|End| | | | | | | |
* `-----------------------------------------------------------' `-----------' `---------------' `---'
*/
[1] = UNIMAP_ADB(
GRV, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS, TRNS,
- ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
+ ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,UP, INS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,LEFT,RGHT, TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
- TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,DOWN, TRNS, PGUP, TRNS,TRNS,TRNS,TRNS,
- TRNS,TRNS,TRNS, TRNS, TRNS,TRNS, HOME,PGDN,END, TRNS, TRNS, TRNS
- ),
-
- /*
- * ,---. .---------------. ,---------------. ,---------------. ,-----------. ,---.
- * | `| | | | | | | | | | | | | | | | | | | | | |
- * `---' `---------------' `---------------' `---------------' `-----------' `---'
- * ,-----------------------------------------------------------. ,-----------. ,---------------. ,---.
- * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delete | | | | | | | | | | | |
- * |-----------------------------------------------------------| |-----------| |---------------| |---|
- * | | | | | | | | |PrS|ScL|Pau|Up |INS| | | | | | | | | | | | |
- * |-----------------------------------------------------------| `-----------' |---------------| |---|
- * |CapsLo|VoD|VoU|Mut| | | | |Hom|PgU|Lef|Rig|# |Retn| | | | | | | |
- * |-----------------------------------------------------------| ,---. |---------------| `---'
- * | | | | | | | | | |End|PgD|Dow|Shift | |PgU| | | | | |
- * |-----------------------------------------------------------| ,-----------. |-----------| | ,---.
- * | | | | | | | | |Hom|PgD|End| | | | | | |
- * `-----------------------------------------------------------' `-----------' `---------------' `---'
- */
- [2] = UNIMAP_ADB(
- GRV, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS, TRNS,
- ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, DEL, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
- TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,UP, INS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
- TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,LEFT,RGHT, TRNS,TRNS, TRNS,TRNS,TRNS,TRNS, TRNS,
- TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,DOWN, TRNS, PGUP, TRNS,TRNS,TRNS,TRNS,
- TRNS,TRNS,TRNS, TRNS, TRNS,TRNS, HOME,PGDN,END, TRNS, TRNS, TRNS
+ TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,DOWN, TRNS,TRNS, PGUP, TRNS,TRNS,TRNS,TRNS,
+ TRNS,TRNS,TRNS,TRNS, TRNS, TRNS,TRNS, TRNS,TRNS, HOME,PGDN,END, TRNS,TRNS,TRNS, TRNS
),
};
diff --git a/tmk_core/common/unimap.h b/tmk_core/common/unimap.h
index cd00e1d7..9192f7ed 100644
--- a/tmk_core/common/unimap.h
+++ b/tmk_core/common/unimap.h
@@ -264,6 +264,7 @@ enum unimap_position_codes {
#define UNIMAP_NUBS UNIMAP_NONUS_BSLASH
/* Japanese specific */
#define UNIMAP_ZKHK UNIMAP_GRAVE
+#define UNIMAP_JPY UNIMAP_JYEN
/* Keypad */
#define UNIMAP_P1 UNIMAP_KP_1
#define UNIMAP_P2 UNIMAP_KP_2