Subject: Re: Native boot [was Booter 1.8]
To: Andrew Gillham <gillham@andrews.edu>
From: Allen Briggs <briggs@puma.bevd.blacksburg.va.us>
List: port-mac68k
Date: 12/15/1995 23:00:04
> Hmm, to be honest, I don't understand why NetBSD/mac68k needs MODE32
> at all.  From what I can tell MODE32 is supposed to make the ROMs 32bit
> clean, yet NetBSD only uses the ADB ROM code?  So, if MODE32 is required
> to correctly setup the PMMU mappings, why can't that be done by the
> kernel?  

Well...  It could, but things are complicated by the different memory
architectures that are used.  On the II and friends, there are two banks
of four SIMM slots.  The GLU chip maps Bank B to follow Bank A in
memory, so if you have 2MB of RAM (1MB in each bank), the second MB starts
at address 1MB.  If you have 8 MB, the 5th MB starts at address 5MB.  In
the IIsi, the first MB is soldered onto the motherboard at physical
address 0, and bank B is hardwired to start at address 0x04000000.
The ROM maps that to virtual address 0 (if internal video is enabled)
or virtual address 1MB (if internal video is disabled).  The first
part of the memory in that 1MB in bank A is mapped into NuBus space
to look like a video card and the remainder is mapped to follow the
memory in bank B--so that the virtual map is contiguous.  The IIci is
similar, but bank A is four SIMM slots, too, so it's of variable size.

There's also no good, easy way to determine the amount of RAM in the
system (that I've found).  You can't even try probing because the
address map wraps around (i.e., in an 8MB Mac II, the memory address at
8MB should fault, right?--wrong.  It's a copy of the byte at address 0).

Anyway, these are a few of the more fun things about booting...  Right
now, the IIsi won't work w/o internal video because of the above issues.

If it sounds confusing, that's 'cause it is.  The Classic II looks like
it's another fun game, too, like the IIsi, but different.  [ anyone care
to glance at the Classic II developer's note and explain the reasons for
that memory architecture? ]

-allen

-- 
Allen Briggs - end killing - allen.briggs@bev.net ** MacBSD == NetBSD/mac68k **
   Where does all my time go?  <a href="http://www.netbsd.org/">Guess.</a>