Microsoft Employee Reveals Why the Windows 95 Setup Was Text-Based

In a nutshell: Initially, when installing Windows 95, PC users encountered a monotonous text interface devoid of graphics. While DOS had the capability to handle graphics, the Windows development team opted for a smarter approach by reusing existing code.

Raymond Chen, a Microsoft employee engaged in Windows development for over three decades, recently discussed the Windows 95 setup experience on his “Old New Thing” blog. This complex engineering effort involved utilizing three different OS environments to address various customer PC requirements.

According to Chen, Microsoft engineers theoretically could have developed a graphical setup application, as MS-DOS managed graphics effectively. However, the graphics capability in DOS was rudimentary and time-intensive. Although DOS didn’t prevent image display, programmers had to manually implement all graphical functionality.

MS-DOS only offered a BIOS call to plot a single pixel without graphics primitives, explained Chen. The BIOS-based method was inefficient since directly accessing the frame buffer (video card memory) was required for improved performance in graphics operations. Under these conditions, creating a custom graphics library for Windows 95 setup seemed necessary.

Furthermore, Windows 95’s minimum specification included a VGA video card, eliminating the need to support obsolete video modes like CGA or EGA. The setup program required displaying dialogues, so programmers developed a new window manager with keyboard navigation and hotkey features.

The setup also needed to support ideogram-based languages such as Japanese and Chinese while handling simple animations. All these aspects formed the “basic” structure essential for initiating the Windows 95 environment, with memory management using its own protected mode manager, according to Chen.

Developers essentially had to create an operating system to start Windows 95 setup, rendering their work redundant since Microsoft had the perfect solution. The Windows 3.1 runtime, utilized in the final Windows 95 setup, contained all necessary features for MS-DOS graphics, including video drivers, a graphics library, and a dialog manager.

Even today, Microsoft continues the practice of code recycling; modern Windows setups still deploy a “miniature” operating system for the initial process. This minimal OS environment is now known as the Windows Preinstallation Environment, which also assists in Windows repair if problems occur with the OS itself.

Scroll to Top