Date: Wed, 16 Feb 2000 16:18:42 -0800 (PST) From: Tom Bartol <bartol@salk.edu> To: Mike Smith <msmith@FreeBSD.ORG> Cc: "David E. Cross" <crossd@cs.rpi.edu>, Gerald Abshez <gerald@manhattanprojects.com>, freebsd-current@FreeBSD.ORG Subject: Re: Thinkpad won't boot ISO image Message-ID: <Pine.BSF.4.10.10002161610520.56320-100000@eccles.salk.edu> In-Reply-To: <200002170003.QAA01571@mass.cdrom.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 16 Feb 2000, Mike Smith wrote: > > > 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. O.K. I've got a burner and boat loads of cheap media so no problem there. One question though -- Once I've modified the sources as you've outlined below, how do I make the bootable floppy image that gets written to the CDR? > > 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. Understood (I think) :-) On my Thinkpad I believe I've seen things like 0x8b or some such. This will be the first CD to burn... > > 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. O.K. this makes a lot of sense and sounds easy. > > If you decide to take this on, please let me know how you go. Will do! > > Thanks! > And thank you too!!! Tom To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.10.10002161610520.56320-100000>