Windows 3.0 build 33

1.33
Build of Windows 3.0
1.33
OS family
Architecturex86 16-bit
Compiled1989-07-27
Timebomb
Works in

Windows 3.0 build 33 is a build of Windows 3.0 that was uploaded on 23 September 2022, along with some disks of its software development kit.[1] The build was also mentioned in an internal Microsoft e-mail from August 1989,[2] where it is noted that the build is slow due to extensive debugging hooks.

This is the last available build to use MS-DOS Executive as the default shell, as the next available build, build 55, already makes use of the newer Program Manager. However, references to the new shell are present in the available copy, and it is likely that it was merely omitted for this release. It is also the last known build of Windows 3.0 to feature a debug watermark before returning in debug compiles of Windows 3.1.

Installation[edit | edit source]

The available copy of this build does not include any installer, therefore it is necessary to manually copy the contents of the floppy disks to the system disk. This build will work with all files copied to the same directory, although it also supports the newer directory structure with the system files being present in the SYSTEM subdirectory. In order to run Windows in one of the protected modes, the high memory area driver (HIMEM.SYS) must be loaded into the system. For better performance, it is recommended to increase the total number of file handles. This can be done by adding the following lines to C:\CONFIG.SYS and rebooting, assuming Windows is installed in C:\WINDOWS:

DEVICE=C:\WINDOWS\HIMEM.SYS
FILES=40

It is recommended to use a contemporary version of MS-DOS, such as 3.31 or 4.01, as they have shown to be the most stable and compatible with the build.

The system is preconfigured to use VGA, although it also ships with drivers for Video7 VGA (640x480 with 256 colors), IBM 8514/A, CGA, EGA (high resolution, i.e. 640x350 with 16 colors), Hercules and Compaq Portable Plasma graphics. The display driver can be changed manually by editing SYSTEM.INI. The appropriate combinations of display driver, grabber, font and VxD files to use can be deduced from the included SETUP.INF and comments in SYSTEM.INI.

Operating modes[edit | edit source]

Unlike build 14, which only supported an early 386 Enhanced Mode, this build can run in all three modes known from the final version, although slightly different names are used for them:

  • Real Mode is known as 286r mode,[a]
  • Standard Mode is known as 286p mode,
  • 386 Enhanced Mode is known as 386p mode.

The r suffix is used for the x86 real mode, while the letter p stands for protected mode.

The kernel executables for the two protected modes also use file names that are different from later builds, as the Standard Mode kernel is PKERNEL.EXE and the 386 Enhanced Mode Kernel is KERNEL32.EXE. By build 55, they would be renamed to KRNL286.EXE and KRNL386.EXE, respectively. The real mode kernel executable is KERNEL.EXE, same as in the final version. All kernel executables print out a compatibility warning when executed.

By default, the system starts in 286r mode when invoking WIN.COM with no parameters, unlike later builds that perform basic detection to determine the optimal mode. To launch the system in another mode, WIN.COM must be invoked with a parameter. The /2 and /3 parameters, which are accepted by the final version, start Windows in 286p or 386p modes, respectively. Additionally, the /P parameter was also found to launch Windows in 386p mode.

[edit | edit source]

The build features a modified Windows 1/2 boot logo that features a Windows 3.0 wordmark in Helvetica Italic Black, the same font as used by the contemporary Microsoft logo. The version information was also replaced by a simple "We Believe in Magic!" label. However, it is only used when booting in 286r or 386p mode, as for an unknown reason WIN.COM skips the logo code when starting in 286p mode.

When booting in 286r mode, the boot logo is immediately followed by the compatibility warning printed out by the kernel executable. In 386p mode, the logo stays on screen for a little longer, after which the screen resets back to text mode as the kernel starts executing and prints out the compatibility warning.

API changes[edit | edit source]

This build features a lot of API changes, while maintaining compatibility with apps developed for earlier version of Windows. This build is one of the first builds released to developers with the new MDI interface and icon/cursor/bitmap format, and one of the last to contain the built-in Error Table resource type, which was first seen in build 14. Some dynamic-link libraries now use the extension .DLL instead of .EXE, however this build does not support loading files with the .DLL extension.

Remnants referring to applications not included[edit | edit source]

While there is no setup application for this build, a leftover SETUP.INF information file can be found within the disks' contents.

The contents of SETUP.INF indicate that the Setup identifies as "Microsoft Windows/386 Version 3.00", and also supports installing a Windows runtime a la earlier versions of Windows.

The list of files installed by Setup include PROGMAN.EXE and WINFILE.EXE, as well as several utilities that were apparently removed from the pre-release SDK distribution (such as an early version of Solitaire and an unknown version of Terminal and Calculator).

As this build contains the new Control Panel (replacing the older one from Windows 1.x/2.x) and the Print Manager, a possible reason for these applications not being included is to hide as much of the new UI as possible from developers outside of Microsoft at this point (as this build was provided to developers under a very strict NDA according to contemporary accounts to test their applications under 286/386 protected mode Windows). Microsoft did something similar a few years later; in early 1993 a Milestone 3 build of Windows 95 was sent out to 40 software developers with the Cabinet application removed.[3]

It is also possible the applications were not stable enough to send out to developers.

Bugs[edit | edit source]

This build is quite early and rough and exhibits numerous bugs:

  • The boot logo is skipped when starting Windows in 286p mode.
  • With some graphics adapters, running MS-DOS applications windowed may result in a system crash. VGA, CGA and Hercules are known to work.
  • The Windows Help executable is broken, as a result of being linked to DOS libraries (which makes it an invalid DOS executable).
  • The Date & Time control panel applet's text is spaced out in 286p and 386p mode.

Graphics[edit | edit source]

  • The placement of the text on every single Button control is misaligned and is above where it should be.
  • Buttons in system error boxes incorrectly use the window background color under the button text.
  • Graphics rendering is glitchy with the 8514/A driver.
  • Character kerning is partially broken with the VGA driver. This is visible when typing into a text box, as characters move around slightly with each typed character.
  • On some graphics modes, the Date & Time control panel applet does not display correctly in 286p and 386p mode.

References to missing programs[edit | edit source]

  • Under rare circumstances, the kernel may attempt to launch the nonexistent Program Manager instead of the MS-DOS Executive during startup.
  • The Task List (TASKMAN.EXE) is not present and attempts to launch it will fail.

Gallery[edit | edit source]

Applications[edit | edit source]

Media[edit | edit source]

Notes[edit | edit source]

  1. Despite the name, this mode also supports 8086 and 8088 systems.

References[edit | edit source]