QEMU/PowerPC

From Computernewb Wiki
Revision as of 06:06, 6 April 2023 by Dartz (talk | contribs)
Jump to navigation Jump to search

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 Volume_1.iso

If you have a physical CD, you can replace -cdrom 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 AIX_CD_1.iso

If you have a physical CD, you can replace -cdrom Volume_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