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