[Debootloaders-miboot] current status of miBoot

Piotras piotras at gmail.com
Thu Jul 27 20:07:06 UTC 2006


On 7/27/06, Aurélien wrote:
> On Wed, Jul 26, 2006 at 11:41:41PM +0100, Piotras wrote:
> > For development and testing you could try Mac-on-Linux in OldWorld
> > mode. You would need to own a compatible machine [1] to legally get
> > MacOS ROM from it. I've got my PowerMacintosh 8500 from a friend who
> > didn't need it anymore.
>
> There is no need as I have a 7600 and Ludovic (subscribed to that ML)
> has a Beige G3, but thanks anyway.

I mentioned Mac-on-Linux because it could make testing easer and
faster. And also it has a built-in debugger that works at boot time!

>
> > The problem with using this attribute for miBoot is that it triggers
> > some problems with binutils for my target (powerpc-ibm-aix4.1).
>
> Thanks for the explaination. May I ask why you are using that
> toolchain? Are MacOS binaries the same as AIX 4.1 ones?

AIX ABI is close enough to work with MacOS ROM:-) In fact Macintosh
PowerPC ABI is based on the PowerOpen ABI which in turn was derived
from AIX.

>
> Therefore, we will have 2 build-dependencies at least:
>  * one on a m68k toolchain for the first stage (bootblock);
>  * another on a powerpc toolchain for the second stage (miBoot itself).
>
> Do you know *when* the transition between the 2 architectures takes
> place? It is when the first stage jumps to the second stage?

Most of miBoot is m68k based (possibly the same code is compiled
to PowerPC for BootX). There are three calls to PowerPC code from
m68k, two of which return. First is initialization subroutine in
pre_strap_ppc.c that returns handle of ShutDownDevices subroutine
(in the same file). Then m68k code calls ShutDownDevices. Finally
kernel bootstrap code from bootstrap.S is called (this transition is
different - it seems to rely on specific trap in the m68k emulator
implemented by MacOS ROM).

>
> Cheers,
> --
>  .''`.   Aurélien GÉRÔME

Regards,

Piotr



More information about the Debootloaders-miboot mailing list