diff --git a/dlls/Makefile.in b/dlls/Makefile.in
index 4ef34ab52974948faf41d07388cede923b3ece45..8415d7c40a06c52c900f80425d84c59d63004a10 100644
--- a/dlls/Makefile.in
+++ b/dlls/Makefile.in
@@ -394,12 +394,14 @@ oleaut32/liboleaut32.so: libole32.so libgdi32.so libkernel32.so
 olecli/libolecli32.so: libole32.so libolesvr32.so libgdi32.so
 olepro32/libolepro32.so: liboleaut32.so
 opengl32/libopengl32.so: libx11drv.so
+psapi/libpsapi.so: libkernel32.so
 richedit/libriched32.so: libuser32.so libkernel32.so
 serialui/libserialui.so: libuser32.so libadvapi32.so libkernel32.so
 setupapi/libsetupapi.so: libkernel32.so
 shell32/libshell32.so: libole32.so libshlwapi.so libcomctl32.so libadvapi32.so libuser32.so libgdi32.so libkernel32.so
 shfolder/libshfolder.so: libshell32.so
 shlwapi/libshlwapi.so: libadvapi32.so libuser32.so libkernel32.so
+tapi32/libtapi32.so: libkernel32.so
 ttydrv/libttydrv.so: libuser32.so libgdi32.so libkernel32.so
 urlmon/liburlmon.so: libole32.so
 user/libuser32.so: libgdi32.so libkernel32.so
diff --git a/dlls/commdlg/fontdlg.c b/dlls/commdlg/fontdlg.c
index b0027ffd77b88207d3551aea3827e8a6edabb41e..1cacfa4d10ab204aa41a52ee97c03c18216aebc7 100644
--- a/dlls/commdlg/fontdlg.c
+++ b/dlls/commdlg/fontdlg.c
@@ -323,7 +323,7 @@ INT16 WINAPI FontFamilyEnumProc16( SEGPTR logfont, SEGPTR metrics,
                                    UINT16 nFontType, LPARAM lParam )
 {
   HWND16 hwnd=LOWORD(lParam);
-  HWND16 hDlg=GetParent16(hwnd);
+  HWND hDlg=GetParent(hwnd);
   LPCHOOSEFONT16 lpcf=(LPCHOOSEFONT16)GetWindowLongA(hDlg, DWL_USER); 
   LOGFONT16 *lplf = (LOGFONT16 *)PTR_SEG_TO_LIN( logfont );
   LOGFONTA lf32a;
@@ -347,8 +347,8 @@ static int SetFontStylesToCombo2(HWND hwnd, HDC hdc, LPLOGFONTA lplf)
    static struct FONTSTYLE fontstyles[FSTYLES]={ 
           { 0,FW_NORMAL,"Regular"},{0,FW_BOLD,"Bold"},
           { 1,FW_NORMAL,"Italic"}, {1,FW_BOLD,"Bold Italic"}};
-   HFONT16 hf;
-   TEXTMETRIC16 tm;
+   HFONT hf;
+   TEXTMETRICA tm;
    int i,j;
 
    for (i=0;i<FSTYLES;i++)
@@ -357,7 +357,7 @@ static int SetFontStylesToCombo2(HWND hwnd, HDC hdc, LPLOGFONTA lplf)
      lplf->lfWeight=fontstyles[i].weight;
      hf=CreateFontIndirectA(lplf);
      hf=SelectObject(hdc,hf);
-     GetTextMetrics16(hdc,&tm);
+     GetTextMetricsA(hdc,&tm);
      hf=SelectObject(hdc,hf);
      DeleteObject(hf);
 
@@ -454,7 +454,7 @@ INT16 WINAPI FontStyleEnumProc16( SEGPTR logfont, SEGPTR metrics,
 {
   HWND16 hcmb2=LOWORD(lParam);
   HWND16 hcmb3=HIWORD(lParam);
-  HWND16 hDlg=GetParent16(hcmb3);
+  HWND hDlg=GetParent(hcmb3);
   LPCHOOSEFONT16 lpcf=(LPCHOOSEFONT16)GetWindowLongA(hDlg, DWL_USER); 
   LOGFONT16 *lplf = (LOGFONT16 *)PTR_SEG_TO_LIN(logfont);
   LOGFONTA lf32a;
diff --git a/dlls/commdlg/printdlg.c b/dlls/commdlg/printdlg.c
index a4382bf2e320dc99d076527519673f7786512669..d2a8cf97a06734677a4363d650e13a9854a4cfff 100644
--- a/dlls/commdlg/printdlg.c
+++ b/dlls/commdlg/printdlg.c
@@ -1055,7 +1055,7 @@ LRESULT WINAPI PrintDlgProc16(HWND16 hWnd, UINT16 wMsg, WPARAM16 wParam,
     {
     case WM_INITDIALOG:
       TRACE("WM_INITDIALOG lParam=%08lX\n", lParam);
-      ShowWindow16(hWnd, SW_SHOWNORMAL);
+      ShowWindow(hWnd, SW_SHOWNORMAL);
       return (TRUE);
     case WM_COMMAND:
       switch (wParam)
@@ -1083,7 +1083,7 @@ LRESULT WINAPI PrintSetupDlgProc16(HWND16 hWnd, UINT16 wMsg, WPARAM16 wParam,
     {
     case WM_INITDIALOG:
       TRACE("WM_INITDIALOG lParam=%08lX\n", lParam);
-      ShowWindow16(hWnd, SW_SHOWNORMAL);
+      ShowWindow(hWnd, SW_SHOWNORMAL);
       return (TRUE);
     case WM_COMMAND:
       switch (wParam) {
diff --git a/dlls/kernel/Makefile.in b/dlls/kernel/Makefile.in
index e510a6d886d85d306d5a554304c8dfc01645fa87..493680896b6bfa2ed05fb774887955071bf1071a 100644
--- a/dlls/kernel/Makefile.in
+++ b/dlls/kernel/Makefile.in
@@ -23,6 +23,9 @@ RC_SRCS = \
 MC_SRCS = \
 	messages/winerr_enu.mc
 
+EXTRASUBDIRS = \
+	messages
+
 @MAKE_DLL_RULES@
 
 depend $(RC_SRCS:.rc=.s): $(MC_SRCS:.mc=.rc)
diff --git a/dlls/kernel/kernel.spec b/dlls/kernel/kernel.spec
index feb9b8f3a51081131dd2554b313aad72968be0e7..b4802ba27336a29cd58ee83be249f67d0b2c084a 100644
--- a/dlls/kernel/kernel.spec
+++ b/dlls/kernel/kernel.spec
@@ -121,7 +121,7 @@ owner	kernel32
 112 pascal16 GlobalUnWire(word) GlobalUnWire16
 113 equate __AHSHIFT 3
 114 equate __AHINCR 8
-115 pascal16 OutputDebugString(str) OutputDebugString16
+115 pascal16 OutputDebugString(str) OutputDebugStringA
 116 stub InitLib
 117 pascal16 OldYield() OldYield16
 118 pascal16 GetTaskQueueDS() GetTaskQueueDS16
diff --git a/dlls/lzexpand/lzexpand_main.c b/dlls/lzexpand/lzexpand_main.c
index 7e99234c490a6f6499a0278dab1d73d530b0efe9..f6b5ddd2cafe111f21cb38b84ed16b084a0f5540 100644
--- a/dlls/lzexpand/lzexpand_main.c
+++ b/dlls/lzexpand/lzexpand_main.c
@@ -323,7 +323,7 @@ INT WINAPI GetExpandedNameW( LPCWSTR in, LPWSTR out )
 INT16 WINAPI LZRead16( HFILE16 fd, LPVOID buf, UINT16 toread )
 {
     if (IS_LZ_HANDLE(fd)) return LZRead( fd, buf, toread );
-    return _lread16( fd, buf, toread );
+    return _lread( FILE_GetHandle(fd), buf, toread );
 }
 
 
@@ -424,7 +424,7 @@ INT WINAPI LZRead( HFILE fd, LPVOID vbuf, UINT toread )
 LONG WINAPI LZSeek16( HFILE16 fd, LONG off, INT16 type )
 {
     if (IS_LZ_HANDLE(fd)) return LZSeek( fd, off, type );
-    return _llseek16( fd, off, type );
+    return _llseek( FILE_GetHandle(fd), off, type );
 }
 
 
diff --git a/dlls/msacm/driver.c b/dlls/msacm/driver.c
index f02c902393fa633ad9261955aabeb415461637b6..9a185ba4e424cf64bdea2cdbf8bc3221fc881b63 100644
--- a/dlls/msacm/driver.c
+++ b/dlls/msacm/driver.c
@@ -7,6 +7,8 @@
  *		  1999	Eric Pouech
  */
 
+#include <stdio.h>
+
 #include "winbase.h"
 #include "winerror.h"
 #include "windef.h"
@@ -20,7 +22,7 @@
 #include "wineacm.h"
 #include "winreg.h"
 
-DEFAULT_DEBUG_CHANNEL(msacm)
+DEFAULT_DEBUG_CHANNEL(msacm);
 	
 /***********************************************************************
  *           acmDriverAddA (MSACM32.2)
@@ -311,7 +313,7 @@ MMRESULT WINAPI acmDriverPriority(HACMDRIVERID hadid, DWORD dwPriority, DWORD fd
 	return MMSYSERR_ERROR;
     
     for (dwPriorityCounter = 1; ; dwPriorityCounter++)	{
-	wsnprintfA(szSubKey, 17, "Priorty%ld", dwPriorityCounter);
+	snprintf(szSubKey, 17, "Priorty%ld", dwPriorityCounter);
 	lError = RegQueryValueA(hPriorityKey, szSubKey, szBuffer, &lBufferLength);
 	if (lError != ERROR_SUCCESS)
 	    break;
diff --git a/dlls/ole32/ole2.c b/dlls/ole32/ole2.c
index 815e01fbed13526bd4bd71961eb76b0ecfba763e..369fce801616c399bc207dd2ce3474074e5ec2c4 100644
--- a/dlls/ole32/ole2.c
+++ b/dlls/ole32/ole2.c
@@ -2108,7 +2108,7 @@ HGLOBAL16 WINAPI OleMetaFilePictFromIconAndLabel16(
 
     hdc = CreateMetaFile16(NULL);
     DrawIcon(hdc, 0, 0, hIcon); /* FIXME */
-    TextOut16(hdc, 0, 0, lpszLabel, 1); /* FIXME */
+    TextOutA(hdc, 0, 0, lpszLabel, 1); /* FIXME */
     hmf = GlobalAlloc16(0, sizeof(METAFILEPICT16));
     mf = (METAFILEPICT16 *)GlobalLock16(hmf);
     mf->mm = MM_ANISOTROPIC;
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index 922abca8700a8b6fff9a5e6141a117a944bda9d2..44c3c9c1b930670cb4bd53804e525e435b474b2b 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -31,7 +31,6 @@
 #include "winerror.h"
 #include "winreg.h"         /* for HKEY_LOCAL_MACHINE */
 #include "winnls.h"         /* for PRIMARYLANGID */
-#include "wine/winbase16.h" /* for RegQueryValue16(HKEY,LPSTR,LPSTR,LPDWORD) */
 #include "heap.h"
 #include "wine/obj_base.h"
 #include "debugtools.h"
@@ -74,7 +73,7 @@ QueryPathOfRegTypeLib16(
 		return E_FAIL;
 	}
 	plen = sizeof(pathname);
-	if (RegQueryValue16(HKEY_LOCAL_MACHINE,typelibkey,pathname,&plen)) {
+	if (RegQueryValueA(HKEY_LOCAL_MACHINE,typelibkey,pathname,&plen)) {
 		/* try again without lang specific id */
 		if (SUBLANGID(lcid))
 			return QueryPathOfRegTypeLib16(guid,wMaj,wMin,PRIMARYLANGID(lcid),path);
@@ -116,7 +115,7 @@ QueryPathOfRegTypeLib(
 		return E_FAIL;
 	}
 	plen = sizeof(pathname);
-	if (RegQueryValue16(HKEY_LOCAL_MACHINE,typelibkey,pathname,&plen)) {
+	if (RegQueryValueA(HKEY_LOCAL_MACHINE,typelibkey,pathname,&plen)) {
 		/* try again without lang specific id */
 		if (SUBLANGID(lcid))
 			return QueryPathOfRegTypeLib(guid,wMaj,wMin,PRIMARYLANGID(lcid),path);
diff --git a/dlls/psapi/Makefile.in b/dlls/psapi/Makefile.in
index 98c60b67111d25df4d1822483e78405f36733892..35b8544324e3460941b8f72c96acc6c75f52c692 100644
--- a/dlls/psapi/Makefile.in
+++ b/dlls/psapi/Makefile.in
@@ -4,6 +4,7 @@ SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 MODULE    = psapi
 SOVERSION = 1.0
+IMPORTS   = kernel32
 
 C_SRCS = \
 	psapi_main.c
diff --git a/dlls/psapi/psapi.spec b/dlls/psapi/psapi.spec
index e79250696526545b05b56e992536fa05be3a2472..6bfd9f78e1acbb2472f00693d18b73889505e43e 100644
--- a/dlls/psapi/psapi.spec
+++ b/dlls/psapi/psapi.spec
@@ -1,6 +1,8 @@
 name    psapi
 type    win32
 
+import	kernel32.dll
+
 @ stdcall EmptyWorkingSet(long) EmptyWorkingSet
 @ stdcall EnumDeviceDrivers(ptr long ptr) EnumDeviceDrivers
 @ stdcall EnumProcessModules(long ptr long ptr) EnumProcessModules
diff --git a/dlls/richedit/reader.c b/dlls/richedit/reader.c
index 160bff17f59c73def29ae9775ba045c9d4dbed35..826f90cb97d0bc847b9a52f929f1d2cdef709d68 100644
--- a/dlls/richedit/reader.c
+++ b/dlls/richedit/reader.c
@@ -74,6 +74,7 @@
 #include <stdlib.h>
 #include "charlist.h"
 #include "windows.h"
+#include "debugtools.h"
 
 extern HANDLE RICHED32_hHeap;
 
@@ -2807,7 +2808,7 @@ static void
 DefaultMsgProc (s)
 char	*s;
 {
-	fprintf (stderr, "%s", s);
+    MESSAGE( "%s", s);
 }
 
 
@@ -2899,7 +2900,7 @@ static void
 DefaultPanicProc (s)
 char	*s;
 {
-	fprintf (stderr, "%s", s);
+    MESSAGE( "%s", s);
 	/*exit (1);*/
 }
 
diff --git a/dlls/serialui/confdlg.c b/dlls/serialui/confdlg.c
index 7ccb11e7ea2ff8ac16532d12639efe9adccb3689..ac4526765ee635706b251eb303dd0523342067e0 100644
--- a/dlls/serialui/confdlg.c
+++ b/dlls/serialui/confdlg.c
@@ -15,6 +15,7 @@
  */
 
 #include <string.h>
+#include <stdio.h>
 
 #include "winbase.h"
 #include "winreg.h"
@@ -27,7 +28,7 @@
 #include "queue.h"
 #include "message.h"
 
-DEFAULT_DEBUG_CHANNEL(comm)
+DEFAULT_DEBUG_CHANNEL(comm);
 
 HMODULE SERIALUI_hModule = 0;
 DWORD SERIALUI_dwProcessesAttached = 0;
@@ -347,7 +348,7 @@ BOOL WINAPI SERIALUI_ConfigDialogProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARA
         if(!info)
             return FALSE;
         SetWindowLongA(hWnd, DWL_USER, lParam);
-        wsnprintfA(szTitle, sizeof szTitle, "Settings for %s", info->lpszDevice);
+        snprintf(szTitle, sizeof szTitle, "Settings for %s", info->lpszDevice);
         SetWindowTextA(hWnd, szTitle);
         SERIALUI_DCBToDialogInfo(hWnd, info);
         return TRUE;
@@ -455,7 +456,7 @@ BOOL WINAPI SERIALUI_SetDefaultCommConfig(
     if(r != ERROR_SUCCESS)
         return FALSE;
 
-    wsnprintfA(szKeyName, sizeof szKeyName, "%s\\%s", lpszCommKey ,lpszDevice);
+    snprintf(szKeyName, sizeof szKeyName, "%s\\%s", lpszCommKey ,lpszDevice);
     r = RegCreateKeyA(hKeyReg, szKeyName, &hKeyPort);
     if(r == ERROR_SUCCESS)
     {
@@ -507,7 +508,7 @@ BOOL WINAPI SERIALUI_GetDefaultCommConfig(
     if(r != ERROR_SUCCESS)
         return FALSE;
 
-    wsnprintfA(szKeyName, sizeof szKeyName, "%s\\%s", lpszCommKey ,lpszDevice);
+    snprintf(szKeyName, sizeof szKeyName, "%s\\%s", lpszCommKey ,lpszDevice);
     r = RegOpenKeyA(hKeyReg, szKeyName, &hKeyPort);
     if(r == ERROR_SUCCESS)
     {
diff --git a/dlls/shell32/shell32.spec b/dlls/shell32/shell32.spec
index ca01d75dea9830bd16911a408c7ce0b647055936..e13357785ea228d1519629ab4f60392776f18ca9 100644
--- a/dlls/shell32/shell32.spec
+++ b/dlls/shell32/shell32.spec
@@ -249,14 +249,14 @@ import kernel32.dll
  298 stdcall Shell_NotifyIconW(long ptr) Shell_NotifyIconW
  299 stub Shl1632_ThunkData32
  300 stub Shl3216_ThunkData32
- 301 stdcall StrChrA (str long) StrChrA   
+ 301 forward StrChrA shlwapi.StrChrA   
  302 stub StrChrIA
  303 stub StrChrIW
- 304 stdcall StrChrW (wstr long) StrChrW
- 305 stdcall StrCmpNA(str str long) StrCmpNA 
- 306 stdcall StrCmpNIA (str str long) StrCmpNIA
- 307 stdcall StrCmpNIW (wstr wstr long) StrCmpNIW
- 308 stdcall StrCmpNW (wstr wstr long) StrCmpNW
+ 304 forward StrChrW shlwapi.StrChrW
+ 305 forward StrCmpNA shlwapi.StrCmpNA 
+ 306 forward StrCmpNIA shlwapi.StrCmpNIA
+ 307 forward StrCmpNIW shlwapi.StrCmpNIW
+ 308 forward StrCmpNW shlwapi.StrCmpNW
  309 stdcall StrCpyNA (ptr str long) lstrcpynA
  310 stdcall StrCpyNW (ptr wstr long)lstrcpynW
  311 stub StrNCmpA
diff --git a/dlls/shell32/shellstring.c b/dlls/shell32/shellstring.c
index c6f08fdb2a59d21b283b97643dbc3968f4c1ecb7..e4cea86dbe86cc3e5351ffd7d8e4eebdfe7eb8cb 100644
--- a/dlls/shell32/shellstring.c
+++ b/dlls/shell32/shellstring.c
@@ -42,63 +42,6 @@ HRESULT WINAPI StrRetToStrNAW (LPVOID dest, DWORD len, LPSTRRET src, LPITEMIDLIS
 	return StrRetToStrNA (dest, len, src, pidl);
 }
 
-/************************* string functions ****************************/
-
-/*************************************************************************
- * StrChrA					[SHLWAPI]
- */
-LPSTR WINAPI StrChrA (LPCSTR str, INT c)
-{
-	TRACE("%s %i\n", str,c);
-	return strchr(str, c);
-}
-
-/*************************************************************************
- * StrChrW					[NT 4.0:SHELL32.651]
- *
- */
-LPWSTR WINAPI StrChrW (LPWSTR str, WCHAR x )
-{
-	TRACE("%s 0x%04x\n",debugstr_w(str),x);
-	return strchrW(str, x);
-}
-
-/*************************************************************************
- * StrCmpNA					[NT 4.0:SHELL32.*]
- */
-INT WINAPI StrCmpNA ( LPCSTR str1, LPCSTR str2, INT len)
-{
-	TRACE("%s %s %i stub\n", str1,str2,len);
-	return strncmp(str1, str2, len);
-}
-
-/*************************************************************************
- * StrCmpNW					[NT 4.0:SHELL32.*]
- */
-INT WINAPI StrCmpNW ( LPCWSTR wstr1, LPCWSTR wstr2, INT len)
-{
-	TRACE("%s %s %i stub\n", debugstr_w(wstr1),debugstr_w(wstr2),len);
-	return strncmpW(wstr1, wstr2, len);
-}
-
-/*************************************************************************
- * StrCmpNIA					[NT 4.0:SHELL32.*]
- */
-int WINAPI StrCmpNIA ( LPCSTR str1, LPCSTR str2, int len)
-{
-	TRACE("%s %s %i stub\n", str1,str2,len);
-	return strncasecmp(str1, str2, len);
-}
-
-/*************************************************************************
- * StrCmpNIW					[NT 4.0:SHELL32.*]
- */
-int WINAPI StrCmpNIW ( LPCWSTR wstr1, LPCWSTR wstr2, int len)
-{
-	TRACE("%s %s %i stub\n", debugstr_w(wstr1),debugstr_w(wstr2),len);
-	return strncmpiW(wstr1, wstr2, len);
-}
-
 /************************* OLESTR functions ****************************/
 
 /************************************************************************
diff --git a/dlls/tapi32/Makefile.in b/dlls/tapi32/Makefile.in
index c39afbdb367231ae5313a32d21ce099910b7e19d..6332a0d230130929c64b9273b92b266f421ac5cc 100644
--- a/dlls/tapi32/Makefile.in
+++ b/dlls/tapi32/Makefile.in
@@ -4,6 +4,7 @@ SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 MODULE    = tapi32
 SOVERSION = 1.0
+IMPORTS   = kernel32
 
 C_SRCS = \
 	assisted.c \
diff --git a/dlls/tapi32/line.c b/dlls/tapi32/line.c
index c2f8a6fd296812b3b4b37af7d5a2c15e309bed02..b0ca19db62b6a738e85e11f0af61ae0e0502f78e 100644
--- a/dlls/tapi32/line.c
+++ b/dlls/tapi32/line.c
@@ -315,10 +315,10 @@ DWORD WINAPI lineGetCountry(DWORD dwCountryID, DWORD dwAPIVersion, LPLINECOUNTRY
         if(dwCountryID && (TAPI_LCList[i].dwCountryID != dwCountryID))
             continue;
 
-        len  = lstrlenA (TAPI_LCList[i].lpCountryName)+1;
-        len += lstrlenA (TAPI_LCList[i].lpSameAreaRule)+1;
-        len += lstrlenA (TAPI_LCList[i].lpLongDistanceRule)+1;
-        len += lstrlenA (TAPI_LCList[i].lpInternationalRule)+1;
+        len  = strlen (TAPI_LCList[i].lpCountryName)+1;
+        len += strlen (TAPI_LCList[i].lpSameAreaRule)+1;
+        len += strlen (TAPI_LCList[i].lpLongDistanceRule)+1;
+        len += strlen (TAPI_LCList[i].lpInternationalRule)+1;
 
         if(dwAvailSize<(dwOffset+len))
         {
@@ -342,35 +342,35 @@ DWORD WINAPI lineGetCountry(DWORD dwCountryID, DWORD dwAPIVersion, LPLINECOUNTRY
             lpLCE[i].dwNextCountryID = TAPI_LCList[i+1].dwCountryID;
 
         /* add country name */
-        len = lstrlenA(TAPI_LCList[i].lpCountryName)+1;
+        len = strlen(TAPI_LCList[i].lpCountryName)+1;
         lpLCE[i].dwCountryNameSize = len;
         lpLCE[i].dwCountryNameOffset = dwOffset;
         lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
-        lstrcpyA(lpstr, TAPI_LCList[i].lpCountryName);
+        strcpy(lpstr, TAPI_LCList[i].lpCountryName);
         dwOffset+=len;
 
         /* add Same Area Rule */
-        len = lstrlenA (TAPI_LCList[i].lpSameAreaRule)+1;
+        len = strlen (TAPI_LCList[i].lpSameAreaRule)+1;
         lpLCE[i].dwSameAreaRuleSize = len;
         lpLCE[i].dwSameAreaRuleOffset = dwOffset;
         lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
-        lstrcpyA(lpstr, TAPI_LCList[i].lpSameAreaRule);
+        strcpy(lpstr, TAPI_LCList[i].lpSameAreaRule);
         dwOffset+=len;
 
         /* add Long Distance Rule */
-        len = lstrlenA (TAPI_LCList[i].lpLongDistanceRule)+1;
+        len = strlen (TAPI_LCList[i].lpLongDistanceRule)+1;
         lpLCE[i].dwLongDistanceRuleSize = len;
         lpLCE[i].dwLongDistanceRuleOffset = dwOffset;
         lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
-        lstrcpyA(lpstr, TAPI_LCList[i].lpLongDistanceRule);
+        strcpy(lpstr, TAPI_LCList[i].lpLongDistanceRule);
         dwOffset+=len;
 
         /* add Long Distance Rule */
-        len = lstrlenA (TAPI_LCList[i].lpInternationalRule)+1;
+        len = strlen (TAPI_LCList[i].lpInternationalRule)+1;
         lpLCE[i].dwInternationalRuleSize = len;
         lpLCE[i].dwInternationalRuleOffset = dwOffset;
         lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
-        lstrcpyA(lpstr, TAPI_LCList[i].lpInternationalRule);
+        strcpy(lpstr, TAPI_LCList[i].lpInternationalRule);
         dwOffset+=len;
     }
 
diff --git a/dlls/tapi32/tapi32.spec b/dlls/tapi32/tapi32.spec
index ea4f06e574469e7ee35810711357eac66ea0896e..44a16cb172c7509a3d5dfacf02442dcafac553ae 100644
--- a/dlls/tapi32/tapi32.spec
+++ b/dlls/tapi32/tapi32.spec
@@ -1,6 +1,8 @@
 name	tapi32
 type	win32
 
+import	kernel32.dll
+
 @ stdcall lineAccept(long str long) lineAccept
 @ stdcall lineAddProvider(str long ptr) lineAddProvider
 @ stdcall lineAddToConference(long long) lineAddToConference
diff --git a/dlls/winmm/mmsystem.c b/dlls/winmm/mmsystem.c
index 99c0673168aab582c089afc831e50fc35c4cccaf..a0e35192cbf0312380ad6fc227af0baf503c2196 100644
--- a/dlls/winmm/mmsystem.c
+++ b/dlls/winmm/mmsystem.c
@@ -1737,7 +1737,7 @@ UINT16	WINAPI MCI_DefYieldProc(UINT16 wDevID, DWORD data)
     
     TRACE("(0x%04x, 0x%08lx)\n", wDevID, data);
 
-    if ((HIWORD(data) != 0 && GetActiveWindow16() != HIWORD(data)) ||
+    if ((HIWORD(data) != 0 && GetActiveWindow() != HIWORD(data)) ||
 	(GetAsyncKeyState(LOWORD(data)) & 1) == 0) {
 	UserYield16();
 	ret = 0;
diff --git a/dlls/winmm/mmsystem.spec b/dlls/winmm/mmsystem.spec
index 5c8d669adcdaab6049bd58e23f835ada4c5e78c9..741c423e889a0c75f664bf446b3e7b014f7c2e85 100644
--- a/dlls/winmm/mmsystem.spec
+++ b/dlls/winmm/mmsystem.spec
@@ -8,7 +8,7 @@ owner	winmm
 5      pascal  mmsystemGetVersion() mmsystemGetVersion16
 6      pascal  DriverProc(long word word long long) DriverProc16
 8      pascal  WMMMIDIRUNONCE() WMMMidiRunOnce16
-30     pascal16 OutputDebugStr(str) OutputDebugString16
+30     pascal16 OutputDebugStr(str) OutputDebugStringA
 31     pascal  DriverCallback(long word word word long long long) DriverCallback16
 32     pascal  StackEnter() StackEnter16
 33     pascal  StackLeave() StackLeave16
diff --git a/include/wine/winbase16.h b/include/wine/winbase16.h
index 8e6a5c1cb22a840bb7ac30385451d7a9fbed1df3..a0ce055e08d55e4e1a4e3313dabc9c483d916ca2 100644
--- a/include/wine/winbase16.h
+++ b/include/wine/winbase16.h
@@ -167,7 +167,6 @@ BOOL16      WINAPI LocalUnlock16(HLOCAL16);
 LPVOID      WINAPI LockResource16(HGLOBAL16);
 HGLOBAL16   WINAPI LockSegment16(HGLOBAL16);
 FARPROC16   WINAPI MakeProcInstance16(FARPROC16,HANDLE16);
-VOID        WINAPI OutputDebugString16(LPCSTR);
 DWORD       WINAPI RegCloseKey16(HKEY);
 DWORD       WINAPI RegCreateKey16(HKEY,LPCSTR,LPHKEY);
 DWORD       WINAPI RegDeleteKey16(HKEY,LPCSTR);