On Fri, 27 Feb 1998, Chris Arguin wrote:
As an innocent bystander just entering the show, it appears to me that you are trying to reinvent the wheel here. Have you yet discussed the possibility of simply implement Open Boot (on Sun) or Open Firmware (on PowerPCs)? Same thing. It's availeable on PCI PowerMacs through a three-button combo at powerup. Allows for insertion of device drivers through interpreted/semicompiled Forth code and U*IX like device trees.
It is an open standard; IEEE 1275-1994. More important, it *works*. Now. Probabely the best place to read about it is on the home page of the Open Firmware Working Group at;
http://playground.sun.com/pub/p1275/
But let me quote some highlights from FirmWorks home page:
http://www.cuviello.com/_portfolio/_FirmWorks/technology.powerfeatures.html
--- Open Firmware encodes the drivers in a machine-independent language called "FCode". FCode is a byte-coded "intermediate language" for the Forth programming language. The same FCode driver can be used on systems with different processor types.
Open Firmware can debug hardware, operating system software, plug-in drivers, and even the firmware itself through Interactive Debuggers.
The Open Firmware client interface allows the OS to examine the device tree, temporarily use Open Firmware device drivers, display progress messages on the console device, allocate memory, and utilize other Open Firmware services. Usually, after the OS is fully initialized, it assumes responsibility for most of these tasks, and Open Firmware is no longer needed until the machine is rebooted.
The device interface specifies the full set of FCode primitives guaranteed to be available to an FCode driver.
A full-featured Open Firmware implementation, including debuggers, network protocols, selftest diagnostics, drivers for on-board devices, keyboard maps, graphics device support libraries, fonts, and on-line help, usually requires between 128K and 256K bytes of ROM space. ---
Oh, by the way - SILO, the SPARC/Linux loader have no problems reading the ext2fs filesystem and thus first search out 'silo.conf,' reading that and since find the approriate kernel image. No need to rerun SILO just because of an updated 'silo.conf.' OTOH, SILO itself has to be placed somewhere/anywhere OpenBoot can find it. Usually that means sector one of the first partition, but details may be specified to Open Boot.
Unfortunately, I see a problem in how to lobotomate Open Boot to allow legacy BIOS services to be implemented. Perhaps the Quarterdeck Quick Boot feature with a BIOS image reinsertion when needeed is the way to go.
-- http://devworld.apple.com/dev/technotes/tn/tn1062.html http://devworld.apple.com/dev/technotes/tn/tn1044.html http://www.forth.org/ --
Geir Frode Raanes Omega Verksted NTNU, Trondheim Norway.
--- OpenBIOS -- http://www.linkscape.net/openbios/ openbios-request@linkscape.net Body: un/subscribe Problems? dcinege@psychosis.com