Subject: Re: start.S question
To: Charles M. Hannum <mycroft@mit.edu>
From: VaX#n8 <vax@linkdead.paranoia.com>
List: port-i386
Date: 05/04/1996 18:51:14
In message <el2zq7oox2s.fsf@zygorthian-space-raiders.MIT.EDU>, Charles M. Hannu
m writes:
>I'm already working on that.  There are 5 alternate methods I know of
>for probing the memory size (pulled from Ralf Brown's interrupt list).
>Unfortunately, 2 of them cause some machines to do weird things.
>Sigh.

Hmm.  I just planned on copying erich's GRUB method; it's worked so far
for us on all machines, which isn't to say it is flawless.  I have
a hunch most of his >64MB machines are newer Intel specials.  I haven't
done any >64MB tests, but I have tested some older BIOSes.
(I have his permission; I'm only incorporating a few things from GRUB).

>The code is linked at address 0.  You could link it at 7c00 instead,
>but that would screw you when you hit stage2.

Oh :(

>Because that's what Microsoft does?  Many BIOSes don't reliable report
>the drive number to the boot block.

Interesting.
>From wolf (the OS-BS guy), take it as you wish, I'm not taking sides here:

>..in fact AFAIK almost any BIOS (but probably not all very old ones)
>pass the boot drive number in DL, even to the Master Boot Record (or to
>a OS boot sector at 0:0:1 for that matter).
>I.e. current BIOS's pass either 0x00 for first floppy or 0x80 for the
>first disk. I found only a 1991 Toshiba Notebook yet, which passed
>a garbage value in DL. (But it wasn't worth to run something different
>then DOS. :-))
>
>Passing the drive number in DL is also documented in the PnP Specs and
>in the BIOS Boot Specification Information Revision 1.0 developed by
>Phoenix/Intel/Microsoft/Compaq which allows future BIOS's to support
>multiple boot devices (in Appendix D).
>
>(Can be found at http://www.ptltd.com/techs/specs.html together with
>some other specs, e.g. for a bootable CD-ROM format).