QEMU/PowerPC: Difference between revisions
No edit summary |
No edit summary |
||
(14 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
QEMU can emulate the '''PowerPC''' architecture. It is able to run a handful of operating systems which |
[[QEMU]] can emulate the '''PowerPC''' architecture. It is able to emulate several machines which can each run a handful of operating systems, which will be documented below. |
||
==Platforms== |
==Platforms== |
||
Line 12: | Line 12: | ||
| 40p |
| 40p |
||
| IBM RS/6000 7020 (40p) (1990) |
| IBM RS/6000 7020 (40p) (1990) |
||
| Can |
| Can run some versions of AIX |
||
|- |
|- |
||
| bamboo |
| bamboo |
||
| bamboo board |
| bamboo board |
||
| First machine emulated by |
| First PowerPC machine emulated by QEMU |
||
|- |
|- |
||
| g3beige |
| g3beige |
||
Line 58: | Line 58: | ||
===IBM RS/6000 7020 (40p)=== |
===IBM RS/6000 7020 (40p)=== |
||
[[File:40p.jpg|thumb|250px]] |
[[File:40p.jpg|thumb|250px]] |
||
Workstation from ~1994. QEMU emulates the following peripherals for this machine: |
|||
*PCI bridge |
*PCI bridge |
||
Line 69: | Line 69: | ||
*PC compatible keyboard and mouse. |
*PC compatible keyboard and mouse. |
||
To start a very simple |
To start a very simple emulation that'll boot into OpenBIOS: |
||
<pre>qemu-system-ppc -M 40p -boot c</pre> |
<pre>qemu-system-ppc -M 40p -boot c</pre> |
||
Line 79: | Line 79: | ||
! Status |
! Status |
||
! Notes |
! Notes |
||
|- |
|||
| AIX 3.2 |
|||
| Not working |
|||
| OS hangs indefinitely |
|||
|- |
|- |
||
| AIX 4.3 |
| AIX 4.3 |
||
Line 88: | Line 92: | ||
| The PCnet driver does not work in this OS; seems to be a bug <br>with the emulation |
| The PCnet driver does not work in this OS; seems to be a bug <br>with the emulation |
||
|- |
|- |
||
| Windows NT 3.51 SP5 |
|||
| AIX 5.2, 5.3 |
|||
| Not working |
| Not working |
||
| Incompatible with OpenBIOS |
|||
| OS indefinitely hangs |
|||
|- |
|- |
||
| Windows NT |
| Windows NT 4.0 RTM |
||
| Not working |
| Not working |
||
| Incompatible with OpenBIOS |
| Incompatible with OpenBIOS |
||
|- |
|- |
||
|} |
|||
| Windows NT 4.0 SP2 |
|||
====Guest installation instructions==== |
|||
=====AIX 4.3===== |
|||
To boot AIX you need a custom BIOS with serial as the console. Fortunately Artyom Tarasenko has done the hard work for us and made a BIOS that works with QEMU. Download it using wget or similar: |
|||
<pre>wget https://github.com/artyom-tarasenko/openfirmware/releases/download/40p-20190413/q40pofw-serial.rom</pre> |
|||
Then create the hard disk image: |
|||
<pre>qemu-img create -f qcow2 aix.qcow2 8G</pre> |
|||
You can download the AIX 4.3.3 CDs from WinWorldPC: https://winworldpc.com/product/aix/43x |
|||
Finally, boot QEMU with the following arguments: |
|||
<pre>qemu-system-ppc -M 40p -bios q40pofw-serial.rom -serial telnet::4441,server -hda aix.qcow2 -vga none -nographic -net none -cdrom /path/to/AIX_4.3/Volume_1.iso</pre> |
|||
If you have a physical CD, you can replace <code>-cdrom /path/to/AIX_4.3/Volume_1.iso</code> with <code>-cdrom /dev/sr0</code>. |
|||
Telnet into port 4441 and begin the installation. |
|||
=====AIX 5.1===== |
|||
Mostly the same as 4.3. Again, you need to download a custom BIOS with serial as the console. The link for that is in the above section. |
|||
Create the hard disk image: |
|||
<pre>qemu-img create -f qcow2 aix.qcow2 8G</pre> |
|||
You can download AIX 5.1 CDs from WinWorld (you only need the first 3 CDs): https://winworldpc.com/product/aix/51 |
|||
Boot QEMU with these arguments: |
|||
<pre>qemu-system-ppc -M 40p -bios q40pofw-serial.rom -serial telnet::4441,server -hda aix.qcow2 -nic user -vga none -nographic -cdrom /path/to/AIX_5.1_CD_1.iso</pre> |
|||
If you have a physical CD, you can replace <code>-cdrom /path/to/AIX_5.1_CD_1.iso</code> with <code>-cdrom /dev/sr0</code>. |
|||
Telnet into port 4441 and begin the installation. |
|||
===Bamboo=== |
|||
PPC440 embedded board, was initially used for KVM on the PPC440 (which has since been removed.) You can boot a Linux kernel on this board by downloading [http://landley.net/aboriginal/downloads/binaries/system-image-powerpc-440fp.tar.gz this image] (you may have to right click and hit "Save Link"), extracting it, and booting QEMU with this: |
|||
<pre>qemu-system-ppc -kernel linux -initrd rootfs.cpio.gz -M bamboo -netdev user,id=u1 -device rtl8139,netdev=u1 -vga none -nographic</pre> |
|||
===PowerMAC family boards (g3beige, mac99)=== |
|||
[[File:PowerMac G4.jpg|thumb|250px]] |
|||
<code>g3beige</code> emulates a G3 PowerMac, whereas <code>mac99</code> emulates the G4 PowerPC Macs. It is recommended to use <code>mac99</code> in almost all cases unless it's for a compatibility reason. QEMU emulates the following peripherals for these machines: |
|||
*UniNorth or Grackle PCI Bridge |
|||
*PCI VGA compatible card with VESA Bochs Extensions |
|||
*2 PMAC IDE interfaces with hard disk and CD-ROM support |
|||
*NE2000 PCI adapters |
|||
*Non Volatile RAM |
|||
*VIA-CUDA with ADB keyboard and mouse. |
|||
Like the 40p, both machines use OpenBIOS, which is capable of booting almost every version of PowerPC MacOS. |
|||
Some options that can be used with mac99 are: |
|||
{| class="wikitable" |
|||
|- |
|||
! Flag |
|||
! What it provides |
|||
|- |
|||
| -M mac99,via=pmu |
|||
| Power Management Unit, provides USB mouse and keyboard |
|||
|- |
|||
| -M mac99,via=pmu-adb |
|||
| Power Management Unit with ADB bus, should be used with older OSes that don't have USB support |
|||
|- |
|||
| -M mac99,via=cuda |
|||
| CUDA power management with ADB bus. Default |
|||
|- |
|||
|} |
|||
====Current OS compatibility sheet==== |
|||
{| class="wikitable" |
|||
|- |
|||
! Operating system |
|||
! Status |
|||
! Notes |
|||
|- |
|||
| Mac OS 8.0 - 8.6 |
|||
| Not working |
| Not working |
||
| |
|||
| Incompatible with OpenBIOS |
|||
|- |
|||
| Mac OS 9.0 |
|||
| Working |
|||
| Only 9.0.4 boots, needs install image for the G4 Cube |
|||
|- |
|||
| Mac OS 9.1 |
|||
| Working |
|||
| |
|||
|- |
|||
| Mac OS 9.2 |
|||
| Working |
|||
| [[QEMU/Guests/Mac OS 9|See this page for detailed install instructions]] |
|||
|- |
|||
| Mac OS X 10.0 "Cheetah" |
|||
| Working |
|||
| |
|||
|- |
|||
| Mac OS X 10.1 "Puma" |
|||
| Working |
|||
| |
|||
|- |
|||
| Mac OS X 10.2 "Jaguar" |
|||
| Working |
|||
| |
|||
|- |
|||
| Mac OS X 10.3 "Panther" |
|||
| Working |
|||
| |
|||
|- |
|||
| Mac OS X 10.4 "Tiger" |
|||
| Working |
|||
| |
|||
|- |
|||
| Mac OS X 10.5 "Leopard" |
|||
| Working |
|||
| Boot with -M mac99,via=pmu |
|||
|- |
|||
| Mac OS X Server 1.0 |
|||
| Working |
|||
| Networking does not work |
|||
|- |
|||
| Debian 10 "Buster" |
|||
| Working |
|||
| Use flag <code>-g 1024x768x8</code> |
|||
|- |
|||
| Lubuntu 16.04 |
|||
| Working |
|||
| Color is inverted on older QEMU versions; use flag <code>-g 1024x768x8</code> |
|||
|- |
|||
| Yellow Dog Linux 6.2 |
|||
| Working |
|||
| Use flag <code>-g 1024x768x8</code>, flag <code>-device rtl8139</code> for network |
|||
|- |
|||
| Ubuntu 12.04 |
|||
| Working |
|||
| [[QEMU/Guests/Ubuntu 12.04 (PowerPC)|See this page for detailed install instructions]] |
|||
|- |
|- |
||
|} |
|} |
Latest revision as of 03:13, 7 April 2023
QEMU can emulate the PowerPC architecture. It is able to emulate several machines which can each run a handful of operating systems, which will be documented below.
Platforms
The following machines can be emulated. To see a full list type qemu-system-ppc --M help
.
Model | Name | Notes |
---|---|---|
40p | IBM RS/6000 7020 (40p) (1990) | Can run some versions of AIX |
bamboo | bamboo board | First PowerPC machine emulated by QEMU |
g3beige | Heathrow based PowerMAC (1997) | |
mac99 | Mac99 based PowerMAC (1999) | Can run Mac OS 9.2 - 10.5 and some Linux distros |
mpc8544ds | Mpc8544ds dev board | |
none | Empty machine | |
pegasos2 | Genesi/bPlan Pegasos II | Can run AmigaOS 4.1 and some other Amiga-like OSes |
ppce500 | Generic paravirt e500 platform | |
ref405ep | ref405ep | Needs a file named ppc405_rom.bin which does not seem to be available anymore |
sam460ex | aCube Sam460ex | Can run AmigaOS 4.1 FE and some others |
virtex-ml507 | Xilinx Virtex ML507 reference design |
Machines
IBM RS/6000 7020 (40p)
Workstation from ~1994. QEMU emulates the following peripherals for this machine:
- PCI bridge
- PCI VGA compatible card with VESA Bochs Extensions
- 2 IDE interfaces with hard disk and CD-ROM support
- Floppy disk
- PCnet network adapters
- Serial port
- PREP Non Volatile RAM
- PC compatible keyboard and mouse.
To start a very simple emulation that'll boot into OpenBIOS:
qemu-system-ppc -M 40p -boot c
Current OS compatibility sheet
Operating system | Status | Notes |
---|---|---|
AIX 3.2 | Not working | OS hangs indefinitely |
AIX 4.3 | Working | |
AIX 5.1 | Working | The PCnet driver does not work in this OS; seems to be a bug with the emulation |
Windows NT 3.51 SP5 | Not working | Incompatible with OpenBIOS |
Windows NT 4.0 RTM | Not working | Incompatible with OpenBIOS |
Guest installation instructions
AIX 4.3
To boot AIX you need a custom BIOS with serial as the console. Fortunately Artyom Tarasenko has done the hard work for us and made a BIOS that works with QEMU. Download it using wget or similar:
wget https://github.com/artyom-tarasenko/openfirmware/releases/download/40p-20190413/q40pofw-serial.rom
Then create the hard disk image:
qemu-img create -f qcow2 aix.qcow2 8G
You can download the AIX 4.3.3 CDs from WinWorldPC: https://winworldpc.com/product/aix/43x
Finally, boot QEMU with the following arguments:
qemu-system-ppc -M 40p -bios q40pofw-serial.rom -serial telnet::4441,server -hda aix.qcow2 -vga none -nographic -net none -cdrom /path/to/AIX_4.3/Volume_1.iso
If you have a physical CD, you can replace -cdrom /path/to/AIX_4.3/Volume_1.iso
with -cdrom /dev/sr0
.
Telnet into port 4441 and begin the installation.
AIX 5.1
Mostly the same as 4.3. Again, you need to download a custom BIOS with serial as the console. The link for that is in the above section.
Create the hard disk image:
qemu-img create -f qcow2 aix.qcow2 8G
You can download AIX 5.1 CDs from WinWorld (you only need the first 3 CDs): https://winworldpc.com/product/aix/51
Boot QEMU with these arguments:
qemu-system-ppc -M 40p -bios q40pofw-serial.rom -serial telnet::4441,server -hda aix.qcow2 -nic user -vga none -nographic -cdrom /path/to/AIX_5.1_CD_1.iso
If you have a physical CD, you can replace -cdrom /path/to/AIX_5.1_CD_1.iso
with -cdrom /dev/sr0
.
Telnet into port 4441 and begin the installation.
Bamboo
PPC440 embedded board, was initially used for KVM on the PPC440 (which has since been removed.) You can boot a Linux kernel on this board by downloading this image (you may have to right click and hit "Save Link"), extracting it, and booting QEMU with this:
qemu-system-ppc -kernel linux -initrd rootfs.cpio.gz -M bamboo -netdev user,id=u1 -device rtl8139,netdev=u1 -vga none -nographic
PowerMAC family boards (g3beige, mac99)
g3beige
emulates a G3 PowerMac, whereas mac99
emulates the G4 PowerPC Macs. It is recommended to use mac99
in almost all cases unless it's for a compatibility reason. QEMU emulates the following peripherals for these machines:
- UniNorth or Grackle PCI Bridge
- PCI VGA compatible card with VESA Bochs Extensions
- 2 PMAC IDE interfaces with hard disk and CD-ROM support
- NE2000 PCI adapters
- Non Volatile RAM
- VIA-CUDA with ADB keyboard and mouse.
Like the 40p, both machines use OpenBIOS, which is capable of booting almost every version of PowerPC MacOS.
Some options that can be used with mac99 are:
Flag | What it provides |
---|---|
-M mac99,via=pmu | Power Management Unit, provides USB mouse and keyboard |
-M mac99,via=pmu-adb | Power Management Unit with ADB bus, should be used with older OSes that don't have USB support |
-M mac99,via=cuda | CUDA power management with ADB bus. Default |
Current OS compatibility sheet
Operating system | Status | Notes |
---|---|---|
Mac OS 8.0 - 8.6 | Not working | |
Mac OS 9.0 | Working | Only 9.0.4 boots, needs install image for the G4 Cube |
Mac OS 9.1 | Working | |
Mac OS 9.2 | Working | See this page for detailed install instructions |
Mac OS X 10.0 "Cheetah" | Working | |
Mac OS X 10.1 "Puma" | Working | |
Mac OS X 10.2 "Jaguar" | Working | |
Mac OS X 10.3 "Panther" | Working | |
Mac OS X 10.4 "Tiger" | Working | |
Mac OS X 10.5 "Leopard" | Working | Boot with -M mac99,via=pmu |
Mac OS X Server 1.0 | Working | Networking does not work |
Debian 10 "Buster" | Working | Use flag -g 1024x768x8
|
Lubuntu 16.04 | Working | Color is inverted on older QEMU versions; use flag -g 1024x768x8
|
Yellow Dog Linux 6.2 | Working | Use flag -g 1024x768x8 , flag -device rtl8139 for network
|
Ubuntu 12.04 | Working | See this page for detailed install instructions |