Subject: Re: installed, but can't boot
To: Guy Santiglia <fredfl2@soback.kornet21.net>
From: Greg A. Woods <woods@most.weird.com>
List: port-i386
Date: 01/21/1999 13:27:22
[ On Thu, January 21, 1999 at 12:48:04 (+0100), drochner@zel459.zel.kfa-juelich.de wrote: ]
> Subject: Re: installed, but can't boot 
>
> > > I get this message: "operating system not
> > > found" Why can't it find the kernel and boot? 
> 
> This message does not originate from the NetBSD bootloader.
> It must come from the MBR code. So you should check with
> "fdisk" whether the partition table is set up correctly.
> Perhaps the NetBSD partition must be set "active", or
> the geometry data are wrong.

I just went thorugh the most horrendously horrid experience trying to
get a hand-crafted >4GB SCSI disk to boot 1.3.3 on an i386 machine.

The first problem was that I'd "forgotten" to fdisk the disk when first
making it -- I just disklabel'ed it and newfs'ed it (mostly because I
had it attached to an IDE based system with a non-BIOS host adapter).

It seems as though it's impossible to "fix" this situation, though my
attempts may have fallen victim to the next problem.

Eventually I decided it would be easiest to start fresh on another disk,
so I attched both the non-fdisk'ed disk, and a supposedly blank disk, to
my -current machine and proceeded to fdisk, disklabel, newfs, and then
transfer the filesystems.  Unfortunately the new disk still wouldn't
boot!  It turned out that sector zero did not contain the string "Author
- Siegmar Schmidt", i.e. had old code in it.  I ended up having to dd
sector zero from my -current system onto the new disk and re-run fdisk
to clean up the DOS partitioning.

The apparent lesson from all this is that fdisk on 1.3.3 does not update
an existing MBR (sector zero I mean) with new code if there seems to be
valid code already there.  I've not yet had time to investigate the code
and see if this is true or not, but it's very reminiscent of similar
rumours that I seem to remember.  This seems to be confirmed by the
-current manual page though, and luckily there's a way to force the
-current fdisk to zap a new MBR down anyway -- I wish I'd known this
much earlier in my adventure though.

During all this adventure I did once manage to get the "Operating system
not found" error to appear (instead of the customary blank screen that
accompanies a busted boot sequence).  The cause of this was turning off
the "Extended BIOS translation" in the Adaptec SCSI BIOS.

I think someone also needs to fix documentation to mention that for
drives bigger than 4GB the Adaptec BIOS translation seems to be to 255
heads, 63 sectors (and then if you use 1024 cylinders, it will easily
cover an entire 8GB drive with a single DOS partition).  I don't know
why fdisk can't be made smart enough do this all by itself for SCSI
disks (perhaps with a curt reminder to the user to ensure the extended
BIOS translation is enabled).

The damn PC BIOS sucks so badly that I can't even begin to express it in
words.  It always has, even in the original PC, and even after it was
"improved" and extended in the AT -- perhaps even more so.

-- 
							Greg A. Woods

+1 416 218-0098      VE3TCP      <gwoods@acm.org>      <robohack!woods>
Planix, Inc. <woods@planix.com>; Secrets of the Weird <woods@weird.com>