xref: /qemu/docs/system/ppc/amigang.rst (revision 71569cd8aba31fcb3a326c56c307d2b811417c0b)
1=========================================================
2AmigaNG boards (``amigaone``, ``pegasos2``, ``sam460ex``)
3=========================================================
4
5These PowerPC machines emulate boards that are primarily used for
6running Amiga like OSes (AmigaOS 4, MorphOS and AROS) but these can
7also run Linux which is what this section documents.
8
9Eyetech AmigaOne/Mai Logic Teron (``amigaone``)
10===============================================
11
12The ``amigaone`` machine emulates an AmigaOne XE mainboard by Eyetech
13which is a rebranded Mai Logic Teron board with modified U-Boot
14firmware to support AmigaOS 4.
15
16Emulated devices
17----------------
18
19 * PowerPC 7457 CPU (can also use ``-cpu g3, 750cxe, 750fx`` or ``750gx``)
20 * Articia S north bridge
21 * VIA VT82C686B south bridge
22 * PCI VGA compatible card (guests may need other card instead)
23 * PS/2 keyboard and mouse
24 * 4 KiB NVRAM (use ``-drive if=mtd,format=raw,file=nvram.bin`` to keep contents persistent)
25
26Firmware
27--------
28
29A firmware binary is necessary for the boot process. It is a modified
30U-Boot under GPL but its source is lost so it cannot be included in
31QEMU. A binary is available at
32https://www.hyperion-entertainment.com/index.php/downloads?view=files&parent=28.
33The ROM image is in the last 512kB which can be extracted with the
34following command:
35
36.. code-block:: bash
37
38  $ tail -c 524288 updater.image > u-boot-amigaone.bin
39
40The BIOS emulator in the firmware is unable to run QEMU‘s standard
41vgabios so ``VGABIOS-lgpl-latest.bin`` is needed instead which can be
42downloaded from http://www.nongnu.org/vgabios.
43
44Running Linux
45-------------
46
47There are some Linux images under the following link that work on the
48``amigaone`` machine:
49https://sourceforge.net/projects/amigaone-linux/files/debian-installer/.
50To boot the system run:
51
52.. code-block:: bash
53
54  $ qemu-system-ppc -machine amigaone -bios u-boot-amigaone.bin \
55                    -cdrom "A1 Linux Net Installer.iso" \
56                    -device ati-vga,model=rv100,romfile=VGABIOS-lgpl-latest.bin
57
58If a firmware menu appears, select ``Boot sequence`` → ``Amiga Multiboot Options``
59and set ``Boot device 1`` to ``Onboard VIA IDE CDROM``. Then hit escape until
60the main screen appears again, hit escape once more and from the exit menu that
61appears select either ``Save settings and exit`` or ``Use settings for this
62session only``. It may take a long time loading the kernel into memory but
63eventually it boots and the installer becomes visible. The ``ati-vga`` RV100
64emulation is not complete yet so only frame buffer works, DRM and 3D is not
65available.
66
67Genesi/bPlan Pegasos II (``pegasos2``)
68======================================
69
70The ``pegasos2`` machine emulates the Pegasos II sold by Genesi and
71designed by bPlan. Its schematics are available at
72https://www.powerdeveloper.org/platforms/pegasos/schematics.
73
74Emulated devices
75----------------
76
77 * PowerPC 7457 CPU (can also use ``-cpu g3`` or ``750cxe``)
78 * Marvell MV64361 Discovery II north bridge
79 * VIA VT8231 south bridge
80 * PCI VGA compatible card (guests may need other card instead)
81 * PS/2 keyboard and mouse
82
83Firmware
84--------
85
86The Pegasos II board has an Open Firmware compliant ROM based on
87SmartFirmware with some changes that are not open-sourced therefore
88the ROM binary cannot be included in QEMU. An updater was available
89from bPlan, it can be found in the `Internet Archive
90<http://web.archive.org/web/20071021223056/http://www.bplan-gmbh.de/up050404/up050404>`_.
91The ROM image can be extracted from it with the following command:
92
93.. code-block:: bash
94
95  $ tail -c +85581 up050404 | head -c 524288 > pegasos2.rom
96
97Running Linux
98-------------
99
100The PowerPC version of Debian 8.11 supported Pegasos II. The BIOS
101emulator in the firmware binary is unable to run QEMU‘s standard
102vgabios so it needs to be disabled. To boot the system run:
103
104.. code-block:: bash
105
106  $ qemu-system-ppc -machine pegasos2 -bios pegasos2.rom \
107                    -cdrom debian-8.11.0-powerpc-netinst.iso \
108                    -device VGA,romfile="" -serial stdio
109
110At the firmware ``ok`` prompt enter ``boot cd install/pegasos``.
111
112Alternatively, it is possible to boot the kernel directly without
113firmware ROM using the QEMU built-in minimal Virtual Open Firmware
114(VOF) emulation which is also supported on ``pegasos2``. For this,
115extract the kernel ``install/powerpc/vmlinuz-chrp.initrd`` from the CD
116image, then run:
117
118.. code-block:: bash
119
120  $ qemu-system-ppc -machine pegasos2 -serial stdio \
121                    -kernel vmlinuz-chrp.initrd -append "---" \
122                    -cdrom debian-8.11.0-powerpc-netinst.iso
123
124aCube Sam460ex (``sam460ex``)
125=============================
126
127The ``sam460ex`` machine emulates the Sam460ex board by aCube which is
128based on the AMCC PowerPC 460EX SoC (that despite its name has a
129PPC440 CPU core).
130
131Firmware
132--------
133
134The board has a firmware based on an older U-Boot version with
135modifications to support booting AmigaOS 4. The firmware ROM is
136included with QEMU.
137
138Emulated devices
139----------------
140
141 * PowerPC 460EX SoC
142 * M41T80 serial RTC chip
143 * Silicon Motion SM501 display parts (identical to SM502 on real board)
144 * Silicon Image SiI3112 2 port SATA controller
145 * USB keyboard and mouse
146
147Running Linux
148-------------
149
150The only Linux distro that supported Sam460ex out of box was CruxPPC
1512.x. It can be booted by running:
152
153.. code-block:: bash
154
155  $ qemu-system-ppc -machine sam460ex -serial stdio \
156                    -drive if=none,id=cd,format=raw,file=crux-ppc-2.7a.iso \
157                    -device ide-cd,drive=cd,bus=ide.1
158
159There are some other kernels and instructions for booting other
160distros on aCube's product page at
161https://www.acube-systems.biz/index.php?page=hardware&pid=5
162but those are untested.
163