> > The problem with the Thinkpad BIOS is where it puts the emulated floppy
> > image's disk number - it's not in the 'normal' place, and I don't exactly
> > know how to deal with it cleanly. If someone were to lend me a thinkpad
> > or look at this it would be easy to fix.
>
> I'd like to help look at this. I have a ThinkPad 770 and it too exhibits
> this behavior. Unfortunately it's my only laptop so I can't loan it out
> but I certainly would like to help out if I can. I've got an
> up-to-date -current running. What code should I look at in sys/boot and
> how do I figure out where the Thinkpad BIOS puts the emulated floppy
> image's disk number?
You'll need a CD burner and the time & patience to produce a small number
of coasters for this.
In sys/boot/i386/loader/main.c:main() you will need to print the value of
initial_bootdev, sometime after the console is initialised. From what
I've seen, I get the impression that it will be something like 0x87.
This is the root of the problem; floppy disks are typically numbered 0,1
and hard disks are numbered 0x80,0x81, etc. Normally all the unit
numbers are contiguous.
If this is the case, you will need to modify
sys/boot/i386/libi386/biosdisk.c:bd_init() to check whether it's scanned
the BIOS unit number from initial_bootdev, and if not (and it's legal)
scan it as well. Once we've 'probed' the BIOS unit, everything else
should work correctly.
If you decide to take this on, please let me know how you go.
Thanks!
--
\\ Give a man a fish, and you feed him for a day. \\ Mike Smith
\\ Tell him he should learn how to fish himself, \\ [EMAIL PROTECTED]
\\ and he'll hate you for a lifetime. \\ [EMAIL PROTECTED]
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message