Windows/386 2.01

Windows/386 2.01 is an early release of Windows 2.x for Compaq i386-based computers. It predates the earliest known retail release of Windows 2.0 by about three months, as this release was rushed likely to coincide with the launch of the Compaq Portable 386 in October 1987.
This is the first release of the Windows/386 series, which uses the virtual 8086 mode of the i386 to provide better compatibility for MS-DOS applications. Compaq was heavily involved in the development of Windows/386, having introduced the first i386-based IBM PC compatible machine in 1986, almost a year before IBM itself.
== Findings, fixes, enhancements ==
=== References to past versions ===
==== Read Me ====
Having Windows/386 on the same hard disk as Windows 2.0 or Windows 1.04:
--------------------------------------------------------------
Windows/386 and earlier versions of Windows have many filenames in
common. Unless you are very careful setting up your path, it is
possible to have Windows/386 using files from your earlier copies of
Windows. This can cause a variety of problems. It is suggested that
you delete any other copies of Windows from your machine before
installing Windows/386.
=== Interesting facts ===
==== VGA 640x450 support ====
Deciding which VGA driver to use with Windows/386:
--------------------------------------------------------------
When you are running the Windows/386 setup program, you are given
two choices if you have a VGA or compatible display adapter. The
first choice, "VGA, 640x480", will run Windows itself in 640 by
480 mode. The second choice, "VGA, 640x450", will run Windows in
640 by 450 mode. If you run Windows in 640 by 480 mode you will
not be able to run EGA graphics applications in windowed or background
modes. If you run Windows in 640 by 450 mode you will be able to run EGA
graphics applications in windowed and background modes. For most users we
recommend they select the 640 by 450 mode since the loss of 30 lines in 
the horizontal is not very noticeable.
==== Dummied out Windows on OS/2 support ====
The DOS version check is explicitly coded to fail on any version that is not 2.x through 4.x. This is to lock out DOS 1.x, which are missing many features, as well as OS/2, which reports version 5.0 (on beta versions), and a version equivalent to (major version * 10) in later versions. (Incidentally, it seems that Multitasking MS-DOS 4 is not explicitly checked for any more, unlike in Windows 1.0 versions). However, the DOS version is copied to two internal kernel variables (one for the major version and one for the minor version) which is returned by GETVERSION in the dh and dl registers, but not exposed to the Windows API; it is only returned if you call the function from assembly code, and even then is not documented. 
There are numerous checks in KERNEL.EXE for the value of this internal variable. However, there are several checks for a major DOS version of 5.0, or 3.0 or higher, that when a DOS version of 5.0 is detected, directly skip MS-DOS API int 21h calls (as they do not work in a protected-mode system like OS/2). This appears to be very strong evidence that the Win+4 project actually did exist in some form, and that Windows ran on OS/2 (or at least its penalty box) at one point. Not all int 21h calls are skipped though, so this support seems to have been removed very early on. Patching the kernel is required to make these checks run, as well as using a beta version of OS/2 1.0, since later versions report 10.00.
== Gallery ==
=== System ===
2.01-Splash.png|Boot screen
Win2.01 386 Desktop.png|Desktop
2.01-12.PNG|MS-DOS Executive
Win2.01 386 DOSPrompt.png|MS-DOS Prompt
2.01-14.PNG|Calculator
2.01-15.PNG|Calendar
2.01-16.PNG|Cardfile
2.01-17.PNG|Clipboard
2.01-18.PNG|Clock
2.01-19.PNG|Control Panel
2.01-20.PNG|Notepad
2.01-21.PNG|Paint
2.01-22.PNG|Reversi
2.01-23.PNG|Terminal
2.01-24.PNG|Write
2.01-25.PNG|Overlapping windows demonstration
2.01-26.PNG|End session
=== Setup ===
2.01-1.PNG|Initial setup
2.01-2.PNG|Installation path
2.01-3.PNG|Computer selection
2.01-4.PNG|Display selection
2.01-5.PNG|Keyboard layout
2.01-6.PNG|Mouse selection
2.01-7.PNG|System confirmation
2.01-8.PNG|Printers
2.01-9.PNG|Locale
2.01-10.PNG|Setup progress
2.01-11.PNG|Disk prompt
Category:Retail builds of Windows 2.x