"Adam Heath" <firstname.lastname@example.org> wrote:
[Snip requirements of W95 to boot from a partition]
> Not true. Look below. All cut and pasted from Win95.
[Snip partition setup]
I gave the short version of the requirements, which I expected to
satisfy most readers ;-) I must admit I never thought of using an
_extended_ partition MBR to get to LILO, though. To give the more
precise list of requirements (that also explains why your setup works):
DOS (and W95) require to be booted from drive C: (ignoring floppies
again). During booting, at some stage before processing config.sys, it
switches from loading files from the actual boot drive to loading them
from drive C:. If these are not the same, weird things can happen
(processing of config.sys of another partition, or refusing to load
command.com because it has the wrong version number). The way DOS
assigns drive letters is this:
* All non-DOS partitions are completely ignored. This includes OS/2's
hidden DOS partitions.
* Each _active_ primary DOS partition on each subsequent drive is
assigned the next drive letter, even if it is not the first primary
DOS partition. If a drive has no active (DOS) partition, its _first_
primary DOS partition is assigned a drive letter. If no primary DOS
partition exists on the drive, no drive letter is assigned in this
* All _extended_ partitions on all subsequent drives are assigned drive
letters in turn.
* Lastly, all remaining primary partitions on all subsequent drives are
assigned drive letters in turn.
As can be seen from this, if the active flag is _not_ set on the first
harddisk (or if it is set to something DOS doesn't recognise as a valid
boot partition, like the extended partition MBR), the _first_ primary
partition will be called C: and can be booted from. This explains why
your setup works.
Another consequence is that if there are no primary DOS partitions on
the first drive (e.g. because a boot manager hid them), DOS should be
able to boot from the second drive, since the first (or active) DOS
partition on that drive would be called C:. Note the ``should'':
format.com and sys.com set the boot drive number in the bootsector
incorrectly, so it needs a small patch to get this working. Also note
that the W95 installation program can't handle this.
(If you really need W95 on HD2, make the second HD the first one,
install W95, make it the second one again and patch the bootsector
(change the byte at offset 0x24 to <0x80 + zero-based drv number>,
e.g. 0x81 for the second harddisk). Then use LILO or another boot
manager to boot it, and don't do it through the MBR of the second HD
(as the default DOS MBR software can only boot partitions on the first
drive). I have done this, and it works.)
Gertjan Klein <email@example.com>
The Boot Control home page: http://www.xs4all.nl/~gklein/bcpage.html
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
Trouble? e-mail to firstname.lastname@example.org .