[OpenBIOS] patch that causes a regression with Mac OS X booting

Programmingkid programmingkidx at gmail.com
Sun Dec 13 18:28:28 CET 2015


On Dec 11, 2015, at 6:28 AM, Mark Cave-Ayland wrote:

> On 10/12/15 15:02, Programmingkid wrote:
> 
>> https://lists.gnu.org/archive/html/qemu-devel/2015-10/msg05556.html
>> 
>> From the message in the link, you said there was a patch that is needed to boot Mac OS 9, but can't be applied because it causes a regression with Mac OS X. Could you send me the patch. I would like to fix it so that all the patches needed to boot Mac OS 9 can be applied to OpenBIOS. Thanks.
> 
> The outstanding OpenBIOS patch is this one:
> 
> http://www.openfirmware.info/pipermail/openbios/2015-August/008763.html
> 
> The reason it can't be applied is a little complicated. The MacOS 9
> bootloader alters the call stack using >r and r> which is illegal
> outside of a word in Forth - it's like a function changing it's stack
> pointing and hoping the caller can cope upon return.
> 
> I suspect the above patch only works through chance because OpenBIOS
> uses a trampoline to execute words and so the trampoline is corrupted on
> exit. It also causes yaboot to throw errors in my tests here, as found
> on a Fedora PPC Linux for example which isn't a good solution either :(

I was able to boot Debian Linux using the same OpenBIOS binary that is
used to boot Mac OS 9. Debian uses the Quik loader. Is Fedora PPC the only
operating system with the problem? Do you have a link to the image file you
use for testing?


More information about the OpenBIOS mailing list