diff --git a/Source/Core/Core/Core.vcproj b/Source/Core/Core/Core.vcproj
index 7e8c63a4ba..1e169ed404 100644
--- a/Source/Core/Core/Core.vcproj
+++ b/Source/Core/Core/Core.vcproj
@@ -2115,58 +2115,10 @@
RelativePath=".\Src\IPC_HLE\WII_IPC_HLE_Device.h"
>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -2179,26 +2131,118 @@
RelativePath=".\Src\IPC_HLE\WII_IPC_HLE_Device_usb.h"
>
-
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
-
-
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
9
- 0x27, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
- 0x25, 0x26,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00,
- // A -> Z
- 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13,
- 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B,
- 0x1C, 0x1D,
- 0x00, 0x00, 0x00, 0x00,
- 0x00,
- // Numpad 0 -> 9
- 0x62, 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F,
- 0x60, 0x61,
- 0x55, // Multiply
- 0x57, // Add
- 0x00, // Separator
- 0x56, // Substract
- 0x63, // Decimal
- 0x54, // Divide
- // F1 -> F12
- 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41,
- 0x42, 0x43, 0x44, 0x45,
- // F13 -> F24
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x53, // Numlock
- 0x47, // Scroll lock
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // Modifier keys
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x33, // ';'
- 0x2E, // Plus
- 0x36, // Comma
- 0x2D, // Minus
- 0x37, // Period
- 0x38, // '/'
- 0x35, // '~'
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00,
- 0x2F, // '['
- 0x32, // '\'
- 0x30, // ']'
- 0x34, // '''
- 0x00, //
- 0x00, // Nothing interesting past this point.
-#else
- // TODO: do it for non-Windows platforms
- 0
+#include "WII_IPC_HLE_Device_Usb_Kbd_win32.h"
+#endif
+#ifdef __linux__
+#include "WII_IPC_HLE_Device_Usb_Kbd_linux.h"
+#endif
+#ifdef __APPLE__
+#include "WII_IPC_HLE_Device_Usb_Kbd_apple.h"
#endif
-};
-u8 CWII_IPC_HLE_Device_usb_kbd::m_KeyCodesAZERTY[256] = {
-#ifdef _WIN32
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x2A, // Backspace
- 0x2B, // Tab
- 0x00, 0x00,
- 0x00, // Clear
- 0x28, // Return
- 0x00, 0x00,
- 0x00, // Shift
- 0x00, // Control
- 0x00, // ALT
- 0x48, // Pause
- 0x39, // Capital
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x29, // Escape
- 0x00, 0x00, 0x00, 0x00,
- 0x2C, // Space
- 0x4B, // Prior
- 0x4E, // Next
- 0x4D, // End
- 0x4A, // Home
- 0x50, // Left
- 0x52, // Up
- 0x4F, // Right
- 0x51, // Down
- 0x00, 0x00, 0x00,
- 0x46, // Print screen
- 0x49, // Insert
- 0x4C, // Delete
- 0x00,
- // 0 -> 9
- 0x27, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24,
- 0x25, 0x26,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00,
- // A -> Z
- 0x14, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
- 0x0C, 0x0D, 0x0E, 0x0F, 0x33, 0x11, 0x12, 0x13,
- 0x04, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1D, 0x1B,
- 0x1C, 0x1A,
- 0x00, 0x00, 0x00, 0x00,
- 0x00,
- // Numpad 0 -> 9
- 0x62, 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F,
- 0x60, 0x61,
- 0x55, // Multiply
- 0x57, // Add
- 0x00, // Separator
- 0x56, // Substract
- 0x63, // Decimal
- 0x54, // Divide
- // F1 -> F12
- 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41,
- 0x42, 0x43, 0x44, 0x45,
- // F13 -> F24
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x53, // Numlock
- 0x47, // Scroll lock
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // Modifier keys
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00,
- 0x30, // '$'
- 0x2E, // Plus
- 0x10, // Comma
- 0x00, // Minus
- 0x36, // Period
- 0x37, // '/'
- 0x34, // 'ù'
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00,
- 0x2D, // ')'
- 0x32, // '\'
- 0x2F, // '^'
- 0x00, // '²'
- 0x38, // '!'
- 0x00, // Nothing interesting past this point.
-#else
- // TODO: do it for non-Windows platforms
- 0
-#endif
-};
+
CWII_IPC_HLE_Device_usb_kbd::CWII_IPC_HLE_Device_usb_kbd(u32 _DeviceID, const std::string& _rDeviceName)
: IWII_IPC_HLE_Device(_DeviceID, _rDeviceName)