diff --git a/windows/input.c b/windows/input.c
index 4d34e4b..3ddee08 100644
--- a/windows/input.c
+++ b/windows/input.c
@@ -744,6 +744,24 @@
 	return VkKeyScanA((CHAR)cChar); /* FIXME: check unicode */
 }
 
+/**********************************************************************
+ *           VkKeyScanExA      (USER32.574)
+ */
+WORD WINAPI VkKeyScanExA(CHAR cChar, HKL dwhkl)
+{
+				/* FIXME: complete workaround this is */
+				return VkKeyScan16(cChar);
+}
+
+/******************************************************************************
+ *      VkKeyScanExW      (USER32.575)
+ */
+WORD WINAPI VkKeyScanExW(WCHAR cChar, HKL dwhkl)
+{
+				/* FIXME: complete workaround this is */
+				return VkKeyScanA((CHAR)cChar); /* FIXME: check unicode */
+}
+ 
 /******************************************************************************
  *    	GetKeyboardType32      (USER32.255)
  */
@@ -861,6 +879,16 @@
     return ToAscii16(virtKey,scanCode,lpKeyState,lpChar,flags);
 }
 
+/****************************************************************************
+ *	ToAscii32      (USER32.547)
+ */
+INT WINAPI ToAsciiEx( UINT virtKey, UINT scanCode, LPBYTE lpKeyState,
+                      LPWORD lpChar, UINT flags, HKL dwhkl )
+{
+		/* FIXME: need true implementation */
+    return ToAscii16(virtKey,scanCode,lpKeyState,lpChar,flags);
+}
+
 /**********************************************************************
  *           ActivateKeyboardLayout32      (USER32.1)
  *
