diff --git a/controls/menu.c b/controls/menu.c
index 0ce05da1ec1621d731b6b45415fa258e61f26c8a..8766138c4b24645b13c1cf4b2f276a9d4f0fdeb2 100644
--- a/controls/menu.c
+++ b/controls/menu.c
@@ -2238,7 +2238,7 @@ static HMENU MENU_PtMenu( HMENU hMenu, POINT16 pt )
  *
  * Execute a menu item (for instance when user pressed Enter).
  * Return the wID of the executed item. Otherwise, -1 indicating
- * that no menu item wase executed;
+ * that no menu item was executed;
  * Have to receive the flags for the TrackPopupMenu options to avoid
  * sending unwanted message.
  *
diff --git a/dlls/ddraw/ddraw/x11.c b/dlls/ddraw/ddraw/x11.c
index 5c6a44f2464aa5060bce324c3083a8354b4be990..f7f61b896f5b33c005af6e5a5e9562cce30b9b9f 100644
--- a/dlls/ddraw/ddraw/x11.c
+++ b/dlls/ddraw/ddraw/x11.c
@@ -493,14 +493,14 @@ static HRESULT WINAPI Xlib_IDirectDrawImpl_SetDisplayMode(
       return DDERR_UNSUPPORTEDMODE;
 
     case -1:
-      /* No convertion */
+      /* No conversion */
       This->d.pixel_convert = NULL;
       This->d.palette_convert = NULL;
       break;
 
     default:
-      DPRINTF("DirectDraw warning: running in depth-convertion mode. Should run using a %ld depth for optimal performances.\n", depth);
-      /* Set the depth convertion routines */
+      DPRINTF("DirectDraw warning: running in depth-conversion mode. Should run using a %ld depth for optimal performances.\n", depth);
+      /* Set the depth conversion routines */
       This->d.pixel_convert = ModeEmulations[c].funcs.pixel_convert;
       This->d.palette_convert = ModeEmulations[c].funcs.palette_convert;
     }
diff --git a/dlls/ddraw/ddraw_private.h b/dlls/ddraw/ddraw_private.h
index 50835ea42fce9ed293eaf8bd42ac73acd4ba382c..c8fba96ead32b4ee162128502d3d815535d00cb8 100644
--- a/dlls/ddraw/ddraw_private.h
+++ b/dlls/ddraw/ddraw_private.h
@@ -198,7 +198,7 @@ struct IDirectDrawPaletteImpl
     DWORD		ref;
 
     /* IDirectDrawPalette fields */
-    IDirectDrawImpl*		ddraw;	/* direct draw, no referencecount */
+    IDirectDrawImpl*		ddraw;	/* direct draw, no reference count */
     PALETTEENTRY	palents[256];
 
     /* This is to store the palette in 'screen format' */
diff --git a/dlls/ddraw/mesa_private.h b/dlls/ddraw/mesa_private.h
index 1fee10f16dddc1fbb9ec6084b2e767116fe5171a..d14f74d0ee8b6a29a2caaf77def82bf0793a5536 100644
--- a/dlls/ddraw/mesa_private.h
+++ b/dlls/ddraw/mesa_private.h
@@ -1,7 +1,7 @@
 /* MESA private include file
    (c) 1998 Lionel ULMER
    
-   This files contains all the structure that are not exported
+   This file contains all structures that are not exported
    through d3d.h and all common macros. */
 
 #ifndef __GRAPHICS_WINE_MESA_PRIVATE_H
diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c
index d5a244858712cfb31a2579fbc04d83e111481d64..a519b8345c115ae69016b92a3dac2aaeb7a9232f 100644
--- a/dlls/dplayx/dplay.c
+++ b/dlls/dplayx/dplay.c
@@ -41,7 +41,7 @@ typedef struct IDirectPlay4Impl IDirectPlay4Impl;
 /*****************************************************************************
  * IDirectPlay implementation structure
  *
- * The philosophy behind this extra pointer derefernce is that I wanted to
+ * The philosophy behind this extra pointer dereference is that I wanted to
  * have the same structure for all types of objects without having to do
  * alot of casting. I also only wanted to implement an interface in the
  * object it was "released" with IUnknown interface being implemented in the 1 version.
diff --git a/dlls/winmm/wineoss/audio.c b/dlls/winmm/wineoss/audio.c
index b331a6d00118ca9ba8549d3dec2f520a15457c5a..832de6b108ca288fc51963a070892132fd85b9e0 100644
--- a/dlls/winmm/wineoss/audio.c
+++ b/dlls/winmm/wineoss/audio.c
@@ -680,7 +680,7 @@ static DWORD wodOpen(WORD wDevID, LPWAVEOPENDESC lpDesc, DWORD dwFlags)
     audio = open(SOUND_DEV, O_WRONLY|O_NDELAY, 0);
     if (audio == -1) {
 	WARN("can't open (%d)!\n", errno);
-	return MMSYSERR_ALLOCATED ;
+	return MMSYSERR_ALLOCATED;
     }
 
     WOutDev[wDevID].wFlags = HIWORD(dwFlags & CALLBACK_TYPEMASK);
diff --git a/dlls/winmm/wineoss/midi.c b/dlls/winmm/wineoss/midi.c
index dfc06377feee2f9f2f4d4610a55bc0c89fbca0b8..cd55203aa12c800d454acb9d465caf18dd09dac1 100644
--- a/dlls/winmm/wineoss/midi.c
+++ b/dlls/winmm/wineoss/midi.c
@@ -253,7 +253,7 @@ static	BOOL OSS_MidiInit(void)
 	minfo.device = i;
 	status = ioctl(midiSeqFD, SNDCTL_MIDI_INFO, &minfo);
 	if (status == -1) {
-	    ERR("ioctl on midi info failed.\n");
+	    ERR("ioctl on midi info for device %d failed.\n", i);
 	    midiCloseSeq();
 	    return TRUE;
 	}
diff --git a/documentation/config b/documentation/config
index a4269903799803589ce28a1dac18aaedfaed40a7..5597e2c23f1733d8d2eca85c9620372d519bae7c 100644
--- a/documentation/config
+++ b/documentation/config
@@ -90,11 +90,10 @@ Device=/dev/xx
 
 Use this ONLY for floppy and cdrom devices. Using it on Extended2 partitions can
 have dire results (When a windows app tries to do a lowlevel write, they do it
-in a FAT way -- FAT does not mix with Extended2). Currently, it is useless when
-used on cdrom's, however functionality could be implemented later to allow wine
-to automatically find the cdrom label.
-NOTE: This setting is not terribly important, almost all apps will have no
-problem if it remains unspecified. If you are unsure about specifying device
+in a FAT way -- FAT does not mix with Extended2).
+NOTE: This setting is not really important, almost all apps will have no
+problem if it remains unspecified. For CD-ROMs you might want to add it to get
+automatic label detection, though. If you are unsure about specifying device
 names, just leave out this setting for your drives.
 
 Here is a setup for Drive X, a generic hard drive:
diff --git a/documentation/distributors b/documentation/distributors
index 59fb180046d99593b346de1e9b9b0bd8321822b0..2ebcf263879b2b3cbe69e3bd845b618145633f69 100644
--- a/documentation/distributors
+++ b/documentation/distributors
@@ -1,9 +1,10 @@
 		A small WINE distribution guide.
 
 While packaging WINE for one of the Linux distributions I came across
-several points which have been clarified yet. Particular a how-to for WINE
-packaging distributors is missing. This document tries to give a brief
-overview over the rationales I thought up and how I tried to implement it.
+several points which have not been clarified yet. Particularly a how-to
+for WINE packaging distributors is missing. This document tries to give
+a brief overview over the rationales I thought up and how I tried to
+implement it.
 (While the examples use "rpm" most of this stuff can be applied to other
 packagers too.)
 
@@ -16,11 +17,11 @@ environment !
 
 A WINE install should:
 a. Not have a world writeable directory (-tree).
-b. Require only as much user input as possible. It would be very good if it
+b. Require only as much user input as needed. It would be very good if it
    would not require any at all. Just let the system administrator do "rpm
    -i wine.rpm" and let any user be able to run "wine sol.exe" instantly.
-c. Give the user as much flexibility to install his own applications, do
-   his own configuring etc.
+c. Give the user as much flexibility as possible to install his own
+   applications, do his own configuring etc.
 d. Come as preconfigured as possible, so the user does not need to change
    any configuration files.
 e. Use only as much diskspace as needed per user.
@@ -68,7 +69,7 @@ Example (split this into %build and %install section for rpm):
 
 Here we unfortunately do need to create wineuser.reg and winesystem.reg
 from the WINE distributed winedefault.reg. This can be done using
-./regapi once for one example user and the reusing his .wine/user.reg
+./regapi once for one example user and then reusing his .wine/user.reg
 and .wine/system.reg files. [FIXME: this needs to be done better]
 
 	install -m 644 wine.sytemreg $BR/etc/wine/
@@ -175,7 +176,7 @@ WINE. This script should:
 
 - Symlink all .dll and .exe files from the original windows installation to
   the windows directory. Why? Some program reference "%windowsdir%/file.dll"
-  or "%systemdir%/file.dll" directly and fail if there are not present.
+  or "%systemdir%/file.dll" directly and fail if they are not present.
 
   This will give a huge number of symlinks, yes. However, if an installer
   later overwrites on of those files, it will overwrite the symlink (so
diff --git a/documentation/fonts b/documentation/fonts
index 9b96a33a3f918ecd0978c6c471160d79c85c13cb..3c7e7978640f75ff4a8cef8a7ff1471a02903e2b 100644
--- a/documentation/fonts
+++ b/documentation/fonts
@@ -12,11 +12,11 @@ How To Convert Windows Fonts
 If you have access to a Windows installation you should use 
 fnt2bdf utility (found in the 'tools)' directory to convert
 bitmap fonts (VGASYS.FON, SSERIFE.FON, and SERIFE.FON) into 
-the format that X Window System can recognize. 
+the format that the X Window System can recognize. 
 
 Step 1. Extract bitmap fonts with 'fnt2bdf'.
 
-Step 2. Convert .bdf files produced by the Step 1 into
+Step 2. Convert .bdf files produced by Step 1 into
 	.pcf files with 'bdftopcf'.
 
 Step 3. Copy .pcf files to the font server directory which
diff --git a/documentation/no-windows b/documentation/no-windows
index ba62a5725d4472fc8fb96943852123d36d2e80ee..8cc1065efa78d49cdc0cb88cfe64ab359e4b3a2f 100644
--- a/documentation/no-windows
+++ b/documentation/no-windows
@@ -35,9 +35,10 @@ designed to make this possible. Here are some tips by Juergen Schmied
 (and others) on how to proceed. This assumes that your C:\windows
 directory in the configuration file does not point to a native Windows
 installation but is in a separate Unix file system. (For instance,
-C:\windows is really /home/ego/wine/drives/c).
+"C:\windows" is really subdirectory "windows" located in
+"/home/ego/wine/drives/c").
 
-- Run the application with   -debugmsg +module,+file   to find out
+- Run the application with   --debugmsg +module,+file   to find out
   which files are needed. Copy the required DLL's one by one to the
   C:\windows\system directory. Do not copy KERNEL/KERNEL32, GDI/GDI32,
   or USER/USER32. These implement the core functionality of the
diff --git a/misc/registry.c b/misc/registry.c
index 01b9645f5e4f0f2665dc17a19044f01f3a5bcf8d..b39181182a5288c3cd8c12a78f984d4f7189c2ea 100644
--- a/misc/registry.c
+++ b/misc/registry.c
@@ -128,7 +128,7 @@ static void REGISTRY_Init(void) {
 	RegSetValueExA(hkey,"Identifier",0,REG_SZ,"SystemType WINE",strlen("SystemType WINE"));
 	RegCloseKey(hkey);
 
-	/* \\SOFTWARE\\Microsoft\\Window NT\\CurrentVersion
+	/* \\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion
 	 *						CurrentVersion
 	 *						CurrentBuildNumber
 	 *						CurrentType
@@ -248,7 +248,7 @@ static char* _wine_read_USTRING( char *buf, LPWSTR *str )
 			s++;
 			if (!*s) {
 				/* Dangling \ ... may only happen if a registry
-				 * write was short. FIXME: What do to?
+				 * write was short. FIXME: What to do?
 				 */
 				 break;
 			}
@@ -1435,7 +1435,8 @@ void SHELL_LoadRegistry( void )
   REGISTRY_Init();
   SetLoadLevel(0);
 
-  if (RegCreateKeyA(HKEY_USERS, ".Default", &hkey_users_default)) hkey_users_default = 0;
+  if (RegCreateKeyA(HKEY_USERS, ".Default", &hkey_users_default))
+	  hkey_users_default = 0;
 
   GetWindowsDirectoryA( windir, MAX_PATHNAME_LEN );
 
@@ -1577,7 +1578,7 @@ void SHELL_LoadRegistry( void )
       _wine_loadreg( HKEY_USERS, SAVE_USERS_DEFAULT );
 
       /* 
-       * Load the global machine defaults directly form sysconfdir
+       * Load the global machine defaults directly from sysconfdir
        */
       _wine_loadreg( HKEY_LOCAL_MACHINE, SAVE_LOCAL_MACHINE_DEFAULT );
   }
diff --git a/win32/kernel32.c b/win32/kernel32.c
index 8b391e7aa745a7a70062177e1a64d204202b749f..025357e7b4071240f52fbb46d125289d706ab2b6 100644
--- a/win32/kernel32.c
+++ b/win32/kernel32.c
@@ -144,8 +144,8 @@ static LPVOID _loadthunk(LPCSTR module, LPCSTR func, LPCSTR module32,
     if (   !(ordinal = NE_GetOrdinal(hmod, func))
         || !(TD16 = PTR_SEG_TO_LIN(NE_GetEntryPointEx(hmod, ordinal, FALSE))))
     {
-        ERR("(%s, %s, %s): Unable to find '%s'\n",
-                   module, func, module32, func);
+        ERR("Unable to find thunk data '%s' in %s, required by %s (conflicting/incorrect DLL versions !?).\n",
+                   func, module, module32);
         return 0;
     }
 
@@ -552,7 +552,7 @@ void WINAPI FT_Exit56(CONTEXT86 *context) { FT_Exit(context, 56); }
  *	00: DWORD	length		? don't know exactly
  *	04: SEGPTR	ptr		? where does it point to?
  * The pointer ptr is written into the first DWORD of 'thunk'.
- * (probably correct implemented)
+ * (probably correctly implemented)
  * [ok probably]
  * RETURNS
  *	segmented pointer to thunk?
diff --git a/windows/driver.c b/windows/driver.c
index f80ce5c8615b3fd5de8fc08023c0915fe22e12f5..7dcf964e44ebcd336f5c7aa8ca980a54fcf3dd96 100644
--- a/windows/driver.c
+++ b/windows/driver.c
@@ -814,7 +814,7 @@ HDRVR16 WINAPI OpenDriver16(LPCSTR lpDriverName, LPCSTR lpSectionName, LPARAM lP
 	hDriver = DRIVER_TryOpenDriver16(drvName, lParam, FALSE);
     }
     if (!hDriver)
-	ERR("Failed to open driver %s from section %s\n", lpDriverName, lpSectionName);
+	ERR("Failed to open driver %s from system.ini file, section %s\n", lpDriverName, lpSectionName);
     else 
 	TRACE("=> %08x\n", hDriver);
     return hDriver;
diff --git a/windows/message.c b/windows/message.c
index 2c42ad6a913ea4a955cd45bb17631412fc2354c4..ed5ea2de9bb1824dc691e3b4aba4340332b06477 100644
--- a/windows/message.c
+++ b/windows/message.c
@@ -1971,7 +1971,7 @@ DWORD WINAPI MsgWaitForMultipleObjects( DWORD nCount, HANDLE *pHandles,
       /*
        * This is a temporary solution to a big problem.
        * You see, the main thread of all Win32 programs is created as a 16 bit
-       * task. This means that if you want on an event using Win32 synchronization
+       * task. This means that if you wait on an event using Win32 synchronization
        * methods, the 16 bit scheduler is stopped and things might just stop happening.
        * This implements a semi-busy loop that checks the handles to wait on and
        * also the message queue. When either one is ready, the wait function returns.