Recently there has been a lot of progress on the OpenBIOS side to get Mac OS X to boot.
For a while now it seemed there was only very little to make it a fully working guest os in QEMU. This patch set is the result of this. With this I can successfully boot Mac OS X 10.2 to 10.4 with the g3beige machine all the way to the GUI. I was not able to boot 10.0 or 10.1, both of which crashed in interrupt controller registration. 10.5 does not include drivers for g3beige anymore. Everything as of 10.6 is x86 only. The mac99 target doesn't look quite as good, but also very close. FWIW only minor issues in our NVRAM layout keep us from using that one. 10.4 already boots for me. Please don't try to run this with KVM yet. Mac OS X uses mixed mode (half real, half paged) extensively, which happens to break badly in KVM. For reference, here are a few pictures: https://dl.dropboxusercontent.com/u/8976842/Screen%20Shot%202013-06-29%20at%2021.25.38.png https://dl.dropboxusercontent.com/u/8976842/Screen%20Shot%202013-06-29%20at%2005.21.03.png If you want to try this out, please apply the patches on top of my ppc-next queue. Or just use this git repo: git://github.com/agraf/qemu.git macos-v2 Enjoy! Alex v1 -> v2: - fix spaces - use non-bitrotting DPRINTF for macio - clean up - fix dprintf - make processing a bool Alexander Graf (17): PPC: Mac: Fix guest exported tbfreq values PPC: g3beige: Move secondary IDE bus to mac-io PPC: Macio: Replace tabs with spaces PPC: dbdma: Replace tabs with spaces PPC: Mac: Add debug prints in macio and dbdma code PPC: dbdma: Fix debug print PPC: dbdma: Allow new commands in RUN state PPC: dbdma: Move defines into header file PPC: dbdma: Introduce kick function PPC: dbdma: Move static bh variable to device struct PPC: dbdma: macio: Add DMA callback PPC: dbdma: Move processing to io PPC: dbdma: Wait for DMA until we have data PPC: dbdma: Support unaligned DMA access PPC: Add timer handler for newworld mac-io PPC: Update PPC OpenBIOS PPC: dbdma: Support more multi-issue DMA requests hw/ide/macio.c | 239 ++++++++++++++++++++++++++++++++++++++++++--- hw/misc/macio/mac_dbdma.c | 193 ++++++++++-------------------------- hw/misc/macio/macio.c | 125 +++++++++++++++++------- hw/ppc/mac.h | 3 + hw/ppc/mac_newworld.c | 5 +- hw/ppc/mac_oldworld.c | 22 ++--- include/hw/ppc/mac_dbdma.h | 124 +++++++++++++++++++++++ pc-bios/openbios-ppc | Bin 733972 -> 1358022 bytes 8 files changed, 502 insertions(+), 209 deletions(-) -- 1.8.1.4