Hello, Peter! > > After the patch that fixed CDROM boot, strange things happen in stage2. > > When I press Tab after typing "root=(" I get now > > (fd0) (fd1) (fd2) (fd3) (fd4) (fd5) (fd6) (fd7) (hd0) > > Yes, that's happening for mee to on a noname-machine with Award-BIOS. I > can't remember seeing this on the Compaq and Dell-machines, but I'm not > sure. > > > Apprarently, get_diskinfo_standard (INT 13 AH=8h) returns success for > > every drive (Intel 440ZX, Award BIOS) > > Have you checked what return values you get, eg. if the geometry makes > sense? I'll check it this evening. Supposedly, zero values are returned. > > Maybe it would be better to find out why get_diskinfo_floppy doesn't work > > correctly? I suspict that the controller should not be reset (INT 13 > > AH=0h) > > I don't like the get_diskinfo_floppy at all, because it's just trial and > error. INT13,8 seems like the right way to do it. This is my suggestion: > Check if INT13,8 returns usable values even for (fd7) etc. If it does, > maybe we can use get_diskinfo_floppy to check for the presence of the > drive, but use INT13,8 to get the geometry? > > > Why are the data read by get_diskinfo_floppy wrong? Maybe the BIOS tries > > Have you looked at get_diskinfo_floppy? What it does is trying to access > the drive with 36, 18, 15, 9, 0 sectors per track, respectively. Are there > really any guaranties that such an attempt will fail for all but the > correct value? Not as far as I know. And indeed it doesn't work with CDs > and Compaqs. Oops, I have misunderstood what it does :-( Indeed, the bootsector values are not used and should not be used (imagine ext2 floppy). We should probably get rid of this method (using ifdef). Pavel Roskin