Subject: Re: macbsd port
To: None <macbsd-general@sun-lamp.cs.berkeley.edu>
From: Real Artificial Leather-like Brad Grantham <grantham@netcom.com>
List: macbsd-general
Date: 01/07/1994 13:04:49
> I was just wondering.. Is there anyway to access the toolbox routines
> that do keyboard access and other important stuff?

If there is documentation on caging up the ToolBox and making it do our
dirty work, I'd use it in a second.  Let me know if you come across any.
Our initial thoughts were that figuring out how to fool the ToolBox would
me orders of magnitude harder than fooling the hardware.  I'm almost certain
that's still true.

> I know that toolbox routines don't take kindly to pre-emptive
> processing but How does Apple do it with A/UX? It interacts with the
> toolbox and when it installs itself, it installs the right drivers to work
> with the right computer. Hmm.. might have to do some reverse 
> engineering.

Our understanding is that A/UX does NOT in fact use the Toolbox, but
does what we do; access the hardware directly.  If this were not the
case, it would not have to be ported to every new machine that comes
out.  True, it probably does install the right drivers per computer,
but then so does NetBSD/Mac.  The drivers are probably just modules
like ours that they set pointers to on start up, so interrupts go to
the right place, and ADB makes the right memory accesses to get its
job done.  But I don't believe these are actually calls to the ROM.

Maybe someone at Apple on our mailing list could shed some light on this?

*mild frustration on*
Everyone keeps asking us why we don't use the ToolBox!  
Honestly, we're not stupid, I swear!  It's just that after very intense
research, it looked like it would be easier to slam the hardware
directly.
*mild frustration off*

If we had found a way to access the ToolBox routines,
including MacOS patches which are loaded on startup to fix ROM bugs,
we would have tried it.  Zon Williams MacMach runs on the toolbox,
but he had extensive help from Apple.  I'm not sure we want that kind
of interaction if it would mean licensing or copyright woes at a later
date!  If anyone is willing to try porting MacBSD to use the ROMs, please
feel free!  In fact, I'll bet the kernel could be built from MacMINT,
which can be found on archive.cis.ohio-state.edu, and then anyone could
at least build a kernel on their machine and test it, even if it won't
run at all.  I intended to try this myself, but I (we) really have bigger
fires to put out, like a new ADB and CI/SI internal video.

		-Brad

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