Windows 3.0

Windows 3.0, a graphical environment, is the third major release of Microsoft Windows, and was released on May 22, 1990. It became the first widely successful version of Windows and a rival to Apple Macintosh and the Commodore Amiga on the graphical user interface (GUI) front. It was followed by Windows 3.1.

Windows 3.0 originated in 1989 when David Weise and Murray Sargent independently decided to develop a protected mode Windows as an experiment. They cobbled together a rough prototype and presented it to company executives, who were impressed enough to approve it as an official project.

Features
Windows 3.0 succeeded Windows 2.1x and included a significantly revamped user interface as well as technical improvements to make better use of the memory management capabilities of Intel's 80286 and 80386 processors. Text mode programs written for MS-DOS can be run within a window — a feature previously available in a more limited form with Windows/386 2.1 — making the system usable as a crude multitasking base for legacy programs. However, this was of limited use for the home market, where most games and entertainment programs continued to require raw DOS access.

The MS-DOS Executive file manager/program launcher was replaced with the icon-based Program Manager and the list-based File Manager, splitting files and programs. The Control Panel, previously available as a standard-looking applet, was re-modeled after the one in the classic Mac OS. It centralized system settings, including control over the color scheme of the interface.

A number of simple applications were included, such as the text editor Notepad and the word processor Write (both inherited from earlier versions of Windows), a macro recorder (new; later dropped), the paint program Paintbrush (inherited, but substantially improved), and a calculator (also inherited). Also, the earlier Reversi game was complemented with the card game Microsoft Solitaire.

The Windows icons and graphics support a full 16 colors in EGA, MCGA and VGA mode while Windows 2.x had only a very limited palette for colored menus and window boxes with in-application graphics being monochrome. 256-color VGA and MCGA modes were supported for the first time.

Windows 3.0 includes a Protected/Enhanced mode which allows Windows applications to use more memory in a more painless manner than their DOS counterparts could. It can run in any of Real, Standard, or 386 Enhanced modes, and is compatible with any Intel processor from the 8086/8088 up to 80286 and 80386. Windows 3.0 tries to auto detect which mode to run in, although it can be forced to run in a specific mode using the switches: /r (real mode), /s ("standard" 286 protected mode) and /3 (386 enhanced protected mode) respectively. Since Windows 3.0 (and later Windows 3.1) runs in 16-bit 286 protected mode and not 32-bit 386 protected mode, the default setup is to use the 64 KB segmented memory model. However, on 32-bit CPUs, the programmer had access to larger memory pointers and so it was possible to expand program segments to whatever size was desired (the maximum limit being 16 MB due to segment descriptors being 24-bit). Since Windows API functions were 16-bit at the time, they could not use 32-bit pointers and thus it was necessary to place the portion of the program code that performed OS calls in a 64 KB segment, like in DOS, although 32-bit instructions may be contained in the code. (Ami Pro was the first Windows application to require a 386). Because of this, Windows 3.0 can access only 16 MB total of RAM, even on 386 or higher CPUs which have a theoretical capability of utilizing 4GB.

This was the first version to run Windows programs in protected mode, although the 386 enhanced mode kernel was an enhanced version of the protected mode kernel for Windows/286.

System requirements
The official system requirements for Windows 3.0:


 * 8086/8088 processor or better
 * 384 KB of free conventional memory (real mode), 1 MB (Standard Mode), or 2 MB (Enhanced Mode)
 * Hard disk with 6-7 MB of free space
 * CGA, EGA, MCGA, VGA, Hercules, 8514/A or XGA graphics and an appropriate and compatible monitor
 * MS-DOS version 3.1 or higher

Also, a Microsoft-compatible mouse is recommended.

Windows 3.0 can't run in full color on most 8086/88 machines, as the built-in 640×350 (16 color) EGA and 640×480 (16 color) VGA drivers contained Intel 80186 instructions. MCGA 320×200 (256 color) and 640×480 (2 color) drivers did not contain these instructions. This could be worked around by installing the Windows 2.x EGA/VGA drivers (which support color menus and frames, but not in-program graphics), replacing the CPU with an NEC V20/V30 (8086/88 pin-compatible chips with an 80186 instruction set), or by using a modified VGA driver that supports the 8086/88 (originally written in 2013). Microsoft had dropped support for the Tandy 1000 line by 1990, so a Tandy graphics driver was not provided for Windows 3.0, but the Windows 2.x Tandy driver could be copied into the target system and used.

Memory modes
Windows 3.0 was the only version of Windows that could be run in three different memory modes:


 * Real mode, intended for older computers with a CPU below Intel 80286, and corresponding to its real mode;
 * Standard mode, intended for computers with an 80286 processor, and corresponding to its protected mode;
 * 386 Enhanced mode, intended for newer computers with an Intel 80386 processor or above, and corresponding to its protected mode and virtual 8086 mode.

Real mode primarily existed as a way to run Windows 2.x applications. It was removed in Windows 3.1x. Almost all applications designed for Windows 3.0 had to be run in standard or 386 enhanced modes. (Microsoft Word 1.x and Excel 2.x would work in real mode as they were actually designed for Windows 2.x). However, it was necessary to load Windows 3.0 in real mode to run SWAPFILE.EXE, which allowed users to change virtual memory settings. Officially, Microsoft stated that an 8Mhz turbo 8086 was the minimum CPU needed to run Windows 3.0. It could be run on 4.77 MHz 8088 machines, but performance is so slow as to render the OS almost unusable. Up to 4 MB of EMS memory is supported in real mode.

Standard mode was used most often as its requirements were more in-line with an average PC of that era — an 80286 processor with at least 1 MB of memory. Since some PCs (notably Compaqs) did not place extended memory at the 1MB line and instead left a hole between the end of conventional memory and the start of XMS, Windows could not work on them except in real mode. Standard mode was still widely used on 386 PCs as many only had 1-2 MB of memory and used the 386SX chip (a cut-down version with a 16-bit data bus), so they could not run Enhanced mode well.

386 Enhanced mode was a 32-bit virtual machine that ran a copy of 16-bit Standard mode, and multiple copies of MS-DOS in virtual 8086 mode. In 286 mode, the CPU temporarily switches back into real mode when a DOS application is run, thus they cannot be windowed or switched into the background, and all Windows processes are suspended while the DOS application is in use. 386 enhanced mode by comparison uses virtual 8086 mode to allow multiple DOS programs to run (each DOS session takes 1MB of memory) along with being windowed and allowing multitasking to continue. Virtual memory support allows the user to employ the hard disk as a temporary storage space if applications use more memory than exists in the system.

Normally, Windows will start in the highest operating mode the computer can use, but the user may force it into lower modes by typing WIN /R or WIN /S at the DOS command prompt. If the user selects an operating mode that cannot be used due to lack of RAM or CPU support, Windows merely boots into the next lowest one.

Windows 3.0a
In December 1990, Microsoft released Windows 3.0a. This version contained an improved ability to move pieces of data greater than 64KB (the original release could only manipulate one segment of RAM at a time). It also improved stability by reducing Unrecoverable Application Errors (UAEs) associated with networking, printing, and low-memory conditions. This version appears as "Windows 3.00a" in Help/About Windows system dialogs.

Windows 3.0 with Multimedia Extensions
Based on Windows 3.0a, Windows 3.0 with Multimedia Extensions 1.0 was released in October 1991 to support sound cards like the Creative Labs Sound Blaster Pro, as well as CD-ROM drives, which were then becoming increasingly available. This edition was released to Original Equipment Manufacturers (OEMs), mainly CD-ROM drive and sound card manufacturers, and some PCs came preloaded with it. This edition added basic multimedia support for audio input and output, along with new applications: Media Player, CD audio player, more advanced Help format, screen savers, and a new clock. These new features were integrated into Windows 3.1x. Microsoft developed the Windows Sound System sound card specification to complement these extensions. The new features were not accessible in Windows 3.0 Real Mode.

The MME API was the first universal and standardized Windows audio API. Wave sound events played in Windows (up to Windows XP) and MIDI I/O use MME. The devices listed in the Multimedia/Sounds and Audio control panel applet represent the MME API of the sound card driver.

MME lacks channel mixing, so only one audio stream can be rendered at a time. MME supports sharing the audio device for playback between multiple applications starting with Windows 2000, up to two channels of recording, 16-bit audio bit depth and sampling rates of up to 44.1 kHz with all the audio being mixed and sampled to 44.1 kHz.

Marketing
Windows 3.0 was the first version to be pre-installed on hard drives by PC-compatible manufacturers. Zenith Data Systems had previously shipped all of its computers with Windows 1.0 or later 2.x on diskettes, but committed early in the development of Windows 3.0 to shipping it pre-installed. Indeed, the Zenith division had pushed Microsoft hard to develop the graphical user interface because of Zenith's direct competition with Apple in the educational market. However, Zenith PCs had to run a proprietary OEM version of Windows, because they used hard disks with 1024 byte sectors instead of the normal 512 bytes, and could not use the standard SWAPFILE.EXE

Windows 3.0 was not available as a run-time version, as was the case with its predecessors. A limited-use version of Windows 2.x was often bundled with other applications (e.g., Ami Pro) due to the low market penetration of Windows.

Standard retail and OEM distributions of Windows 3.0 were on high density 1.2 MB and 1.44 MB floppy disks. A 720 KB version was also offered, and a 360 KB edition could be ordered from Microsoft. Fully installed, Windows 3.0 used 5 MB of hard disk space.

Support
Windows 3.0 was the first Windows version to see widespread use, although DOS still remained dominant (especially for games) and freeware and shareware applications for Windows considerably outnumbered commercial ones. It also significantly spurred sales of new PCs with larger RAM capacities as many older machines lacked the speed or memory to handle a demanding OS like Windows properly, and some could not run it in protected mode due to outdated BIOSes or lack of proper implementation. Since very few applications used protected mode prior to Windows 3.0, PC manufacturers sometimes did not bother including functional support for it in either the hardware, BIOS, or both.

Windows 3.0 had a software update that was never released, increasing the speed of the floppy disk drive. By the time it was ready to be launched, a new version of Windows was released.

All editions of Windows 3.0 became unsupported after December 31, 2001.