Subject: Booting a Sparcstation
To: None <port-sparc@sun-lamp.cs.berkeley.edu>
From: Paul Kranenburg <pk@cs.few.eur.nl>
List: port-sparc
Date: 02/24/1994 20:54:15
I am brooding over some bootcode for use with Sun's openboot-prom interface.

I can get it to load the kernel from a disk filesystem, but only after
other code (say Sun's `/boot') has been in memory before, ie. a "warm" boot.
The problem seems to be the memory map set up by the PROM when doing, eg.
`boot disk1 netbsd'. Sun's bootblocks appear to be linked at 0x440000; if
I do same and stick the result into blocks 1-15 of the filesystem the thing
bombs out with a "Data Exception" at when relocating the in memory copy from 
0x4000 to 0x440000 (this is the first thing the bootblock code does).

Also, the PROM code seems to insist on a Sun disklabel when opening
"/sbus/esp/sd". There is some Forth code in "/package/disk-label" that does
this checking. I suppose there must be a way to re-define or override this
before opening the device, but I don't know how. The bits of docs I have
(Openboot 2.0) are not particularly verbose on the subject.

?

-pk

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