diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt
index 8bbee89..7357542 100644
--- a/runtime/doc/os_win32.txt
+++ b/runtime/doc/os_win32.txt
@@ -1,4 +1,4 @@
-*os_win32.txt*  For Vim version 8.0.  Last change: 2016 Aug 28
+*os_win32.txt*  For Vim version 8.0.  Last change: 2016 Oct 12
 
 
 		  VIM REFERENCE MANUAL    by George Reilly
@@ -7,20 +7,18 @@
 						*win32* *Win32* *MS-Windows*
 This file documents the idiosyncrasies of the Win32 version of Vim.
 
-The Win32 version of Vim works on Windows NT, 95, 98, ME, XP, Vista and
-Windows 7.  There are both console and GUI versions.
+The Win32 version of Vim works on Windows XP, Vista, 7, 8 and 10.  There are
+both console and GUI versions.
 
 The 32 bit version also runs on 64 bit MS-Windows systems.
 
-There is GUI version for use in the Win32s subsystem in Windows 3.1[1].  You
-can also use the 32-bit DOS version of Vim instead.  See |os_msdos.txt|.
-
 1. Known problems		|win32-problems|
 2. Startup			|win32-startup|
 3. Restore screen contents	|win32-restore|
 4. Using the mouse		|win32-mouse|
-5. Running under Windows 3.1	|win32-win3.1|
-6. Win32 mini FAQ		|win32-faq|
+5. Running under Windows 95	|win32-win95|
+6. Running under Windows 3.1	|win32-win3.1|
+7. Win32 mini FAQ		|win32-faq|
 
 Additionally, there are a number of common Win32 and DOS items:
 File locations			|dos-locations|
@@ -43,20 +41,7 @@
 For compiling see "src/INSTALLpc.txt".			*win32-compiling*
 
 ==============================================================================
-1. Known problems				*windows95* *win32-problems*
-
-There are a few known problems with running in a console on Windows 95.  As
-far as we know, this is the same in Windows 98 and Windows ME.
-
-Comments from somebody working at Microsoft: "Win95 console support has always
-been and will always be flaky".
-1.  Dead key support doesn't work.
-2.  Resizing the window with ":set columns=nn lines=nn" works, but executing
-    external commands MAY CAUSE THE SYSTEM TO HANG OR CRASH.
-3.  Screen updating is slow, unless you change 'columns' or 'lines' to a
-    non-DOS value.  But then the second problem applies!
-
-If this bothers you, use the 32 bit MS-DOS version or the Win32 GUI version.
+1. Known problems					*win32-problems*
 
 When doing file name completion, Vim also finds matches for the short file
 name.  But Vim will still find and use the corresponding long file name.  For
@@ -141,60 +126,20 @@
 the console.
 
 ==============================================================================
-5. Running under Windows 3.1				*win32-win3.1*
+5. Running under Windows 95				*win32-win95*
+					*windows95* *windows98* *windowsme*
+Windows 95/98/ME support was removed in patch 8.0.0029  If you want to use it
+you will need to get a version older than that.
 
-						*win32s* *windows-3.1*
+==============================================================================
+6. Running under Windows 3.1				*win32-win3.1*
+
+					*win32s* *windows-3.1* *gui-w32s*
 There was a special version of Gvim that runs under Windows 3.1 and 3.11.
 Support was removed in patch 7.4.1363.
 
 ==============================================================================
-6. Win32 mini FAQ					*win32-faq*
-
-Q. Why does the Win32 version of Vim update the screen so slowly on Windows 95?
-A. The support for Win32 console mode applications is very buggy in Win95.
-   For some unknown reason, the screen updates very slowly when Vim is run at
-   one of the standard resolutions (80x25, 80x43, or 80x50) and the 16-bit DOS
-   version updates the screen much more quickly than the Win32 version.
-   However, if the screen is set to some other resolution, such as by ":set
-   columns=100" or ":set lines=40", screen updating becomes about as fast as
-   it is with the 16-bit version.
-
-   WARNING: Changing 'columns' may make Windows 95 crash while updating the
-   window (complaints --> Microsoft).  Since this mostly works, this has not
-   been disabled, but be careful with changing 'columns'.
-
-   Changing the screen resolution makes updates faster, but it brings
-   additional problems.  External commands (e.g., ":!dir") can cause Vim to
-   freeze when the screen is set to a non-standard resolution, particularly
-   when 'columns' is not equal to 80.  It is not possible for Vim to reliably
-   set the screen resolution back to the value it had upon startup before
-   running external commands, so if you change the number of 'lines' or
-   'columns', be very, very careful.  In fact, Vim will not allow you to
-   execute external commands when 'columns' is not equal to 80, because it is
-   so likely to freeze up afterwards.
-
-   None of the above applies on Windows NT.  Screen updates are fast, no
-   matter how many 'lines' or 'columns' the window has, and external commands
-   do not cause Vim to freeze.
-
-Q. So if the Win32 version updates the screen so slowly on Windows 95 and the
-   16-bit DOS version updates the screen quickly, why would I want to run the
-   Win32 version?
-A. Firstly, the Win32 version isn't that slow, especially when the screen is
-   set to some non-standard number of 'lines' or 'columns'.  Secondly, the
-   16-bit DOS version has some severe limitations: It can't do big changes and
-   it doesn't know about long file names.  The Win32 version doesn't have these
-   limitations and it's faster overall (the same is true for the 32-bit DJGPP
-   DOS version of Vim).  The Win32 version is smarter about handling the
-   screen, the mouse, and the keyboard than the DJGPP version is.
-
-Q. And what about the 16-bit DOS version versus the Win32 version on NT?
-A. There are no good reasons to run the 16-bit DOS version on NT.  The Win32
-   version updates the screen just as fast as the 16-bit version does when
-   running on NT.  All of the above disadvantages apply.  Finally, DOS
-   applications can take a long time to start up and will run more slowly.  On
-   non-Intel NT platforms, the DOS version is almost unusably slow, because it
-   runs on top of an 80x86 emulator.
+7. Win32 mini FAQ					*win32-faq*
 
 Q. How do I change the font?
 A. In the GUI version, you can use the 'guifont' option.  Example: >
@@ -202,47 +147,6 @@
 <  In the console version, you need to set the font of the console itself.
    You cannot do this from within Vim.
 
-Q. When I change the size of the console window with ':set lines=xx' or
-   similar, the font changes! (Win95)
-A. You have the console font set to 'Auto' in Vim's (or your MS-DOS prompt's)
-   properties.  This makes W95 guess (badly!) what font is best.  Set an explicit
-   font instead.
-
-Q. Why can't I paste into Vim when running Windows 95?
-A. In the properties dialog box for the MS-DOS window, go to "MS-DOS
-   Prompt/Misc/Fast pasting" and make sure that it is NOT checked.  You should
-   also do ":set paste" in Vim to avoid unexpected effects.	|'paste'|
-
-Q. How do I type dead keys on Windows 95, in the console version?
-   (A dead key is an accent key, such as acute, grave, or umlaut, that doesn't
-   produce a character by itself, but when followed by another key, produces
-   an accented character, such as a-acute, e-grave, u-umlaut, n-tilde, and so
-   on.  Very useful for most European languages.  English-language keyboard
-   layouts don't use dead keys, as far as we know.)
-A. You don't.  The console mode input routines simply do not work correctly in
-   Windows 95, and I have not been able to work around them.  In the words
-   of a senior developer at Microsoft:
-	Win95 console support has always been and will always be flaky.
-
-	The flakiness is unavoidable because we are stuck between the world of
-	MS-DOS keyboard TSRs like KEYB (which wants to cook the data;
-	important for international) and the world of Win32.
-
-	So keys that don't "exist" in MS-DOS land (like dead keys) have a
-	very tenuous existence in Win32 console land.  Keys that act
-	differently between MS-DOS land and Win32 console land (like
-	capslock) will act flaky.
-
-	Don't even _mention_ the problems with multiple language keyboard
-	layouts...
-
-   You may be able to fashion some sort of workaround with the digraphs
-   mechanism.							|digraphs|
-
-   The best solution is to use the Win32 GUI version gvim.exe.  Alternatively,
-   you can try one of the DOS versions of Vim where dead keys reportedly do
-   work.
-
 Q. How do I type dead keys on Windows NT?
 A. Dead keys work on NT 3.51.  Just type them as you would in any other
    application.
@@ -349,28 +253,6 @@
 <  The first command runs notepad minimized and the second one runs it
    normally.
 
-Q. I'm using Win32s, and when I try to run an external command like "make",
-   Vim doesn't wait for it to finish!  Help!
-A. The problem is that a 32-bit application (Vim) can't get notification from
-   Windows that a 16-bit application (your DOS session) has finished.  Vim
-   includes a work-around for this, but you must set up your DOS commands to
-   run in a window, not full-screen.  Unfortunately the default when you
-   install Windows is full-screen.  To change this:
-   1) Start PIF editor (in the Main program group).
-   2) Open the file "_DEFAULT.PIF" in your Windows directory.
-   3) Changes the display option from "Full Screen" to "Windowed".
-   4) Save and exit.
-
-   To test, start Vim and type >
-	:!dir C:\<CR>".
-<  You should see a DOS box window appear briefly with the directory listing.
-
-Q. I use Vim under Win32s and NT.  In NT, I can define the console to default to
-   50 lines, so that I get a 80x50 shell when I ':sh'.  Can I do the same in
-   W3.1x, or am I stuck with 80x25?
-A. Edit SYSTEM.INI and add 'ScreenLines=50' to the [NonWindowsApp] section.  DOS
-   prompts and external DOS commands will now run in a 50-line window.
-
 						*windows-icon*
 Q. I don't like the Vim icon, can I change it?
 A. Yes, place your favorite icon in bitmaps/vim.ico in a directory of
