Classic Systems Emulated: Windows 95 (Part 1)

 

Start Me Up!

Windows 95 (Chicago Beta Build 189 released September 1994) running under PCEM

What would eventually become Windows 95 was affected by several turn of events that occurred during its development. Windows 95, code-named Chicago, had been several years in the making. Microsoft had already been planning the next version of Windows right after they got 3.1 out the door on March 1992. What would determine the course of the new OS?

DOS Compatibility for one as it was still deemed essential at that point. One has to remember that even though Windows 3.0 had been the most successful version of Windows to date, the GUI in general was still a novelty at that point. Most used Windows 3.0 for simple task like typing list, letters, or playing solitaire.

Most PC users who needed to work on major projects were still running DOS applications like WordPerfect or Lotus 123. However, the transition to GUI's would begin in earnest.  The 486 processor started to overcome the demanding overhead imposed by such environments. The major applications that would eventually define the Windows platform weren't available until the very eve of 3.1's release. It was going to be with 3.1 that the transition to Windows would begin. However, things were not rosy from Microsoft's perspective.

While Windows 3.1 had preemptive multitasking support, it lacked memory protection and multi-threading support. System crashes were typical with that infamous BSOD. These issues in themselves wouldn't have been that serious if Windows was the only game in town. However, OS/2 was giving Windows a run for it's money. After the Microsoft-IBM "divorce", IBM became the sole developer of OS/2. The IBM developers were already redefining OS/2 as the product of the decade. With the release of version 2.0 in 1992, the OS went 32-bit. Their was memory protection, multi-threading, preemptive multitasking, and DOS/Windows Compatibility. OS/2 was making Windows look silly by comparison. It only got worse for the Redmond giant. 

Windows NT 3.1 running under PCEM.

Windows NT was intended as being Microsoft's answer to OS/2. While NT was state-of-the-art and a very revolutionary product, it was released much later than Microsoft intended. By the time that NT hit the market on late July 1993, the updated version of OS/2, version 2.1 had already been out for some time. OS/2 2.1 was also much more forgiving on PC hardware than NT was. Whereas 2.1 could run very well on a PC equipped with a 50MHz 486 with 8MB's of RAM, NT would scream in pain on similar requirements. NT 3.1 required a PC with at least a 486 DX2 with 16MB's of RAM. For recommended usage, a 486 DX4 running at 75MHz or faster was demanded along with 24MB's of more memory. Such a PC in 1993 would have carried an astronomical price tag. NT would not be running on home computers anytime soon. The DOS compatibility in NT wasn't that great compared to OS/2 either.

DOS Gaming 
While Windows Chicago was being developed on, Doom just started to set PC gaming on fire. Doom became that must own title if you had that 486-equipped PC. Doom would dictate the success or failure of any platform (For modern comparisons, Doom was basically the FortNite of its day).

As a gaming platform, DOS went from the backwaters to the forefront. Other developers were quick in exploiting the power of those 486 and Pentium PC's. DOS compatibility would be essential for any platform's success. Since Windows NT wasn't geared towards home users, their was never any pressure on that OS to run Doom. While OS/2 Warp had decent DOS compatibility, it couldn't run the DOS port of Doom, and the native ports didn't have sound. Sound is essential for the Doom experience. IBM could only provide home users with inferior ports of a game that was quickly becoming as essential as food and water.

While DOS compatibility was vital, Doom demonstrated that Windows needed a native, fast-paced graphics library. For Windows 3.1, this was addressed with WinG, or Windows Graphics. Games like SimCity 2000 and Civilization II were built around WinG, along with an unofficial Windows 3.1 port of Doom. WinG had it's shortcomings though, primary in performance. However, with Pentium-based PC's becoming much more common, native Windows games would soon have those fast-paced graphics. DirectX would become standard even though it wasn't originally available with Windows 95 at release.

Does this image really need a caption.

Networking
Networking was going to become the next big thing. With the release of the Mosaic browser, the WWW was become the defining feature of the Internet. The TCP-IP protocol used to support the WWW would become essential. Not only that, the support for various network adapters was essential as well. This support was already their with Windows NT. However, Microsoft needed these features in the slim-down Windows as well. Many of the features were later incorporated in Windows for Workgroups, which is basically 3.1 with networking support. However, Microsoft was going to greatly expand on network configuration in Chicago. 

Plug and Play (More like Plug and Pray)
Wouldn't it be nice if hardware could just magically configure itself without dealing with jumper settings. Windows Chicago incorporated PnP (Plug-in-Play). This was basically were Windows would detect a peripheral device and automatically configure it by itself or with a supported driver disk. Technically, the IBM PS/2 family of computers had something similar to PnP in their MCA (MicroChannel Architecture) systems. A driver disk would automatically reconfigure the computer to use the device in question. However, the modern incarnation of PnP was developed alongside the PCI standard developed by Intel. The PCI architecture is universal and not locked to any proprietary standard, unlike MCA. PnP didn't always work, with it constantly referred to as "Plug-in-Pray". Windows 95 tries to automatically configure older ISA adapters as well, with varying levels of success. However PnP support would improve in Windows over the following years.

Windows Explorer running under PCEM. PCEM is running Windows 95 Beta Build 189.

A New User Experience
One doesn't want their computer to crash while in a game or application. The stability within Windows Chicago had to be much improved compared to 3.1. It needed the features of NT without any of the bloat. While it would be impossible for Chicago to have OS/2-like stability, the new Windows just had to be good enough. Microsoft started to incorporate many of the features and API calls of Windows NT into Chicago. Multi-threading made its way in, along with memory protection for 32-bit Windows applications. Chicago was still able to run 16-bit Windows 3.1 applications as well via WOW (Windows-on-Windows).

Microsoft hoped to get Chicago out the door sometime in 1993. Thus, Chicago was referred to as Windows 93. Originally, Microsoft wasn't going to change the user interface. One could liken this to how Windows 3.1 and NT 3.1 shared the same user interface despite them being completely different from each other. Windows 93 was still going to use the Program Manager and feature the same applets (just updated to 32-bit code, again like NT). However, Windows 93 was never meant to be as Chicago was delayed for various reasons. Microsoft had much more ambitious plans. The Redmond giant wanted to make Chicago the best Windows ever.

In order to make DOS compatibility great, Windows Chicago would be running its own DOS. MS-DOS 7 was integrated to provide those DOS features. One also speculated that the reason why Microsoft did this was to kill the DOS-clone market (DR-DOS). As a result, Windows Explorer, the GUI for Chicago, was technically a 32-bit graphical shell running on MS-DOS instead of being a true OS like NT. However, this allowed Windows to have modest hardware requirements as Chicago needed to run well on lower-end PC's, just like OS/2.

Work began on the user interface, which would change and improve over time in various alpha and beta builds of the OS. The early builds (58S, 73g, and 81) had a "Start-ish" menu, but it was still very different from what we're accustomed to now. Chicago 122 was the first build identified as a beta, and had a Start button and menu that closely resembled the final product. Chicago 189 was the first beta build that called itself Windows 95. While the user interface was largely complete by Build 189, a lot of work remained under the hood. Build 189 was released on September, 1994. Microsoft had a lot to gain by improving the user interface.

Microsoft wanted to deliver a Mac-like experience for PC users. As someone who used both MacOS classic and Windows 3.1, when it came to usability, MacOS always had the upper-hand. Apple understood home users better than Microsoft did. Windows 3.0 and 3.1 felt like more inferior imitators of MacOS. As such, it was essential for Microsoft to get the next version of Windows right. 

Microsoft wanted Windows to be as easy to use as MacOS. System 7.1 was the current version of MacOS at the time, with System 7.5 just around the corner. The Start Menu and Windows Explorer, the shell programs for Chicago, was Microsoft's answer to the Macintosh Finder. Microsoft succeeded beyond their wildest expectations. For the first time, Microsoft designed a user interface that could compete effectively with the Macintosh Finder on equal term. Microsoft made a version of Windows that people actually wanted. Windows 95 would be simple to use, while still being very powerful as well.

Their was something that Microsoft was about to provide that Mac users have enjoyed for many years up to that point: long filenames. MS-DOS conformed to the 8.3 filename convention (which in itself descended from CP/M). Naming files on MS-DOS have always been awkward for those who used it. Windows 3.1, which ran on top of DOS, conformed to the limitation as well. However, MS-DOS 7 incorporated LFN (long filename) support via VFAT (Virtual FAT). Thus, Windows 95 was able to use that coveted features that Mac users have enjoyed for many years. Not only that, VFAT was scalable enough to accommodate later revisions of the FAT file system. When Windows 95 was released, like MS-DOS 6.22; it was restricted to the maximum partition size of 2GB. Windows 95A brought that partition size up to 4GB's. Windows 95 OSR2 introduced FAT32, which allowed partition sizes up to 32GB's in size. Considering that the size of a typical hard drive in 1997 was 2-3GB's, that was very generous proposition.

Microsoft made a user interface that was so revolutionary that it would curse any designs that would come in the future. Microsoft found this out the hard way when they introduced the Metro/Modern/Whatever-the-Hell-Its-Called tiled interface in that train-wreck called Windows 8. 

Emulation

I was using an older build of PCEM (v10) to run the Chicago builds. I haven't updated to the latest PCEM out of sheer laziness. This is also the same reason why I'm using MESS for the Apple II emulation instead of MAME or AppleWin despite those emulators surpassing MESS now, as PCEM v17/86box surpasses v10 by a long shot. 

However, the Chicago builds just work great under v10. These builds did have video drivers for the popular SVGA adapters that were widely used at the time. For Build 58, I was using the Tseng ET4k video driver, along with the Creative Lab's SoundBlaster v1.5 driver. For Chicago Build 73, 81, 122 and 189, I used the Trident SVGA adapter. Build 189 was configured with the SoundBlaster 16 audio adapter. All the Chicago configurations have 12MB's of RAM and equipped with a 486 DX2 processor running at 66MHz.  The Chicago builds ran very well on these configurations. 

Conclusion
With Windows 95, one of the weirdest anomalies in computing occurred. This was one of the few times in the history that Microsoft released an OS that was actually better than what Apple was offering at the time. OSX was still many years away. While MacOS had it's defining Finder, the OS lacked many features that were touted in Windows 95. Win95 had memory protection, memory management, multi-threading capabilities, and was preemptive multitasking. MacOS 7.x had none of those features. Even with the BSOD's, Windows 95 was more stable than MacOS. It was also just as simple and powerful enough to use. Many software developers that were Mac-only up to that point became a lot more interested in Windows now. I know that Apple fanboy's will live in a state of denial, but their was a time when Apple's offerings were subpar compared to Microsoft's. It was called the late 90's.  

Windows 95 was about to take the world of computing by storm.
Articles Of Interest
PCEM - https://pcem-emulator.co.uk/ 
Wikipedia - Windows 95: https://en.wikipedia.org/wiki/Windows_95

Wikipedia - Development of Windows 95 : https://en.wikipedia.org/wiki/Development_of_Windows_95

Wikipedia : Win32s - https://en.wikipedia.org/wiki/Win32s

Wikipedia : WinG - https://en.wikipedia.org/wiki/WinG 

Wikipedia : Peripheral Component Interconnect (PCI) : https://en.wikipedia.org/wiki/Peripheral_Component_Interconnect

Wikipedia : Plug and play : https://en.wikipedia.org/wiki/Plug_and_play

Wikipedia : Industry Standard Archietecture (ISA) - https://en.wikipedia.org/wiki/Industry_Standard_Architecture

Wikipedia : Conventional PCI - https://en.wikipedia.org/wiki/Conventional_PCI

Wikipedia : Doom (1993 Video Game) - https://en.wikipedia.org/wiki/Doom_(1993_video_game)

Wikipedia : Windows NT - https://en.wikipedia.org/wiki/Windows_NT

Wikipedia : IBM Personal System/2 - https://en.wikipedia.org/wiki/IBM_Personal_System/2 

Wikipedia : File Allocation Table (VFAT) - https://en.wikipedia.org/wiki/File_Allocation_Table#VFAT

ToastyTech -  Windows Chicago Build 58 August 1993 : http://toastytech.com/guis/chic58.html

ToastyTech - Windows Chicago Build 73 Preliminary Release - November 1993 : http://toastytech.com/guis/c73.html

ToastyTech - Microsoft Windows "Chicago" beta-1 : http://toastytech.com/guis/chicago.html

ToastyTech - Microsoft Windows 95 : http://toastytech.com/guis/win95.html

The Windows® 95 User Interface: A Case Study in Usability Engineering (Archive.org Wayback link): https://web.archive.org/web/20031104070858/http://www.sigchi.org/chi96/proceedings/desbrief/Sullivan... 

Doom Fandom : WinDoom (Microsoft) - https://doom.fandom.com/wiki/WinDoom_(Microsoft) 

Kixmiller Pigeon - Classic Systems Emulated: Doom : https://rkixmiller.dudaone.com/classic-systems-emulated-doom
Kixmiller Pigeon - Classic Systems Emulated: Windows NT 3.1 : https://rkixmiller.dudaone.com/classic-systems-emulated-windows-nt-3-1
Kixmiller Pigeon - Classic Systems Emulated: OS/2 Warp 3 : https://rkixmiller.dudaone.com/classic-systems-emulated-os-2-warp-3
Kixmiller Pigeon - Classic Systems Emulated: OS/2 V2.1 : https://rkixmiller.dudaone.com/classic-systems-emulated-os-2-v2-1
Kixmiller Pigeon - Classic Systems Emulated: OS/2 Version 2.0 On PCEM : https://rkixmiller.dudaone.com/classic-systems-emulated-os-2-on-pcem

Comments

Popular posts from this blog

My Thoughts Close Of The Election : Religion and Politics

WeatherStar 4000 Simulator For Windows (Part 1)

Old Hardware Emulated :Psion Model 3a Emulated On DOSBox Windows

Classic Systems Emulated: Windows 3.1 OEMS

Some More Thoughts Of Greg Abbott

2021: American Insurrection

WeatherStar 4000 Simulator For Windows (Part 2)

Old Hardware Emulated - Windows Mobile 5.0

Old Hardware Emulated : Pocket PC 2000/2002

Classic Systems Emulated: OS/2 Version 2.0 On PCEM