At 2023-12-31T16:31:00-0500, Clem Cole wrote:
Next (ney Apple) started with the Mach code base from
CMU. There was
a push in the Valley in those days for something called OpenFirmware
[Warner help here -- I think that it was forth based IIRC, and Sun may
have had their hand in it also].
I'm not Warner but I owned and operated a few OpenFirmware based
machines.
But the key is that it ran on 68K's.
I don't think that's the case. OpenFirmware (OF) ran on SPARC and
PowerPC hardware, at least. And since it was indeed Forth-based, in
principle it could have been ported practically anywhere (assuming
memory requirements for OF itself were met).
The m68k "Old World" PowerMacs used a different firmware entirely; I
assume boot ROM code descended from the original Macintosh (or even
Lisa, maybe). The PowerPC "New World" PowerMacs, which immediately
departed from the beige color scheme, did come in with Apple's
acquisition of NeXT. This may have been the last good thing that Steve
Jobs had a hand in.
On Sun SPARC machines you could get to an OF prompt at any time by
typing "Stop+A" (a.k.a. "L1+A"), using one of the funny left-hand
side
function keys on a generation or two (Type 4??) Sun keyboards. This was
a lot like the "programmer's switch" on some m68k Macs, which was wired
directly to an NMI that MacOS ("Classic") had a fixed vector for.
Open Firmware was an excellent idea; true peripheral portability was
achieved by having "option ROMs" on devices that needed them implemented
in Forth like OF itself. A lot of flexibility here. I don't know how
much of a performance price was paid--people did and do enjoy getting
into bootup-time races--but even if it were competitive, the PC side of
the industry would have stridently claimed it wasn't.
A lot of non-x86 Cisco kit in the 2000s (some PowerPC, and _maybe_ some
MIPS stuff too(?)) used some kind of cut-down descendant of OF called
OpenHackWare. I'm not sure what its dimensions were; it may have mostly
been just the conventions and format that we now recognize as "device
tree" (DTS/DTB), which has perhaps been OpenFirmware's proudest legacy.
It beat the hell out of the PC BIOS alternative for device enumeration,
which always appeared to me to be pure binary chaos with no standard
apart from whatever Microsoft wanted for Windows.
By contrast, OpenFirmware was standardized in IEEE 1275.
By the time the Intel Mac's BIOS had begun to be
replaced in the
WINTEL world by UEFI, Apple committed to using a flavor of it.
Originally EFI, without the "U". I first saw these on first-generation
Itanium machines--huge, hot deskside HP boxes whose innards appeared to
use composite foam like that from aircraft wings for heat piping. The
company I worked for was contracted to help achieve the Linux ia64 port.
I was immediately horrified by EFI's huge step backwards in concept and
implementation. All this technical progress just to return to
unportable device driver ROMs and a C:\ prompt. The hatred of the
Wintel duopoly toward elegance or cleanliness in any aspect of computing
cannot be overstated.
I'm weakly hopeful that the RISC-V community will rediscover
OpenFirmware. It has to date had the good sense to avoid UEFI. A wise
choice, as if they they hand Intel that much control over their
ecosystem, they will surrender all independence, and possibly the
architecture itself, at least in real silicon.
Regards,
Branden