10 |
|
|
11 |
<!-- |
<!-- |
12 |
|
|
13 |
$Id: guestoses.html,v 1.187 2006/11/06 05:31:38 debug Exp $ |
$Id: guestoses.html,v 1.202 2007/02/19 01:34:42 debug Exp $ |
14 |
|
|
15 |
Copyright (C) 2003-2006 Anders Gavare. All rights reserved. |
Copyright (C) 2003-2007 Anders Gavare. All rights reserved. |
16 |
|
|
17 |
Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
18 |
modification, are permitted provided that the following conditions are met: |
modification, are permitted provided that the following conditions are met: |
59 |
<li><a href="#netbsdevbarminstall">NetBSD/evbarm 2.1</a> |
<li><a href="#netbsdevbarminstall">NetBSD/evbarm 2.1</a> |
60 |
<li><a href="#netbsdnetwinderinstall">NetBSD/netwinder 3.1</a> |
<li><a href="#netbsdnetwinderinstall">NetBSD/netwinder 3.1</a> |
61 |
<li><a href="#netbsdprepinstall">NetBSD/prep 2.1</a> |
<li><a href="#netbsdprepinstall">NetBSD/prep 2.1</a> |
62 |
|
<li><a href="#netbsdmacppcinstall">NetBSD/macppc 3.1</a> |
63 |
<li><a href="#netbsddreamcast">NetBSD/dreamcast 3.1</a> |
<li><a href="#netbsddreamcast">NetBSD/dreamcast 3.1</a> |
64 |
<li><a href="#openbsdpmaxinstall">OpenBSD/pmax 2.8-BETA</a> |
<li><a href="#openbsdpmaxinstall">OpenBSD/pmax 2.8-BETA</a> |
65 |
<li><a href="#openbsdcatsinstall">OpenBSD/cats 4.0</a> |
<li><a href="#openbsdcatsinstall">OpenBSD/cats 4.0</a> |
94 |
well. |
well. |
95 |
|
|
96 |
<p>In addition to the "working" guest operating systems listed above, |
<p>In addition to the "working" guest operating systems listed above, |
97 |
you might find the following information interesting: (Some of these might |
you might find the following information interesting: |
|
not be relevant for this specific release of GXemul.) |
|
98 |
|
|
99 |
<ul> |
<ul> |
100 |
<li><a href="#mach">Mach/PMAX</a> |
<li><a href="#mach">Mach/PMAX</a> |
104 |
<!-- <li><a href="#linux_malta">Linux/Malta</a> --> |
<!-- <li><a href="#linux_malta">Linux/Malta</a> --> |
105 |
<li><a href="#linux_qemu_mips">Linux/QEMU_MIPS</a> |
<li><a href="#linux_qemu_mips">Linux/QEMU_MIPS</a> |
106 |
<li><a href="#windows_nt_mips">Windows NT/MIPS</a> |
<li><a href="#windows_nt_mips">Windows NT/MIPS</a> |
|
<li><a href="#netbsdmacppcinstall">NetBSD/macppc 3.0</a> |
|
107 |
<li><a href="#netbsdbeboxinstall">NetBSD/bebox 19981119</a> |
<li><a href="#netbsdbeboxinstall">NetBSD/bebox 19981119</a> |
108 |
</ul> |
</ul> |
109 |
|
|
110 |
|
<p><b><font color="#ff0000">NOTE:</b> |
111 |
|
Some of these sections may not be relevant to this |
112 |
|
specific release of GXemul,</font> for example some of these |
113 |
|
modes may be legacy modes that worked before but not any longer, |
114 |
|
or are not yet working but could be in the future. |
115 |
|
|
116 |
<p>Some operating systems are listed with a version number <i>less</i> |
<p>Some operating systems are listed with a version number <i>less</i> |
117 |
than what was available at the time of this GXemul release (e.g. |
than what was available at the time of this GXemul release (e.g. |
118 |
NetBSD/prep). The reasons for this is because of incompleteness in |
NetBSD/prep). The reasons for this is because of incompleteness in |
817 |
<ol start="1"> |
<ol start="1"> |
818 |
<li>Create an empty harddisk image, which will be the root disk |
<li>Create an empty harddisk image, which will be the root disk |
819 |
that you will install NetBSD/cats onto:<pre> |
that you will install NetBSD/cats onto:<pre> |
820 |
<b>dd if=/dev/zero of=nbsd_cats.img bs=1024 count=1 seek=2000000</b> |
<b>dd if=/dev/zero of=nbsd_cats.img bs=1024 count=1 seek=3000000</b> |
821 |
|
|
822 |
</pre> |
</pre> |
823 |
<li>Download the NetBSD/cats 3.1 ISO image and the generic and install kernels:<pre> |
<li>Download the NetBSD/cats 3.1 ISO image and the generic and install kernels:<pre> |
1028 |
<a name="netbsdprepinstall"></a> |
<a name="netbsdprepinstall"></a> |
1029 |
<h3>NetBSD/prep:</h3> |
<h3>NetBSD/prep:</h3> |
1030 |
|
|
1031 |
It is possible to install and run |
It is possible to install and run <a |
1032 |
<a href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a> 2.1 in GXemul |
href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a> 2.1 in GXemul on |
1033 |
on an emulated IBM 6050 (PowerPC) machine. (NetBSD 3.0 uses the wdc |
an emulated IBM 6050 (PowerPC) machine. (Newer versions of NetBSD/prep use |
1034 |
controller in a way which isn't implemented in GXemul yet.) |
the wdc controller in a way which isn't implemented in GXemul yet, or |
1035 |
|
there are bugs in GXemul's PowerPC CPU emulation.) |
1036 |
|
|
1037 |
<p> |
<p> |
1038 |
<a href="20051123-netbsd-prep.png"><img src="20051123-netbsd-prep_small.png"></a> |
<a href="20051123-netbsd-prep.png"><img src="20051123-netbsd-prep_small.png"></a> |
1053 |
</pre> |
</pre> |
1054 |
<p> |
<p> |
1055 |
<li>Start the installation like this:<pre> |
<li>Start the installation like this:<pre> |
1056 |
<b>gxemul -x -e ibm6050 -d nbsd_prep.img -d rdb:prepcd.iso -j prep/binary/kernel/netbsd-INSTALL.gz</b> |
<b>gxemul -X -e ibm6050 -d nbsd_prep.img -d rdb:prepcd.iso -j prep/binary/kernel/netbsd-INSTALL.gz</b> |
1057 |
|
|
1058 |
</pre> |
</pre> |
1059 |
<p> |
<p> |
1106 |
|
|
1107 |
<p>If everything worked, NetBSD should now be installed on the disk image. |
<p>If everything worked, NetBSD should now be installed on the disk image. |
1108 |
Use the following command line to boot the emulated machine:<pre> |
Use the following command line to boot the emulated machine:<pre> |
1109 |
<b>gxemul -x -e ibm6050 -d nbsd_prep.img netbsd-GENERIC.gz</b> |
<b>gxemul -X -e ibm6050 -d nbsd_prep.img netbsd-GENERIC.gz</b> |
1110 |
|
|
1111 |
</pre> |
</pre> |
1112 |
|
|
1125 |
|
|
1126 |
|
|
1127 |
|
|
1128 |
|
<p><br> |
1129 |
|
<a name="netbsdmacppcinstall"></a> |
1130 |
|
<h3>NetBSD/macppc:</h3> |
1131 |
|
|
1132 |
|
It is possible to install and run <a |
1133 |
|
href="http://www.netbsd.org/Ports/macppc/">NetBSD/macppc</a> in GXemul on |
1134 |
|
an emulated generic PowerPC machine. No specific Machintosh model is |
1135 |
|
emulated, but it is enough to for NetBSD to recognize it. |
1136 |
|
|
1137 |
<p><br> |
<p>To install NetBSD/macppc onto a disk image, follow these instructions: |
|
<a name="netbsddreamcast"></a> |
|
|
<h3>NetBSD/dreamcast:</h3> |
|
1138 |
|
|
1139 |
<font color="#000095">SuperH emulation is very new in GXemul. This is |
<p> |
1140 |
still highly experimental.</font> |
<ol start="1"> |
1141 |
|
<li>Create an empty harddisk image, which will be the root disk |
1142 |
|
that you will install NetBSD/macppc onto:<pre> |
1143 |
|
<b>dd if=/dev/zero of=nbsd_macppc.img bs=1024 count=1 seek=3000000</b> |
1144 |
|
|
1145 |
<p>It is possible to run <a href="http://www.netbsd.org/Ports/dreamcast/">NetBSD/dreamcast</a> |
</pre> |
1146 |
3.1 in GXemul. Only enough of the Dreamcast is emulated to let a NetBSD |
<li>Download the NetBSD/macppc 3.1 ISO image and a generic kernel:<pre> |
1147 |
ramdisk kernel reach userland; no network interface is emulated yet, so |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/macppccd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/macppccd-3.1.iso</a> |
1148 |
root-on-nfs is not possible. |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/macppc/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/macppc/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/macppc/binary/kernel/netbsd-GENERIC.MP.gz">netbsd-GENERIC.MP.gz</a> |
1149 |
|
|
1150 |
<p> |
</pre> |
1151 |
<a href="20061029-netbsd-dreamcast.png"><img src="20061029-netbsd-dreamcast_small.png"></a> |
<p> |
1152 |
|
<li>Start the installation like this:<pre> |
1153 |
|
<b>gxemul -x -e g4 -d nbsd_macppc.img -d b:macppccd-3.1.iso -j macppc/binary/kernel/netbsd-INSTALL.gz</b> |
1154 |
|
|
|
<p>Download the 3.1 kernel and symbols here:<pre> |
|
|
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/dreamcast/binary/kernel/netbsd-GENERIC_MD.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/dreamcast/binary/kernel/netbsd-GENERIC_MD.gz</a> |
|
|
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/dreamcast/binary/kernel/netbsd-GENERIC_MD.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/dreamcast/binary/kernel/netbsd-GENERIC_MD.symbols.gz</a> |
|
1155 |
</pre> |
</pre> |
1156 |
|
and continue as you would do when installing NetBSD on a real |
1157 |
|
machine. |
1158 |
|
<p> |
1159 |
|
<li>Before turning the emulated machine off, quit the NetBSD installer |
1160 |
|
and execute the following commands:<pre> |
1161 |
|
<b>cd /; mount /dev/wd0a /mnt |
1162 |
|
echo 'console "/usr/libexec/getty std.38400" vt100 on secure' > /mnt/etc/ttys |
1163 |
|
echo 'rc_configured=YES' >> /mnt/etc/rc.conf |
1164 |
|
umount /mnt; sync |
1165 |
|
reboot</b> |
1166 |
|
|
1167 |
<p>Start NetBSD/dreamcast using the following command line:<pre> |
</pre> |
1168 |
<b>gxemul -XEdreamcast netbsd-GENERIC_MD.*</b> |
</ol> |
1169 |
|
|
1170 |
|
<p>If everything worked, NetBSD/macppc should now be installed on |
1171 |
|
the disk image. |
1172 |
|
|
1173 |
|
<p>Use the following command line to boot the emulated machine:<pre> |
1174 |
|
<b>gxemul -x -e g4 -d nbsd_macppc.img netbsd-GENERIC.MP.gz</b> |
1175 |
|
|
1176 |
</pre> |
</pre> |
1177 |
|
|
1178 |
|
<p>If asked about <tt>root device</tt>, enter <tt><b>wd0</b></tt>. |
1179 |
|
|
1180 |
|
|
1181 |
|
|
1182 |
|
|
1183 |
|
|
1184 |
|
|
1185 |
|
|
1186 |
|
|
1187 |
|
|
1188 |
|
|
1189 |
|
|
1190 |
|
|
1191 |
|
|
1192 |
|
<p><br> |
1193 |
|
<a name="netbsddreamcast"></a> |
1194 |
|
<h3>NetBSD/dreamcast:</h3> |
1195 |
|
|
1196 |
|
Moved <a href="dreamcast.html#netbsd_generic_md">here</a>. |
1197 |
|
|
1198 |
|
|
1199 |
|
|
1200 |
|
|
1201 |
|
|
1202 |
|
|
1281 |
<li>At the # prompt, do the following:<pre> |
<li>At the # prompt, do the following:<pre> |
1282 |
<b>fsck /dev/rz1a</b> (and mark the filesystem as clean) |
<b>fsck /dev/rz1a</b> (and mark the filesystem as clean) |
1283 |
<b>mount /dev/rz1a /</b> |
<b>mount /dev/rz1a /</b> |
1284 |
|
<b>mkdir /kern</b> |
1285 |
|
<b>mkdir /mnt2</b> |
1286 |
<b>mount -t kernfs kern kern</b> |
<b>mount -t kernfs kern kern</b> |
1287 |
<b>./install</b> |
<b>./install</b> |
1288 |
|
|
1830 |
|
|
1831 |
<p> |
<p> |
1832 |
<ol> |
<ol> |
|
<li>Compile gxemul with cache emulation: (<b>NOTE: --enable-caches</b>)<pre> |
|
|
<b>./configure --enable-caches; make</b> |
|
|
|
|
|
</pre> |
|
1833 |
<li>Download the pmax binary distribution for Mach 3.0:<pre> |
<li>Download the pmax binary distribution for Mach 3.0:<pre> |
1834 |
<a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">http://lost-contact.mit.edu/afs/athena/user/d/a/</a> |
<a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">http://lost-contact.mit.edu/afs/athena/user/d/a/</a> |
1835 |
<a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">daveg/Info/Links/Mach/src/release/pmax.tar.Z</a> |
<a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">daveg/Info/Links/Mach/src/release/pmax.tar.Z</a> |
1858 |
cd /; sync; umount /mnt</i>) |
cd /; sync; umount /mnt</i>) |
1859 |
<p> |
<p> |
1860 |
<li>Start the emulator with the following command:<pre> |
<li>Start the emulator with the following command:<pre> |
1861 |
<b>gxemul -e 3max -X -d disk.img \ |
<b>gxemul -c 'put w 0x800990e0, 0' -c 'put w 0x80099144, 0' \ |
1862 |
|
-c 'put w 0x8004aae8, 0' -e 3max -X -d disk.img \ |
1863 |
pmax_mach/special/mach.boot.MK83.STD+ANY</b> |
pmax_mach/special/mach.boot.MK83.STD+ANY</b> |
1864 |
|
|
1865 |
</pre> |
</pre> |
1866 |
</ol> |
</ol> |
1867 |
|
|
1868 |
|
<p>Earlier versions of GXemul had a configure option to enable better |
1869 |
|
R3000 cache emulation, but since Mach was more or less the only thing that |
1870 |
|
used it, I removed it. Today's version of GXemul can thus not boot |
1871 |
|
mach.boot.MK83.STD+ANY straight off, it has to be patched to skip the |
1872 |
|
cache detection. |
1873 |
|
|
1874 |
|
<p>The -c commands above patch the kernel to get past the cache detection. |
1875 |
|
Thanks to Artur Bujdoso for these values. |
1876 |
|
|
1877 |
|
<p>TODO: Better instructions on how to create the old-style UFS disk |
1878 |
|
image. |
1879 |
|
|
1880 |
|
|
1881 |
|
|
2269 |
mimic the MIPS machine mode used in Fabrice Bellard's |
mimic the MIPS machine mode used in Fabrice Bellard's |
2270 |
<a href="http://fabrice.bellard.free.fr/qemu/">QEMU</a>. |
<a href="http://fabrice.bellard.free.fr/qemu/">QEMU</a>. |
2271 |
|
|
2272 |
<p>Follow these steps to download and run the Linux/QEMU_MIPS test |
<p>Download <a href="http://fabrice.bellard.free.fr/qemu/mips-test-0.1.tar.gz">mips-test-0.1.tar.gz</a> |
2273 |
ramdisk kernel: |
from <a href="http://fabrice.bellard.free.fr/qemu/download.html">http://fabrice.bellard.free.fr/qemu/download.html</a>, |
2274 |
|
and extract its contents (<tt>tar zxvf mips-test-0.1.tar.gz</tt>). |
2275 |
|
|
2276 |
<p><ol> |
<p>Test it in GXemul using the following command line:<pre> |
|
<li>Download <a href="http://fabrice.bellard.free.fr/qemu/mips-test-0.1.tar.gz">mips-test-0.1.tar.gz</a> |
|
|
from <a href="http://fabrice.bellard.free.fr/qemu/download.html">http://fabrice.bellard.free.fr/qemu/download.html</a>, |
|
|
and extract its contents (<tt>tar zxvf mips-test-0.1.tar.gz</tt>). |
|
|
<p> |
|
|
<li>Test it in GXemul using the following command line:<pre> |
|
2277 |
<b>gxemul -E qemu_mips -o 'console=ttyS0 root=/dev/ram |
<b>gxemul -E qemu_mips -o 'console=ttyS0 root=/dev/ram |
2278 |
rd_start=0x80800000 rd_size=10000000 init=/bin/sh' |
rd_start=0x80800000 rd_size=10000000 init=/bin/sh' |
2279 |
0x80800000:mips-test/initrd mips-test/vmlinux-r1</b> |
0x80800000:mips-test/initrd mips-test/vmlinux-r1</b> |
2281 |
</pre> |
</pre> |
2282 |
</ol> |
</ol> |
2283 |
|
|
|
<p><i>"QEMU is a FAST! processor emulator"</i> according to <a |
|
|
href="http://fabrice.bellard.free.fr/qemu/qemu-doc.html">http://fabrice.bellard.free.fr/qemu/qemu-doc.html</a>. |
|
|
Sometimes QEMU is faster than GXemul, sometimes it is the other way |
|
|
around. A quick (and quite unfair) test on my laptop (1.8 GHz Turion ML32, |
|
|
in AMD64 mode) comparing QEMU 0.8.2 (installed from FreeBSD ports) |
|
|
with GXemul gave the following result: |
|
|
|
|
|
<p><pre> |
|
|
<b>while true; do ls -l > /dev/null; echo -n .; done</b> |
|
|
(80 x 36 dots) |
|
|
QEMU 0.8.2: 13 min 52 sec |
|
|
GXemul 0.4.2: 4 min 31 sec |
|
|
|
|
|
<b>while true; do /usr/bin/md5sum /usr/bin/* > /dev/null; echo -n .; done</b> |
|
|
(80 dots) |
|
|
QEMU 0.8.2: 2 min 8 sec |
|
|
GXemul 0.4.2: 5 min 18 sec |
|
|
|
|
|
<b>while true; do grep hej lib/libtextwrap.so.1 > /dev/null; echo -n .; done</b> |
|
|
(80 dots) |
|
|
QEMU 0.8.2: 9 min 57 sec |
|
|
GXemul 0.4.2: 1 min 36 sec |
|
|
</pre> |
|
|
|
|
|
<p>The commands were run inside the emulators, using the ramdisk kernel |
|
|
mentioned above. |
|
|
|
|
2284 |
|
|
2285 |
|
|
2286 |
|
|
2331 |
|
|
2332 |
|
|
2333 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<p><br> |
|
|
<a name="netbsdmacppcinstall"></a> |
|
|
<h3>NetBSD/macppc:</h3> |
|
|
|
|
|
It is <font color="#ff0000"><b>ALMOST</b></font> possible to install and run |
|
|
<a href="http://www.netbsd.org/Ports/macppc/">NetBSD/macppc</a> in GXemul |
|
|
on an emulated generic PowerPC machine. No specific Machintosh model |
|
|
is emulated, but it is enough to for NetBSD to recognize it. |
|
|
|
|
|
<p>To install NetBSD/macppc onto a disk image, follow these instructions: |
|
|
|
|
|
<p> |
|
|
<ol start="1"> |
|
|
<li>Create an empty harddisk image, which will be the root disk |
|
|
that you will install NetBSD/macppc onto:<pre> |
|
|
<b>dd if=/dev/zero of=nbsd_macppc.img bs=1024 count=1 seek=2000000</b> |
|
|
|
|
|
</pre> |
|
|
<li>Download the NetBSD/macppc 3.0 ISO image and a generic kernel:<pre> |
|
|
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.0/macppccd-3.0.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.0/macppccd-3.0.iso</a> |
|
|
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/macppc/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/macppc/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/macppc/binary/kernel/netbsd-GENERIC.MP.gz">netbsd-GENERIC.MP.gz</a> |
|
|
|
|
|
</pre> |
|
|
<p> |
|
|
<li>Start the installation like this:<pre> |
|
|
<b>gxemul -x -e g4 -d nbsd_macppc.img -d b:macppccd-3.0.iso -j macppc/binary/kernel/netbsd-INSTALL.gz</b> |
|
|
|
|
|
</pre> |
|
|
</ol> |
|
|
|
|
|
<p>If everything worked, NetBSD/macppc should now be installed on the disk image. |
|
|
|
|
|
<p><font color="#ff0000"><b>2006-02-26:</b></font> That's it. The installation |
|
|
succeeds, but it is not possible to start from the newly installed disk. |
|
|
/sbin/init dies, so the following command doesn't really work yet: |
|
|
|
|
|
<p>Use the following command line to boot the emulated machine:<pre> |
|
|
<b>gxemul -x -e g4 -d nbsd_macppc.img netbsd-GENERIC.MP.gz</b> |
|
|
|
|
|
</pre> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2334 |
|
|
2335 |
|
|
2336 |
|
|