I've been exploring OpenFirmware on x86, under qemu with coreboot.
I've been trying to run the hello.elf example. I have trouble
loading it from an ext2 file system, I get an message:
ok boot /pci/pci-ide@1,1/ide@0/disk@0:\hello.elf
Boot device: /pci/pci-ide@1,1/ide@0/disk@0:\hello.elf Arguments: root=/dev/ram0 mount_ramdisk=1
Unimplemented package interface procedure
Undefined word encountered
I also tried using using qemu's -option-rom function
to throw a raw binary into the address space that i
could then place in memory with 'cmove' and then
tried to 'branch' or 'execute' it.
This method probably isn't worth pursuing much,
even thought it did get me the furthest.
The problem there was that the pointer to the
openfirmware interface function wasn't getting
passed in %eax, but then again, I wasn't using 'boot'.
Anyway, tips on this would be appreciated.