Subject: Re: Boot from floppy problems ...
To: None <mycroft@gnu.ai.mit.edu>
From: Duncan McEwan <duncan@Comp.VUW.AC.NZ>
List: netbsd-bugs
Date: 06/15/1994 13:18:22
> So far you've described what happens when you boot from a floppy.
> (Looks to me like you need to label it.)

Sorry.  I guess I didn't state it explicitly, when I said that the same kernel
would boot fine on a 33MHz 486, I meant was that *the same diskette* booted
fine on the 486...

> But:
> ...
> you mention that it doesn't boot (apparently from your hard disk), but
> give no indication as to what happens.

Yeah ...  I was attempting to avoid confusing things by putting too much in the
one message, but I guess I failed... :-(

Anyway, there's no need to go into the full gory details now, since I just
solved the problem.

It appears that a hack that got put into i386/machdep.c as patch 1 (or was it
patch 2, it's too long ago to remember) of Terry Lambert's patch-kit for 386bsd
0.1 was removed sometime over the last few months.  That hack coped with
braindead pc bios's that report a base memory size of 639KB rather than 640KB.
(I think they are actually reporting the highest basemem location rather than
the basemem size).  My AT&T PC needed it to boot, as did at least one other
brand of PC (HP Vectra?).

My 386 happily boots a June 1st kernel with the following patch applied.

*** machdep.c.orig	Thu May 26 00:17:45 1994
--- machdep.c	Wed Jun 15 10:59:00 1994
***************
*** 1081,1087 ****
  #define	BIOS_BASEMEM 640
  #endif
  
! 	if (biosbasemem == 0 || biosbasemem > 640) {
  		printf("warning: nvram reports %dk base memory; assuming %dk\n",
  		    biosbasemem, BIOS_BASEMEM);
  		biosbasemem = BIOS_BASEMEM;
--- 1081,1087 ----
  #define	BIOS_BASEMEM 640
  #endif
  
! 	if (biosbasemem == 0 || biosbasemem > 640 || biosbasemem == 639) {
  		printf("warning: nvram reports %dk base memory; assuming %dk\n",
  		    biosbasemem, BIOS_BASEMEM);
  		biosbasemem = BIOS_BASEMEM;

I know it's ugly, but could something like this be put back into machdep.c?

Duncan

------------------------------------------------------------------------------