Subject: Re: 1.2 i386 bootstrap 'read error' problem (Help).
To: Mike Long <mike.long@analog.com>
From: Matt Beal <beal@umiacs.umd.edu>
List: netbsd-help
Date: 10/18/1996 22:04:43
> >The problem is when
> >attempting to boot off the hard drive. Instead of booting I get a "Read
> >Error.", so it appears to be a problem with the bootstraping.
>
> Is the drive set up correctly in your machine's BIOS? The i386 boot
> loader uses BIOS disk I/O routines to load the kernel into memory; if
> the BIOS can't figure out how to talk to the disk, you're hosed.
Actually the problem here (wasn't there a FAQ on this?) is a flaw in many
BIOS's where they don't pass the boot drive number in DL like they're
supposed to. I used the attached patch to create some alternate boot
blocks to get my system to boot.
I'm unable to compile anything right now, else I'd put a new block up
so you could ftp it, but perhaps some other kind soul could help you out.
matt
------<snip>------
*** /usr/src/sys/arch/i386/boot/start.S Mon Oct 14 12:07:26 1996
--- start.S Fri Oct 18 21:57:32 1996
***************
*** 110,118 ****
#endif /* DEBUG */
# bootstrap passes us drive number in %dl
- cmpb $0x80, %dl
data32
! jae hd
fd:
# reset the disk system
--- 110,117 ----
#endif /* DEBUG */
# bootstrap passes us drive number in %dl
data32
! jmp hd
fd:
# reset the disk system