The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
--- iz-ru-la.C.orig	2013-03-09 16:06:20.451537200 -0800
+++ iz-ru-la.C	2013-03-09 16:48:00.444528600 -0800
@@ -92,6 +92,7 @@ static ALLOC_SECTION_LDATA VSC_VK aE0Vsc
         { 0x2E, X2E | KBDEXT              },  // Speedracer: Volume Down
         { 0x30, X30 | KBDEXT              },  // Speedracer: Volume Up
         { 0x32, X32 | KBDEXT              },  // Speedracer: Browser Home
+        { 0x35, X35 | KBDEXT              },  // Numpad Divide
         { 0x37, X37 | KBDEXT              },  // Snapshot
         { 0x38, X38 | KBDEXT              },  // RMenu
         { 0x47, X47 | KBDEXT              },  // Home
@@ -143,7 +144,10 @@ static ALLOC_SECTION_LDATA VSC_VK aE1Vsc
 static ALLOC_SECTION_LDATA VK_TO_BIT aVkToBits[] = {
     { VK_SHIFT    ,   KBDSHIFT     },
     { VK_CONTROL  ,   KBDCTRL      },
-    { VK_MENU     ,   KBDALT       },
+    { VK_RCONTROL ,   KBDCTRL + KBDLOYA      },
+    { VK_MENU     ,   KBDALT       },
+    { VK_RMENU    ,   KBDALT + KBDCTRL + KBDROYA       },
+    { VK_OEM_AX   ,   KBDKANA      },
     { 0           ,   0           }
 };
 
@@ -194,8 +198,8 @@ static ALLOC_SECTION_LDATA MODIFIERS Cha
         15,            // Shift + Control + Menu + Ror# + Ror# 
         SHFT_INVALID, // Ror# 
         SHFT_INVALID, // Shift + Ror# 
-        SHFT_INVALID, // Control + Ror# 
-        SHFT_INVALID, // Shift + Control + Ror# 
+        2,		 // Control + Ror# 
+        3,		 // Shift + Control + Ror# 
         SHFT_INVALID, // Menu + Ror# 
         SHFT_INVALID, // Shift + Menu + Ror# 
         SHFT_INVALID, // Control + Menu + Ror# 
@@ -238,6 +241,10 @@ static ALLOC_SECTION_LDATA VK_TO_WCHARS6
 //                      |=========|=========|=========|=========|=========|=========|
   {VK_SPACE     ,0      ,' '      ,WCH_DEAD ,' '      ,WCH_NONE ,WCH_DEAD ,WCH_DEAD },
   {0xff         ,0      ,WCH_NONE ,0x0138   ,WCH_NONE ,WCH_NONE ,0x0192   ,0x00a0   },
+  {VK_CONVERT   ,0      ,' '      ,WCH_DEAD ,' '      ,WCH_NONE ,WCH_DEAD ,WCH_DEAD },
+  {0xff         ,0      ,WCH_NONE ,0x0138   ,WCH_NONE ,WCH_NONE ,0x0192   ,0x00a0   },
+  {VK_NONCONVERT,0      ,' '      ,WCH_DEAD ,' '      ,WCH_NONE ,WCH_DEAD ,WCH_DEAD },
+  {0xff         ,0      ,WCH_NONE ,0x0138   ,WCH_NONE ,WCH_NONE ,0x0192   ,0x00a0   },
   {VK_ABNT_C2   ,0      ,0x2016   ,WCH_DEAD ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x0301   },
   {0xff         ,0      ,WCH_NONE ,0x00a0   ,WCH_NONE ,WCH_NONE ,0x00a3   ,WCH_NONE },
   {VK_OEM_8     ,0      ,0x2016   ,WCH_DEAD ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x0301   },
--- iz-ru-la.H.orig	2013-03-09 16:06:20.394533900 -0800
+++ iz-ru-la.H	2013-03-09 16:48:18.378554400 -0800
@@ -37,3 +37,13 @@
 #undef  T7D
  #define T7D _EQ(                                      OEM_8                      )
 
+#undef X5D			/* Was: APPS; move to non-special "kinda-KANA" */
+#define X5D _EQ(                                    OEM_AX                      )
+
+#undef T70			/* KANA */
+#define T70 _EQ(                                    APPS                      )
+
+#undef  T7B
+#define T7B _EQ(                                    NONCONVERT                      )
+#undef  T79
+#define T79 _EQ(                                    CONVERT                      )
--- iz-la-ru.C.orig	2013-06-24 03:54:16.421569300 -0700
+++ iz-la-ru.C	2013-06-24 04:45:18.266524700 -0700
@@ -97,6 +97,7 @@ static ALLOC_SECTION_LDATA VSC_VK aE0Vsc
         { 0x2E, X2E | KBDEXT              },  // Speedracer: Volume Down
         { 0x30, X30 | KBDEXT              },  // Speedracer: Volume Up
         { 0x32, X32 | KBDEXT              },  // Speedracer: Browser Home
+        { 0x35, X35 | KBDEXT              },  // Numpad Divide
         { 0x37, X37 | KBDEXT              },  // Snapshot
         { 0x38, X38 | KBDEXT              },  // RMenu
         { 0x47, X47 | KBDEXT              },  // Home
@@ -144,7 +145,10 @@ static ALLOC_SECTION_LDATA VSC_VK aE1Vsc
 static ALLOC_SECTION_LDATA VK_TO_BIT aVkToBits[] = {
     { VK_SHIFT    ,   KBDSHIFT     },
     { VK_CONTROL  ,   KBDCTRL      },
+    { VK_RCONTROL ,   KBDCTRL + KBDLOYA      },
     { VK_MENU     ,   KBDALT       },
+    { VK_RMENU    ,   KBDALT + KBDCTRL + KBDROYA       },
+    { VK_OEM_AX   ,   KBDKANA      },
     { 0           ,   0           }
 };
 
@@ -195,8 +199,8 @@ static ALLOC_SECTION_LDATA MODIFIERS Cha
         19,            // Shift + Control + Menu + Ror# + Ror# 
         SHFT_INVALID, // Ror# 
         SHFT_INVALID, // Shift + Ror# 
-        SHFT_INVALID, // Control + Ror# 
-        SHFT_INVALID, // Shift + Control + Ror# 
+        2,		 // Control + Ror# 
+        3,		 // Shift + Control + Ror# 
         SHFT_INVALID, // Menu + Ror# 
         SHFT_INVALID, // Shift + Menu + Ror# 
         14,            // Control + Menu + Ror# 
@@ -336,6 +340,10 @@ static ALLOC_SECTION_LDATA VK_TO_WCHARS6
 //                      |=========|=========|=========|=========|=========|=========|
   {VK_SPACE     ,0      ,' '      ,WCH_DEAD ,' '      ,WCH_NONE ,WCH_DEAD ,WCH_DEAD },
   {0xff         ,0      ,WCH_NONE ,0x0138   ,WCH_NONE ,WCH_NONE ,0x0192   ,0x00a0   },
+  {VK_CONVERT   ,0      ,' '      ,WCH_DEAD ,' '      ,WCH_NONE ,WCH_DEAD ,WCH_DEAD },
+  {0xff         ,0      ,WCH_NONE ,0x0138   ,WCH_NONE ,WCH_NONE ,0x0192   ,0x00a0   },
+  {VK_NONCONVERT,0      ,' '      ,WCH_DEAD ,' '      ,WCH_NONE ,WCH_DEAD ,WCH_DEAD },
+  {0xff         ,0      ,WCH_NONE ,0x0138   ,WCH_NONE ,WCH_NONE ,0x0192   ,0x00a0   },
   {VK_ABNT_C2   ,0      ,0x2016   ,WCH_DEAD ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x0301   },
   {0xff         ,0      ,WCH_NONE ,0x00a0   ,WCH_NONE ,WCH_NONE ,0x00a3   ,WCH_NONE },
   {VK_OEM_8     ,0      ,0x2016   ,WCH_DEAD ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x0301   },
@@ -388,8 +396,8 @@ static ALLOC_SECTION_LDATA VK_TO_WCHARS2
   {'J'          ,CAPLOK | CAPLOKALTGR,'j'      ,'J'      ,0x000a   ,0x000a   ,0x00ed   ,0x00cd   ,0x03ca   ,0x03aa   ,0x0439   ,0x0419   ,0x05d7   ,0x05bb   ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR },
   {'K'          ,CAPLOK | CAPLOKALTGR,'k'      ,'K'      ,0x000b   ,0x000b   ,0x00f3   ,0x00d3   ,0x03ba   ,0x039a   ,0x043a   ,0x041a   ,0x05db   ,0x05da   ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR },
   {'L'          ,CAPLOK | CAPLOKALTGR,'l'      ,'L'      ,0x000c   ,0x000c   ,0x00f6   ,0x00d6   ,0x03bb   ,0x039b   ,0x043b   ,0x041b   ,0x05dc   ,0x05b9   ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,0x2113   ,0x2112   ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR },
-  {VK_OEM_1     ,0                   ,';'      ,':'      ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x00f7   ,0x0387   ,WCH_NONE ,';'      ,':'      ,0x059b   ,0x0594   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
-  {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x00a8   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
+  {VK_OEM_1     ,0                   ,';'      ,':'      ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x00f7   ,0x0387   ,WCH_DEAD ,WCH_DEAD ,WCH_DEAD ,0x059b   ,0x0594   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
+  {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x00a8   ,WCH_NONE ,WCH_NONE ,0x03a6   ,0x03a6   ,0x0483   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x03a6   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {VK_OEM_7     ,0                   ,'\''     ,'"'      ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,WCH_DEAD ,0x2202   ,0x2207   ,0x2032   ,0x2033   ,0x05f3   ,0x05f4   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x00b4   ,0x02f5   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {'Z'          ,CAPLOK | CAPLOKALTGR,'z'      ,'Z'      ,0x001a   ,0x001a   ,0x00e0   ,0x00c0   ,0x03b6   ,0x0396   ,0x0437   ,0x0417   ,0x05d6   ,0x05b7   ,WCH_LGTR ,0x2128   ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,0x2124   ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR ,WCH_LGTR },
@@ -403,8 +411,8 @@ static ALLOC_SECTION_LDATA VK_TO_WCHARS2
   {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x00b8   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {VK_OEM_PERIOD,0                   ,'.'      ,'>'      ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x2265   ,0x00b7   ,WCH_LGTR ,0x2026   ,'>'      ,0x05c3   ,0x059a   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_LGTR ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x00b0   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
-  {VK_OEM_2     ,0                   ,'/'      ,'?'      ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x00bf   ,0x2044   ,0x037e   ,0x00f7   ,0xfffd   ,0x05a5   ,0x05c5   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_LGTR ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_LGTR ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
-  {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x0338   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
+  {VK_OEM_2     ,0                   ,'/'      ,'?'      ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,0x00bf   ,0x2044   ,0x037e   ,0x00f7   ,0xfffd   ,0x05a5   ,0x05c5   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_LGTR ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_DEAD ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
+  {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x0338   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x03a6   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {VK_OEM_102   ,0                   ,'\\'     ,'|'      ,0x001c   ,WCH_NONE ,0x00b6   ,0x2767   ,WCH_DEAD ,WCH_DEAD ,0x044a   ,0x042a   ,0x05bf   ,0x05c7   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {0xff         ,0                   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,0x0342   ,0x0f13   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
   {VK_ABNT_C1   ,0                   ,'\\'     ,'|'      ,0x001c   ,WCH_NONE ,0x00b6   ,0x2767   ,WCH_DEAD ,WCH_DEAD ,0x044a   ,0x042a   ,0x05bf   ,0x05c7   ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE ,WCH_NONE },
--- iz-la-ru.H.orig	2013-03-09 16:06:20.205523100 -0800
+++ iz-la-ru.H	2013-03-09 16:48:24.179886200 -0800
@@ -37,3 +37,13 @@
 #undef  T7D
  #define T7D _EQ(                                      OEM_8                      )
 
+#undef X5D			/* Was: APPS; move to non-special "kinda-KANA" */
+#define X5D _EQ(                                    OEM_AX                      )
+
+#undef T70			/* KANA */
+#define T70 _EQ(                                    APPS                      )
+
+#undef  T7B
+#define T7B _EQ(                                    NONCONVERT                      )
+#undef  T79
+#define T79 _EQ(                                    CONVERT                      )