Subject: Re: The current status of ofwboot.xcf?
To: Lars Nordlund <lars.nordlund@hem.utfors.se>
From: Chris Tribo <ctribo@college.dtcc.edu>
List: port-macppc
Date: 11/21/2003 01:11:26
> So far I have only come to the conclusion that something breaks during
> compiling/linking of the ofwboot program and/or kernel. There have not
> been any changes in the actual ofwboot code, I think. Only in the tool
> chain and kernel.

	The non-executable stack changes in -current would be my guess, 
but, that's totally unfounded.

> And what is the story on xcoff vs. elf here? I have been looking for
> documentation on this but all I can find is description of how open

OpenFirmware before version 3 cannot load ELF code (*), and cannot boot 
large kernels without changing the load-base (**), or gzipped kernels. 
ofwboot.elf is "converted" to XCOFF by elf2ecoff. Some day we should be 
able to generate {E,X,}COFF without using this tool. That may be the 
problem, it may not.

OpenFirmware version 3 and later can load XCOFF and ELF code; but, not 
gzipped kernels. ofwboot.elf would be used in this case to load, for 
example, netbsd-foo_bar.gz 


(*) I have seen "Loading ELF" on an OpenFirmware 2.0f1 B revision ROM, but 
hangs immediately after this. I presume this was an intermediate 
development ROM image before 2.4 or 3.0 was branched at Apple, and is 
probably incomplete, or unusable. Apple has dropped support for OldWorld 
(before 3.0) ROM revisions in OS X, I presume this is because they have 
removed the Apple XCOFF bootx loader from the tree in order to switch to 
all ELF code, but that doesn't seem to be the case either.

(**) MacOS X boots without modifying the real-base, changing our entry 
points and/or telling openfirmware to go away should fix this, but cannot 
be done since we use OF as a video console.