Subject: Re: Native boot [was Booter 1.8]
To: Erik Bertelsen <erik@sockdev.uni-c.dk>
From: The Great Mr. Kurtz <davagatw@mars.utm.edu>
List: port-mac68k
Date: 12/19/1995 22:48:14
On Tue, 19 Dec 1995, Erik Bertelsen wrote:

> On Mon, 18 Dec 1995, Shawn Pearce wrote:
> 
> This may however be changed by using the "Startup disk" control panel to
> select another default boot disk. In fact this gives the Macintosh user
> a choice of boot device that the PC user does not have.

Don't forget that you can also force the internal hard drive not to mount 
by holding down command-option-shift-delete (forgive me if that's an 
extra key in there, but it works, anyway).

> If the selected hard disk is not present or if it is not bootable, then
> the SCSI bus is searched for another bootable disk.
> 
> Add to this that in the case of partitioned disks, I think that the Mac
> selects the boot partition by taking the first according to a 
> lexicographic sorting of their names.

It's actually based upon the order the partitions fall in the partition 
table.  The system automatically boots from the first partition marked as 
bootable in the partition table.  This partition must be one of the first 
two (3?) partitions in the table in order for the Mac to recognize it as 
bootable.

If the idea is to have a booting partition on the hard drive, make sure 
it's on an external if you want to boot MacOS without a floppy or 
CD-ROM.  Then you can just switch off the external drive until halfway 
through the boot.  Chances are the finder will mount it anyway.  If not, 
just use any SCSI Probe style software to mount it.  Probably the better 
choice, however, is to just stick the boot stuff on a floppy with a 
minimal system (maybe without a finder) and MODE32 if necessary.  It's 
quick, it's easy, and it won't require any recoding.

That still doesn't eliminate the need for the kernel to be able to figure 
out the amount of real memory, though.  Also, I still say a 
compartmentalized kernel would be a Good Thing(tm)*.  Kind of making use 
of external hooks like the current MacOS.  Basically, if you need to 
upgrade the serial code, you'd release ModSerial31.  If you need to 
add support for a new module, of course, you'd still have to rerelease 
ModMain26.  However, users would still be able to keep that one patched 
ADB code module ModADB17 that happens to work on your system when none of 
the others do.  Although that make every system different, the 
functionality *shouldn't* be affected.  Basically, though, every user 
could customize his/her system using code for each section that work on 
his/her system.

Thoughts, comments, suggestions, anyone?


 /---------------------------------------------------------------------\
|David A. Gatwood             And Richard Cory, one calm summer night,  |
|davagatw@mars              Went home and put a bullet through his head.|
|dgatwood@nyx.cs.du.edu              --Edwin Arlington Robinson         |
|http://mars.utm.edu/~davagatw -or- http://nox.cs.du.edu:8001/~dgatwood |
 \---------------------------------------------------------------------/

* Good Thing(tm) is a trademark of somebody else.  All other trademarks 
and registered trademarks are trademarks of their respective holders, 
whoever they are.  All opinions expressed here are not my own.  They are 
those of somebody else.  All other opinions are the opinions of their 
respective writers, whoever they are (maybe).  This is a recording.