VOGONS


First post, by unix_junkie

User metadata
Rank Newbie
Rank
Newbie

Hi everyone.

I was pretty sure booting a non-NT OS (DOS, Windows 9x, and even Linux) via NTLDR was as simple as just extracting the boot sector (the VBR) into c:\bootsect.dos and declaring something like this in c:\boot.ini:

[boot loader]
timeout=0
default=C:\

[operating systems]
C:\ = "MS-DOS 6.22"

Recently, I came across Boot INI Options Reference, published back in 2006 and still available online, which lists two boot.ini options I've never used previously:

  1. /WIN95
    Directs Ntldr to boot the Consumer Windows boot sector stored in Bootsect.w40. This switch is pertinent only on a triple-boot system that has MS-DOS, Consumer Windows, and Windows installed. See Microsoft Knowledge Base article Q157992 for more information.
  2. /WIN95DOS
    Directs Ntldr to boot the MS-DOS boot sector stored in Bootsect.dos. This switch is pertinent only on a triple-boot system that has MS-DOS, Consumer Windows, and Windows installed. See Microsoft Knowledge Base article Q157992 for more information.

Yet, Q157992 tells nothing new except

The new switches, /win95dos and /win95, are needed so that Windows NT can emulate the multiple boot process of Windows 95/98.

What it doesn't tell in particular is now to resolve name conflicts between io.sys, io.dos, and io.w40 (and their msdos.{sys,dos,w40} and command.{com,dos,w40} counterparts) when switching from Windows 9x to DOS and vice versa.

Questions:

  1. What exactly /win95dos and /win95 switches are needed for? I've successfully booted MS-DOS, Windows 9x, Linux and even Solaris/x86 like hundreds of times, w/o any extra switches. Yet, I can confirm these switches do make some difference: a Windows 98 VBR indeed can't be combined with an explicit /win95dos switch (the boot process simply doesn't go beyond the black-screen-with-a-blinking-cursor stage).
  2. How do I triple-boot Windows NT 4.x/5.x, Windows 9x, and MS-DOS from the same primary partition (C:) of a single hard drive, using NTLDR? Yes I'm aware Windows 9x boot loader can boot "your previous operating system" (which happens to be MS-DOS) via Windows 9x boot menu, but how do I do that via boot.ini? Microsoft claim this is possible, they can't be mistaken, right?

Reply 1 of 1, by ott

User metadata
Rank Newbie
Rank
Newbie
unix_junkie wrote on 2024-12-23, 10:57:
  1. What exactly /win95dos and /win95 switches are needed for?

These switches just renames DOS/Win9x system files on the drive C: depending on selected system:

The /WIN95 and /WIN95DOS switches cause NTLDR to rename the DOS and Win95 system files back and forth so that the "correct" names are used with the operating system selected. (If you have not noticed before, look at the hidden files in the root of C: when running DOS and Win95. Under Win95, the DOS files are renamed IO.DOS and MSDOS.DOS; under DOS, the Win95 files are renamed WINBOOT.SYS and MSDOS.W40; IO.SYS and MSDOS.SYS always belong to the "current" operating system.)

I found this great article about triple-boot system:
https://web.archive.org/web/20050212125036/ht … directboot.html