Subject: Re: Bootable CDs
To: Ross Harvey <ross@teraflop.com>
From: Simon Burge <simonb@NetBSD.ORG>
List: port-pmax
Date: 09/28/1999 14:26:51
Ross Harvey wrote:

> > From: Simon Burge <simonb@NetBSD.ORG>
> > Simon Burge wrote:
> >
> > > From the looks of things, alpha needs the last 32 bytes of the first
> > > sector (with a valid checksum).  I think the pmax needs 24 bytes
> > > starting at byte 8 - the rest of the first sector doesn't matter.  You
> > > mention sparc as a sector-0 dependant arch - do you know what it needs
> > > and if there are any others that need sector zero?
> >
> > Thinking about this a little more - at the moment the pmax stuff assumes
> > that the first stage is in the remainder of the the first 8kBytes of
> > the disk, and it looks like the Alpha does too.  One idea that comes to
> > mind it to allow installboot to take an offset into the disk where stage
> > one is located.  Then on a CD, you could have the iso9660 filesystem
> > finishing at some certain offset before the end of the CD and either the
> > pmax or alpha stage one (or possible both if some other architectures
> > want stuff in the first 8 sectors) after the iso9660 filesystem.
> >
> > Thoughts and ideas?
> 
> Sounds like you are almost there, actually. Regarding pmax vs sparc vs
> alpha, I've already got alpha and sparc booting from the same sector 0;
> pmax would be easy to add. (A whole lot easier than sparc+alpha was, BTW.
> It doesn't overlay and IIRC it does not have a checksum.)
> 
> And yes, one or the other is going to have to put the first stage boot out
> of the way.

I'll look into making installboot take an optional offset for the first
stage.

> iso9660 does not fragment files, so the first stage program could be a
> named file on the disk, if the installer prog understood that.  Also, the
> iso9660 FS starts about twice as far away from sector 0 as FFS does, so
> there is probably room for both first stage programs anyway.

I've been hacking on the alpha bootblocks and got bootxx_ffs working
on the pmax and bootxx_cd9660 compiles but I dunno if it works.  I'm
completely clueless on iso9660 filesystems - I'd like to stick an
iso9660 filesystem on an rz23l (115MB).  The pmax treats hard disks and
CD-ROMS exactly the same from the PROM point-of-view, so that won't be a
problem.  Do you have a simple guide to making a NetBSD CD - I couldn't
find one with a quick search on www.netbsd.org.

While talking about bootblocks, it appears that the alpha _always_
loads stage one at a fixed address and hence you can get away with just
storing a chunck of text+data in /usr/mdec - correct?  The pmax first
stage stores both a load and exec address in sector 0, so we'll probably
have to store them in some sort of executable format in /usr/mdec.

Simon.