Subject: Re: installboot and second stage
To: NetBSD/i386 List <port-i386@netbsd.org>
From: David Laight <david@l8s.co.uk>
List: port-i386
Date: 07/21/2003 23:43:33
On Sun, Jul 20, 2003 at 09:23:32PM -0500, Dave Huang wrote:
> On Sun, Jul 20, 2003 at 09:55:00PM -0400, Andreas Wrede wrote:
> > Either the man page for installboot needs to mention biosboot or
> > better, biosboot should be installed as /usr/mdec/boot.i386, as the
> > man page indicates.
> 
> I agree :)

I don't know if that part of the installboot man page is correct for any
of the ports!  Certainly the code I copied (forgotten which port it was)
didn't look for boot.xxx, nor look for a second file is the first was absent.

> I tried to switch to the new bootblocks last night, and now I can't
> boot anymore :( I did:
> 
> cp /usr/mdec/biosboot /boot
> installboot -v /dev/rwd0a /usr/mdec/bootxx_ffsv1
> 
> I dual boot Windows XP and NetBSD on the machine in question, and use
> XP's boot selector (which had been working fine with the old
> bootblocks). When I try to boot NetBSD now, the screen clears, and I
> get around 20 garbage characters displayed at the top left of the
> screen, along with a few beeps. It's the same garbage characters each
> time... it's as if it's trying to display the boot message and prompt,
> but is instead displaying garbage.
> 
> Any ideas? :)

Nothing should clear the screen (unless XP's boot selector does it).

It is always possible that the XP boot selector is loading the netbsd
pbr code to the wrong address (I don't trust M$).
The 20 character message might be "No NetBSD partition" being read
from an incorrect segment register.

You should be able to boot your netbsd system using a boot floppy or CD.

Try adding 'call dump_eax' just after the 'mov %cs, %ax' after the
'start0' label in sys/arch/i386/stand/bootxx/pbr.S.
You'll need to change the '#if 0' lower down so that dump_eax.S
gets included, and maybe #define NO_LBA_CHECK to get enough space.

The value output should be 0.

	David

-- 
David Laight: david@l8s.co.uk