MacMusic  |  PcMusic  |  440 Software  |  440 Forums  |  440TV  |  Zicos
windows
Search

Windows/386’s check for buggy 386 chips survived until Windows 8.1

Thursday September 11, 2025. 12:27 AM , from OS News
A version of Windows that’s often overlooked, and often probably entirely unknown, is Windows/386. When Microsoft released 2.x, they did so in two very different variants: Windows/286 and Windows/386. The former would run on anything from a 8088 and up, but wouldn’t make use of any of the new features of the 386, while the latter, as its name implies, was optimised for the 386 and introduced a ton of advanced features to the platform. Windows/386 laid the groundwork for the much more successful Windows 3.x and 9x, but weirdly enough, it’s never really been studied all that well to understand how it works and what it’s doing under the hood.

That has changed now, as Will “CaptainWillStarblazer” Klees, whom we already know for his amazing work to allow RISC Win32 applications to run on x86, has delved deep into Widnows/386 with a ton of reverse-engineering to uncover many of its secrets. There’s so many amazing findings in here, I honestly have no idea where to even start or what to highlight, so I’m picking two things that I think are quite entertaining.

First, Windows/386 does a number of checks to determine if your PC can run it, and one of the checks it does concerns “defending against early buggy 386 steppings”. It turns out that this exact check for buggy steppings in early 386 processors survived in Windows all the way up until Windows 8.1, which is wild to think about.

A second fascinating finding is that a crucial component of Windows/386 finds its origins in an unusual place: Xenix, Microsoft’s UNIX implementation.

Finally, it begins loading the Virtual DOS Machine Manager (VDMM) into memory from the file WIN386.386. This file is not an OS/2 Linear Executable like the 386 files from later versions of Windows (that format did not yet exist), rather it is the 32-bit x.out executable format from Xenix-386 (thank you, Michal Necasek!), which makes sense as it was the only 32-bit executable format that Microsoft would have a linker for at the time (and interoperated well with Microsoft’s OMF-based tools, such as MASM).
↫ Will “CaptainWillStarblazer” Klees at Virtually Fun

There’s a fun detail about the 386 version of Xenix: it was ported to the 386 by a company we all came to hate deeply: SCO. The technology world is far smaller than we often seem to think. Apparently Xenix for the 386 was the first fully 32bit operating system for the x86 architecture, illustrating that once, a long, long time ago, SCO was an actually capable, innovative company.

The work by Klees and his extremely detailed write-up are a joy to read, so head on over and have some fun.
https://www.osnews.com/story/143311/windows-386s-check-for-buggy-386-chips-survived-until-windows-8-

Related News

News copyright owned by their original publishers | Copyright © 2004 - 2025 Zicos / 440Network
Current Date
Sep, Fri 12 - 00:58 CEST