Qemu-PPC has come a long way, so I thought I'd add an update and some new info.
As far as OS 9 support, you can boot OS 9.x with all extensions enabled. The Sungem ethernet device in now in the master and works very well, with no need to install 3rd party drivers for the Mac OS.
There is a branch working on the Screamer audio device, and it is reported to work well with OS 9, and some early versions of OS X, but later versions are still having trouble with it. Hopefully the bugs will get ironed out soon and it will be merged with the master.
As far as the speed of the emulated CPU, on my Ryzen 7 1700 @3.75 Ghz the integer performance is about the same as a 1.27 Ghz G4. However the FPU and Vec units are in desperate need of work, and perform about as well as a 70 Mhz G4.
There is no emulation of the L2 or L3 cache. Cache emulation presents at set of problems that are, as yet, unimplemented. It's very hard to emulate this sort of thing, and have there be any real speed benefit.
I've done some work adding some more PPC CPU's to Openbios and Qemu, but that was done for my benefit so I could use these CPU's under Linux PPC with KVM.
The state of KVM on the G4 is very poor and buggy. With the 7447a ( PVR 80030105 ) You'll need to patch qemu-system-ppc and OpenBios to support it, but for some reason OS X's mach_kernel tries to read the state of the L3CR to make sure the register returns 0x00000000, and if it doesn't then it tries to write that value to the register. This is very odd, and perplexing, as the 7447a does not have, nor support an L3 cache, nor would that register be writable.
I implemented the L3CR register with a patch to qemu-system-ppc, but KVM will not allow a read there, so the kernel just hangs. Some more work to patch KVM is needed, but I haven't figured a correct patch.
You can boot OS X with --enable-kvm -cpu 7410, 7400, G3, 604. On the 7447a and you will get KVM acceleration but it's buggy at best. Seem to have a lot of trouble with disk access.
The state of KVM on the 7455 is even worse, I'm pretty sure KVM is conflicting with disk access. Oddly, OS X doesn't care that there is no L3CR on a CPU that has an L3 cache. KVM does not seem to pass the cache, and Openbios has no support of it.
OS 9 with KVM on the 4747a is a no go, the Mac OS Rom does something KVM doesn't like.
OS 9 with KVM on the 7455 is also a no go, Openbios says it can't find a valid state or init program when trying to boot the 9.2.2 Retail install CD. Odd, because without KVM it boots just fine, tho I haven't looked into tracking down the issue yet.
For those that are anti-emulator, all I can say is OS 9 booting hardware is getting more and more rare every day. People are just trashing these things as the cost of shipping exceeds the sale price, and even if you get one that works, the hardware is:
A. Never going to get any faster.
B. Not going to last forever.
Qemu-system-ppc will continue to get faster, not only as we work to better code the emulator, but as the host cpu's get faster. The DTC module that is in the master is good for a 10% increase across the board for the CPU.
Also, if anyone ever wants to get the G5 to native boot OS 9, it just far easier to debug an emulator than it is the bare metal, and you won't fry your logicboard.
