Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Aug 2002 08:16:22 +1000 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        "Simon 'corecode' Schubert" <corecode@corecode.ath.cx>
Cc:        swp@uni-altai.ru, <freebsd-bugs@FreeBSD.ORG>
Subject:   Re: boot1.s
Message-ID:  <20020822081252.H461-100000@gamplex.bde.org>
In-Reply-To: <20020821131613.115c0553.corecode@corecode.ath.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 21 Aug 2002, Simon 'corecode' Schubert wrote:

> On Wed, 21 Aug 2002 11:34:29 +0700 mitrohin a.s. wrote:
>
> > file /usr/src/sys/boot/i386/boot2/boot1.s, line 140
> >
> > 		mov $part4,%si			# Partition
> > what %dl have value? i don`t seen initialization for %dl/%dx. bug?
>
> no. that's set by the BIOS.
>
> > 		cmpb $0x80,%dl			# Hard drive?
> > 		jb main.4			# No

Except some BIOSes are broken.  boot1.s trusts %dl if it is >= 0x80
(which should mean a hard drive), but not otherwise.  It assumes
that values between 1 and 0x7f inclusive mean a broken BIOS and
replaces them by 1.  Thus booting from floppy drives other the first
one (according to the BIOS's numbering) cannot work.

Bruce


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020822081252.H461-100000>