From owner-cvs-all  Wed Sep 30 15:50:48 1998
Return-Path: <owner-cvs-all>
Received: (from daemon@localhost)
          by hub.freebsd.org (8.8.8/8.8.8) id PAA15725
          for cvs-all-outgoing; Wed, 30 Sep 1998 15:50:48 -0700 (PDT)
          (envelope-from owner-cvs-all)
Received: from spinner.netplex.com.au (spinner.netplex.com.au [202.12.86.3])
          by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id PAA15608;
          Wed, 30 Sep 1998 15:50:18 -0700 (PDT)
          (envelope-from peter@netplex.com.au)
Received: from spinner.netplex.com.au (localhost [127.0.0.1])
	by spinner.netplex.com.au (8.9.1/8.9.1/Spinner) with ESMTP id GAA14982;
	Thu, 1 Oct 1998 06:49:01 +0800 (WST)
	(envelope-from peter@spinner.netplex.com.au)
Message-Id: <199809302249.GAA14982@spinner.netplex.com.au>
X-Mailer: exmh version 2.0.2 2/24/98
To: shmit@kublai.com
cc: Chris Csanady <ccsanady@friley-185-114.res.iastate.edu>,
        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG
Subject: Re: cvs commit: src/sys/boot/common load_elf.c Makefile.inc 
In-reply-to: Your message of "Wed, 30 Sep 1998 18:27:48 -0400."
             <19980930182748.C269@kublai.com> 
Date: Thu, 01 Oct 1998 06:49:01 +0800
From: Peter Wemm <peter@netplex.com.au>
Sender: owner-cvs-all@FreeBSD.ORG
X-Loop: FreeBSD.org
Precedence: bulk

Brian Cully wrote:
> On Thu, Oct 01, 1998 at 04:39:11AM +0800, Peter Wemm wrote:
> > - It starts the BTX mini-kernel and the third stage runs in there with 
> > BIOS access via vm86 mode.  (this is really cool :-).
> 
> And, for me at least, it craps out right about here. :-(

I did say it had some rough edges, remember? :-)

I use this patch, it's looking on the floppy drive first for
/boot/boot.conf and exploding. I have not looked to see where/why it's dying.
I have a spare windoze box that I use a boot floppy on for testing, the other
one has got the floppy drive disabled in it's loader.

Index: biosdisk.c
===================================================================
RCS file: /home/ncvs/src/sys/boot/i386/libi386/biosdisk.c,v
retrieving revision 1.8
diff -u -r1.8 biosdisk.c
--- biosdisk.c  1998/09/28 20:08:34     1.8
+++ biosdisk.c  1998/09/29 08:29:19
@@ -118,7 +118,7 @@
     int                base, unit;
 
     /* sequence 0, 0x80 */
-    for (base = 0; base <= 0x80; base += 0x80) {
+    for (base = 0x80; base <= 0x80; base += 0x80) {
        for (unit = base; (nbdinfo < MAXBDDEV); unit++) {
            bdinfo[nbdinfo].bd_unit = -1;
            bdinfo[nbdinfo].bd_flags = (unit < 0x80) ? BD_FLOPPY : 0;

> It also complains about /boot/loader.config missing, so I assume
> that in these directions you meant /boot/loader.config, not
> /boot/boot.conf.

That's the normal bootblocks.  They append ".config" onto the name you 
give it to pick up default switches to pass through, and the code space is 
so tight it wasn't possible to fit in code to tell the "read file" 
function whether or not it was an optional file.  This is the real reason 
for a third stage.

The standard bootblocks are looking for /boot/loader.config.  /boot/loader
itself is looking for /boot/boot.conf - a very different file.

Cheers,
-Peter