Documentation/Platforms/PowerPC

From QEMU
Revision as of 16:19, 4 November 2016 by Programmingkid (talk | contribs) (Reword a sentence.)

PowerPC Macintosh Emulator


QEMU Installation Directions for Mac OS X, Windows, and Linux


Guest Compatibility


Note: information based on QEMU version 2.7. This spreadsheet might have more update to date information.

Operating SystemStatus
Mac OS 8.0 to 8.6Prints error stating /rtas node is missing from OpenBIOS
Mac OS 9.09.0.4 boots and installs. Other versions may have issues.
Mac OS 9.1Boots and installs
Mac OS 9.2Boots and installs
Mac OS 10.0Boots and installs
Mac OS 10.1Boots and installs
Mac OS 10.2Boots and installs
Mac OS 10.3Boots and installs
Mac OS 10.4 Boots and installs
Mac OS 10.5Boots to installer, can install on USB disk, but disk doesn't boot. Mouse/keyboard only working with -device ich9-usb-uhci1,id=newusb -device usb-mouse,bus=newusb.0
Debian Linux 5Boots and installs
Ubuntu Linux 5Severe video corruption prevents using it
Lubuntu 12.04Boots live CD and installs, but installation does not boot


Guest Installation

Mac OS 9.x
This is the suggested command-line options to install Mac OS 9:

 ./qemu-system-ppc -hda <hd image file> -M mac99 -m 256 -cdrom <iso file of installation media> -boot d

Mac OS 10.2
Booting from the installation media does work. The beigeg3 target works very well with this operating system.
It is suggested that your initial hard drive image file be at least 5GB in size.

This is the suggested command-line options to install Mac OS 10.2:

 ./qemu-system-ppc -hda <hd image file> -m 400 -prom-env boot-args=-v -cdrom <iso file of installation media> -boot d

Mac OS 10.4
This is the suggested command-line options to install Mac OS 10.4:

 ./qemu-system-ppc -hda <hd image file> -M mac99 -m 512 -prom-env boot-args=-v -boot d -cdrom <iso file of installation media>

If you wish to access the internet thru the Mac OS 10.4 guest, you can by adding this to your QEMU command-line options:

 -netdev user,id=mynet0 -device usb-net,netdev=mynet0
or
-netdev user,id=mynet0 -device rtl8139,netdev=mynet0

Note:Mac OS 10.4 installation CD does not support the beigeg3 target. It will boot up, but a error dialog will say this machine isn&#146;t supported.

Mac OS 9 Debugging tips


Macsbug can be used to tell you what exactly stopped booting. The link for it is below.
Mac OS 9.2 comes with a built-in debugger. To use it, set the OpenBIOS variable &#147;APPL,debug&#148;:

Via QEMU's command-line options:

 -prom-env aapl,debug=2000000


In OpenBIOS type:
dev /
2000000 encode-int *Note: the number can be replaced with the many options available
&#147; AAPL,debug&#148; property
then to boot from a cd type:
boot cd:,\\:tbxi

To boot from a hard drive image:
boot hd:,\\:tbxi

Emulated hardware issues

Linux is able to use a wide variety of emulated hardware available to QEMU. Sound and networking devices work well with it. Mac OS 9 and Mac OS X both do not play sound well. This might be a speed problem with the floating point unit. The usb-audio device is the only sound device that works. Networking does work with the RTL8139, sungem, and usb-net devices only. Mac OS 9 needs the sungem in order for networking to work.

Useful Links

Google Summer of Code Discussion for Mac OS 9
Macsbug 6.6.3 - debugger for Mac OS 9
Darwin OS installation iso file
JQEMU - graphical manager for QEMU (requires Java)

Pictures


Project Builder running inside of QEMU Pong 2001 Carbon

Norton Utilities Host and Guest About Dialogs
Mac OS 9.0.4 Doom running in Mac OS 9.2


How do I help

QEMU has many systems that can always be improved. Here is a brief list of possible areas you may want to work on:

  • Documentation
  • Testing
  • Fixing operating system compatibility issues
  • PowerPC emulation
  • User interface
  • OpenBIOS (firmware)
  • Implement a sound card that is compatible with Mac OS 9 and Mac OS X. The usb-audio device is the closest to working on the Mac OS.
  • Implement a 3D video card
  • Improve various hardware (via-cuda, ata controller, etc..)


Knowledge in these areas could help:

  • PowerPC Assembly
  • 68K Assembly
  • Embedded Programming


Contact

If there are any issues with this page, please contact me

Last Updated: November 4, 2016