Windows 95

Windows 95 (codenamed Chicago) is a consumer version of Microsoft Windows released by Microsoft in 1995. It is the first major release in the Windows 9x operating system line, and was designed to be the successor of Windows 3.1. It is the first consumer-oriented version of Windows to include Windows Explorer, a move which was followed by its NT equivalent Windows NT 4.0 in 1996. It would be replaced by Windows 98, and Microsoft ended support for Windows 95 on 31 December 2001.
Windows 95 merged Microsoft's formerly separate MS-DOS and Microsoft Windows products, and featured significant improvements over its predecessor, most notably in the graphical user interface (GUI) and in its simplified "plug-and-play" features. It improved upon 16-bit Windows by introducing a hybrid 16/32-bit kernel and eliminating the need for an existing installation of MS-DOS, making it a standalone operating system (running alongside MS-DOS). Microsoft focused on improving the usability of Windows with technologies such as Plug-and-Play, long file names (VFAT), the	Start menu, an updated desktop, Internet Explorer, Mail, built-in networking, and virtual device drivers. Many of the paradigms introduced with Windows 95 remain in use today.
It was a revolutionary update for Windows, and also the first concerted effort by Microsoft to listen to consumers. Although it was still built upon the solid, if outdated, foundations of MS-DOS, the average user never saw the MS-DOS prompt unless they wanted to. Windows NT was too intensive for most computers of the time, and it was not until after the release of Windows 95 that Win32 applications were widely used and supported.
== Development ==
The development of Windows 95 started in roughly mid-1992 shortly after the release of Windows 3.1. Pre-release Windows for Workgroups 3.1 builds were forked into the Cougar project, which attempted to build a 32-bit protected mode kernel to be used in the next Windows-on-DOS release (at the time often called Windows 4.0, Windows 93, or Windows 94). The Cougar project was later merged with Jaguar (known as MS-DOS 7.0, also slated for a separate release) into Chicago, which became Windows 95. The Chicago project additionally took a few components from the Cairo project (meant for Windows NT), including the Cairo user interface, and integrated it into the Chicago shell. Internal Microsoft documents from 1992 occasionally refer to the Chicago project as Windows NT Lite.http://iowa.gotthefacts.org/011607/5000/PX05522.pdf
The main sub-projects of Windows 95 are known to be
* Cougar: The 32-bit virtual machine manager kernel (called WIN386.EXE in Windows 3.x, DOS386.EXE in early versions of Chicago, and VMM32.VXD in the final version of Windows 95). Early builds of Cougar are believed to have used the new kernel and the old user interface. Cougar includes many kernel advancements required to facilitate Win32 features such as multithreading.
* Jaguar: The new 16-bit MS-DOS kernel, version 7.0, at one point planned to be released separately (and at one point even planning to support text-based multitasking/task-switching using the Cougar kernel)
* Win32c: The Win32 support in Chicago, which is essentially, like Win32s (from which it was forked), a set of VxDs that load PE files and provide system services such as memory allocation and thread management, as well as thunking to 16-bit code, services requires for the Win32 DLLs.
* Stimpy: The new shell for Chicago, based on early work for Cairo and initially known as Cabinet and later as Explorer
The first build known to exist is build 07200022, built on 20 July 1992 and forked from Windows for Workgroups 3.1 build 014e. Despite its extremely early date (predating even the September 1992 Chicago Product Specification document), and despite the fact it still uses the Windows 3.1 shell, there are already many changes across the system such as new controls, right click menus, new inbuilt apps (some of which were never seen again) and overhauls for others, new system APIs, new features for the DOS box (which doesn't actually work in 386 enhanced mode in this build); this build may be from when Windows 95's predecessor products were being merged into Chicago. The September 1992 Chicago Product Specification details most of the features that eventually made it into Chicago, including better DOS box features, additions to GDI including the DIB engine, and multithreading support in Cougar. Early DIB engine support is in the 16-bit GDI of the July 1992 build.
The next builds known to exist are two builds from December 1992 or January 1993, seen in a Microsoft video taken during Chicago usability testing sessions.Windows 95 Usability Testing - 1993, Channel 9. 23 May 2012. Archived from the original on 30 June 2012. These builds feature a very primitive iteration of the Windows 95 shell, with three menus on the Taskbar and a mix of Windows 3.1 and 95 window controls. Build 58s (the initial PDK from July 1993) is the first known build to have Win32 support, though it's predated by an early release to ISVs that had Win32s-level support and the old shell. Build 73f (M5 from November 1993) introduced the Start button and menu, although the code while entirely present was unused until build 81, which also introduced finalized window controls, including the ubiquitous Close button. Build 216, a Beta 2 build from October 1994, includes the final iteration of common controls. The startup sound, known as "The Microsoft Sound", was added in build 445, a Test Release from April 1995. The final build of Windows 95, build 950 r-6, would be released to manufacturing on 14 July 1995, and would later be available to the general public on 24 August 1995.
In early 1996, Microsoft released the first OEM Service Release of Windows 95, which was also released to the public as a Service Pack for the RTM build. This is the first version of Windows to include Internet Explorer in its version 2 form, although some OEMs already shipped Internet Explorer 1 with the RTM build. It also introduces infrared support and fixes for bugs which affected the RTM build.
In mid-1996, Microsoft released the second OEM Service Release of Windows 95, which includes various new features such as FAT32 support, Internet Explorer 3, a newer version of MSN, as well as features that were previously exclusive for Microsoft Plus! 95 such as DriveSpace 3 (however with limited functionality). An update to it, known as the OEM Service Release 2.1, was released in August 1996, which not only updates Internet Explorer to version 3.02, but it also includes USB support in form of an update package. It is not pre-installed by default, since USB support was still in an early state. It was buggy and caused Windows to crash more frequently. USB (and AGP) support was added by backporting WDM from an early version of Windows 98 through NTKERN.VXD. Another update, known as the OEM Service Release 2.5, was released in November 1997 and updated Internet Explorer to version 4.0, along with it the Active Desktop enhancements, although on incompatible devices, it still ships with IE 2. These releases were never offered to consumers. OEM Service Release 2.5 is the last update for Windows 95 before being replaced with Windows 98.
== Marketing ==
Windows 95 was heavily marketed in its first few months after release with the song Start Me Up by The Rolling Stones as part of a US$300 million advertising campaign,Arbuckle, Alex. The hysteria over Windows 95 launch, 20 years ago, Mashable. 24 August 2015. both during its launch event held on Microsoft's campus, and through TV advertisements to reflect the addition of the Start menu feature. The slogan Where do you want to go today? was teased leading up to its release, being featured in commercials and promotional materials, as well as the default text used for the Scrolling Marquee screensaver.
The operating system was delayed multiple times due to a then ongoing case with the Justice Department alongside development being pushed back. Initially, it was going to be launched in April 1994, then pushed back to 30 September 1994,http://iowa.gotthefacts.org/011607/5000/PX05549.pdfhttp://iowa.gotthefacts.org/011607/5000/PX05651.pdf and eventually to March 1995 where the launch event was planned to be held but delayed multiple times due to the aforementioned events.
== Upgrade Check Password ==
Holding and clicking Exit Setup on an Upgrade Check dialog opens a password request screen, containing a random ID Number and a random Key.
The valid Password is derived from the Key: password = (strrev(key) ^ 0x414d57) % 1000000.
Entering a valid Password passes the upgrade check. It should be added that Password calculated is sometimes not six digits. In this case, when entering the Password, user must add a 0 at the beginning, otherwise upgrade check will still cannot be passed.
This was implemented in COMPLINC.DLL by build 89e, and was most likely used on direction from Microsoft Support Services.
The same upgrade check password, with the same algorithm, was later used in Office 95 and 97.
Windows-95-Upgrade-Password.png|The upgrade password dialog
Windows-95-Upgrade-Password-Wrong.png|Wrong password is entered
==Unattended batch installation==
A batch file for installing Windows 95 in unattended mode can be created by using the "Batch INF Script Editor" included in the Windows 95 Resource Kit. Then, Windows 95 setup can be brought to install unattended by replacing the included MSBATCH.INF with the self-provided one.
== System requirements ==
According to Microsoft, Windows 95 requires a 386DX processor, at least 4 MB of RAM, 50-55 MB of hard drive space (varies depending on components being installed), a VGA or better display adapter, and a Microsoft Mouse or compatible pointing device.Windows 95 Installation Requirements, Microsoft Support. 17 December 2000. Archived from the original on 19 October 2004. Windows 95 drops support for the 80286 Standard mode and the Hercules and CGA display adapters. Trying to install Windows 95 with CGA or Hercules graphics will result in USER.EXE failing to load. EGA display adapters are supported but not included in Windows 95. For example, by upgrading from Windows 3.1x with EGA configured as display adapter, Windows 95 can be brought to use the EGA display driver. Windows 95 allows installation to be possible without a floppy drive via CD-ROM media, but this is only possible on select bootable OEM disks. A floppy drive is otherwise required for starting setup or if one wants to make a startup disk or to install Windows 95 from floppy disks.
=== Hardware compatibility ===
Windows 95 does not support AMD processors faster than 350 MHz and Intel processors faster than 2.1 GHz due to divide by zero bugs from timer calibration in several drivers.Windows protection error in NDIS with a CPU that is faster than 2.1 GHz, Microsoft Support. 31 January 2007. Archived from the original on 21 April 2012. Additionally, Windows 95 does not support having more than 480 MB of RAM due to a bug in the memory allocator.Chen, Raymond. Windows 95 doesn’t boot with more than 1GB of RAM, The Old New Thing. 14 August 2003.Computer May Reboot Continuously with More Than 1.5 GB of RAM, Microsoft Support. 17 December 2004. Archived from the original on 16 November 2006. Windows 95 will often encounter system instability or crashing upon boot on these systems without additional fixes.
== Easter eggs ==
=== Product Team credits ===
 There is a hidden Easter egg, which can be accessed by creating a new folder and renaming it to each of the following names in order:
* and now, the moment you've all been waiting for
* we proudly present for your viewing pleasure
* The Microsoft Windows 95 Product Team!
Opening the folder after the last rename opens an Explorer window, although the file list area is replaced with an animation of names of people involved in the development of Windows 95 on a midday blue background with clouds.mid playing in the background. This MIDI file will also subsequently be added to the WINDOWS\MEDIA directory upon launching the Easter egg.
The text is located in the library's resource BIN and XORed with 0x95 as an obfuscation measure. Likewise, the Easter egg folder names are stored in the .text section of SHELL32.DLL as custom hashes of the old folder name concatenated with the new folder name. The credits contain 677 names total, separated by division.
This Easter egg is also present in earlier builds of Windows NT 4.0, with references to "95" being replaced with "NT". Like such, it will not work after installing the Windows Desktop Update components from Internet Explorer 4.
=== "The Shadow knows!" ===
There is another Easter egg like the aforementioned Product Team Easter egg, but it is not as immersive. It is also a little bit longer, but the steps are as follows. First, click on the Help option in the Start menu and click on the Find tab. Upon the setup Wizard that appears, click next and finish. Second, go to the Options and then make sure you have these options set: "All the words you typed in any order", "begin with the characters you type", and "Immediately after each keystroke, wait for a pause before searching". Press OK and then type the phrase "Who knows who built this tool?" in the textbox. Hold down both keys and press clear button. Third, go into the options again and set the options as follows: "At least one of the words you typed", "contain the characters you type", and "Immediately after each keystroke, wait for a pause before searching". Press OK and then type the phrase "The Shadow knows!" in the textbox. Hold down both keys and press the "Clear" button. If done correctly, a pop-up window will appear scrolling through the development team credits.
== List of known builds ==
===Original release===
====Cougar====
====Pre-Milestone 4====
====Milestone 4====
====Milestone 5====
====Beta 1 / Milestone 6 ====
=====Beta 1.2 / Milestone 6.2=====
=====Beta 1.3 / Milestone 6.3=====
=====Beta 1.4 / Milestone 6.4=====
====Beta 2 / Milestone 7====
====Beta 3 / Milestone 8 / Final Beta====
====Release Candidate 1====
=====April Test Release =====
===== May Test Release=====
=====June Test Release =====
====Localization builds====
====Pre-RTM====
====RTM====
===OEM Service Release 1 and Service Pack 1===
===OEM Service Release 2===
This and later releases of OSR2 were exclusively distributed towards OEMs and System Builders for preinstalling on their machines and was never directly available for consumers as standalone versions.
====Beta====
====Release Candidate====
====RTM====
===OEM Service Release 2.1===
====Beta====
====Release Candidate====
====RTM====
===OEM Service Release 2.5===
==References==
9