10 |
|
|
11 |
<!-- |
<!-- |
12 |
|
|
13 |
$Id: guestoses.html,v 1.124 2006/02/18 21:03:10 debug Exp $ |
$Id: guestoses.html,v 1.157 2006/07/22 10:23:39 debug Exp $ |
14 |
|
|
15 |
Copyright (C) 2003-2006 Anders Gavare. All rights reserved. |
Copyright (C) 2003-2006 Anders Gavare. All rights reserved. |
16 |
|
|
48 |
<p> |
<p> |
49 |
<ul> |
<ul> |
50 |
<li><a href="#generalnotes">General notes on running "guest OSes"</a> |
<li><a href="#generalnotes">General notes on running "guest OSes"</a> |
51 |
<li><a href="#netbsdpmaxinstall">NetBSD/pmax</a> |
<li><a href="#netbsdpmaxinstall">NetBSD/pmax 3.0 or 1.6.2</a> |
52 |
<li><a href="#netbsdarcinstall">NetBSD/arc</a> |
<li><a href="#netbsdarcinstall">NetBSD/arc 1.6.2</a> |
53 |
<li><a href="#netbsdhpcmipsinstall">NetBSD/hpcmips</a> |
<li><a href="#netbsdhpcmipsinstall">NetBSD/hpcmips 3.0</a> |
54 |
<li><a href="#netbsdcobaltinstall">NetBSD/cobalt</a> |
<li><a href="#netbsdcobaltinstall">NetBSD/cobalt 2.1</a> |
55 |
<li><a href="#netbsdevbmipsinstall">NetBSD/evbmips</a> |
<li><a href="#netbsdevbmipsinstall">NetBSD/evbmips 2.1</a> |
56 |
<li><a href="#netbsdsgimips">NetBSD/sgimips</a> |
<li><a href="#netbsdsgimips">NetBSD/sgimips 3.0</a> |
57 |
<li><a href="#netbsdcatsinstall">NetBSD/cats</a> |
<li><a href="#netbsdcatsinstall">NetBSD/cats 3.0</a> |
58 |
<li><a href="#netbsdevbarminstall">NetBSD/evbarm</a> |
<li><a href="#netbsdevbarminstall">NetBSD/evbarm 2.1</a> |
59 |
<li><a href="#netbsdprepinstall">NetBSD/prep</a> |
<li><a href="#netbsdprepinstall">NetBSD/prep 2.1</a> |
60 |
<li><a href="#openbsdpmaxinstall">OpenBSD/pmax</a> |
<li><a href="#openbsdpmaxinstall">OpenBSD/pmax 2.8-BETA</a> |
61 |
<li><a href="#openbsdcatsinstall">OpenBSD/cats</a> |
<li><a href="#openbsdcatsinstall">OpenBSD/cats 3.9</a> |
62 |
<li><a href="#ultrixinstall">Ultrix/RISC</a> |
<li><a href="#ultrixinstall">Ultrix/RISC 4.5</a> |
63 |
<li><a href="#sprite">Sprite for DECstation</a> |
<li><a href="#sprite">Sprite for DECstation</a> |
64 |
<li><a href="#declinux">Debian GNU/Linux for DECstation</a> |
<li><a href="#declinux">Debian GNU/Linux for DECstation</a> |
65 |
<li><a href="#declinuxredhat">Redhat Linux for DECstation</a> |
<li><a href="#declinuxredhat">Redhat Linux for DECstation</a> |
66 |
</ul> |
</ul> |
67 |
|
|
|
<p>In addition to the "working" guest operating systems listed above, |
|
|
you might find the following information interesting: |
|
|
<ul> |
|
|
<li><a href="#mach">Mach/PMAX</a> |
|
|
<li><a href="#openbsdsgiinstall">OpenBSD/sgi</a> |
|
|
<li><a href="#openbsdarcinstall">OpenBSD/arc</a> |
|
|
<li><a href="#debiancats">Debian GNU/Linux for CATS</a> |
|
|
<li><a href="#netbsdnetwinderinstall">NetBSD/netwinder</a> |
|
|
</ul> |
|
|
|
|
68 |
|
|
69 |
|
|
70 |
|
|
75 |
<h3>General notes on running "guest OSes":</h3> |
<h3>General notes on running "guest OSes":</h3> |
76 |
|
|
77 |
The emulator works well enough to run complete operating systems. These |
The emulator works well enough to run complete operating systems. These |
78 |
are often refered to as "guest" operating systems. |
are often refered to as <i>guest</i> operating systems, in contrast to the |
79 |
|
<i>host</i> operating system which the emulator is running under. |
80 |
|
|
81 |
<p> |
<p>Although it is possible to let a guest OS access real hardware, such as |
82 |
Although it is possible to let a guest OS access real hardware, such as |
harddisks, it is much more flexible and attractive to simulate harddisks |
83 |
harddisks, it is much more flexible and attractive to simulate harddisks |
using files residing in the host's filesystem. On Unix-like systems, files |
84 |
using files residing in the host's filesystem. On Unix-like systems, files |
may contain holes, which makes this really simple. To the guest operating |
|
may contain holes, which makes this really simple. To the guest operating |
|
85 |
system, the harddisk image looks and acts like a real disk. |
system, the harddisk image looks and acts like a real disk. |
86 |
|
|
87 |
|
<p>The version numbers of the various operating systems were the latest |
88 |
|
versions that worked satisfactory with GXemul at the time this page was |
89 |
|
updated; if new versions have been released since then, they might work as |
90 |
|
well. |
91 |
|
|
92 |
|
<p>In addition to the "working" guest operating systems listed above, |
93 |
|
you might find the following information interesting: (Some of these might |
94 |
|
not be relevant for this specific release of GXemul.) |
95 |
|
|
96 |
|
<ul> |
97 |
|
<li><a href="#mach">Mach/PMAX</a> |
98 |
|
<li><a href="#openbsdsgiinstall">OpenBSD/sgi</a> |
99 |
|
<li><a href="#openbsdarcinstall">OpenBSD/arc 2.3</a> |
100 |
|
<li><a href="#debiancats">Debian GNU/Linux for CATS</a> |
101 |
|
<li><a href="#linux_qemu_mips">Linux/QEMU_MIPS</a> |
102 |
|
<li><a href="#windows_nt_mips">Windows NT/MIPS</a> |
103 |
|
<li><a href="#netbsdnetwinderinstall">NetBSD/netwinder 2.1</a> |
104 |
|
<li><a href="#netbsdmacppcinstall">NetBSD/macppc 3.0</a> |
105 |
|
</ul> |
106 |
|
|
107 |
|
<p>Some operating systems are listed with a version number <i>less</i> |
108 |
|
than what was available at the time of this GXemul release (e.g. |
109 |
|
NetBSD/prep). The reasons for this is because of incompleteness in |
110 |
|
GXemul's machine, device, and/or processor implementations. |
111 |
|
|
112 |
|
|
113 |
|
|
119 |
<a name="netbsdpmaxinstall"></a> |
<a name="netbsdpmaxinstall"></a> |
120 |
<h3>NetBSD/pmax:</h3> |
<h3>NetBSD/pmax:</h3> |
121 |
|
|
122 |
<p> |
<p><a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a> was the |
123 |
|
first guest OS that could be |
124 |
|
<a href="http://mail-index.netbsd.org/port-pmax/2004/04/18/0000.html">installed</a> |
125 |
|
onto a disk image in GXemul. The device emulation of the DECstation |
126 |
|
5000/200 is reasonably complete; it should be enough to emulate a |
127 |
|
networked X-windows-capable workstation. |
128 |
|
|
129 |
|
<p>NetBSD/pmax 1.6.2 works perfectly with X out-of-the-box. Unfortunately, |
130 |
|
newer NetBSD releases have changed slightly, and nowadays X does not |
131 |
|
work straight away. (It seems that this has to do with NetBSD switching |
132 |
|
console system to "WSCONS" somewhere between 1.6.2 and 2.0. I haven't had |
133 |
|
time to figure out how to make it work; at worst it might require a kernel |
134 |
|
recompilation.) What this means is that if you want to use emulated X11, |
135 |
|
then you need to run NetBSD 1.6.2. If you feel that you only need |
136 |
|
serial-console emulation, then choose the latest NetBSD version available. |
137 |
|
|
138 |
|
<p> |
139 |
<a href="20050317-example.png"><img src="20050317-example_small.png"></a> |
<a href="20050317-example.png"><img src="20050317-example_small.png"></a> |
140 |
|
|
141 |
<p>To install <a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a> |
<p>To install NetBSD/pmax onto a harddisk image in the emulator, |
142 |
onto a harddisk image in the emulator, follow these instructions: |
follow these instructions: |
143 |
|
|
144 |
<p><ol start="1"> |
<p><ol start="1"> |
145 |
<li>Create an empty harddisk image, which will be the root disk |
<li>Create an empty harddisk image, which will be the root disk |
146 |
that NetBSD installs itself onto:<pre> |
that NetBSD installs itself onto:<pre> |
147 |
<b>dd if=/dev/zero of=nbsd_pmax.img bs=1 count=512 seek=1900000000</b> |
<b>dd if=/dev/zero of=nbsd_pmax.img bs=1024 count=1 seek=1900000</b> |
148 |
|
|
149 |
</pre> |
</pre> |
150 |
</ol> |
</ol> |
159 |
<ol start="2"> |
<ol start="2"> |
160 |
|
|
161 |
<li>Download a NetBSD CD-ROM iso image:<pre> |
<li>Download a NetBSD CD-ROM iso image:<pre> |
162 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/1.6.2/pmaxcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/1.6.2/pmaxcd.iso</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/iso/1.6.2/pmaxcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/iso/1.6.2/pmaxcd.iso</a> |
163 |
or |
or |
164 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.0/pmaxcd-3.0.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.0/pmaxcd-3.0.iso</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.0/pmaxcd-3.0.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.0/pmaxcd-3.0.iso</a> |
165 |
|
|
166 |
</pre> |
</pre> |
167 |
<li>Start the emulator like this:<pre> |
<li>Start the emulator like this:<pre> |
168 |
<b>gxemul -e 3max -A -d nbsd_pmax.img -d bc:pmaxcd-3.0.iso</b> |
<b>gxemul -e 3max -d nbsd_pmax.img -d bc:pmaxcd-3.0.iso</b> |
169 |
(or <b>pmaxcd.iso</b>) |
(or <b>pmaxcd.iso</b>) |
170 |
</pre> |
</pre> |
171 |
and proceed like you would do if you were installing NetBSD on a real |
and proceed like you would do if you were installing NetBSD on a real |
178 |
<ol start="2"> |
<ol start="2"> |
179 |
|
|
180 |
<li>Download a NetBSD pmax INSTALL kernel:<pre> |
<li>Download a NetBSD pmax INSTALL kernel:<pre> |
181 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/NetBSD-1.6.2/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/NetBSD-1.6.2/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
182 |
or |
or |
183 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.0/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
184 |
|
|
185 |
</pre> |
</pre> |
186 |
<li>Start the emulator like this:<pre> |
<li>Start the emulator like this:<pre> |
187 |
<b>gxemul -e 3max -A -d nbsd_pmax.img -O netbsd-INSTALL.gz</b> |
<b>gxemul -e 3max -d nbsd_pmax.img -O netbsd-INSTALL.gz</b> |
188 |
</pre> |
</pre> |
189 |
and proceed like you would do if you were installing NetBSD on a real |
and proceed like you would do if you were installing NetBSD on a real |
190 |
DECstation. Remember to choose <tt>vt100</tt> as your terminal |
DECstation. Remember to choose <tt>vt100</tt> as your terminal |
214 |
<b>gxemul -e 3max -d nbsd_pmax.img</b> |
<b>gxemul -e 3max -d nbsd_pmax.img</b> |
215 |
</pre> |
</pre> |
216 |
|
|
217 |
<p><font color="#ff0000">NOTE:</font> For some reason, NetBSD 2.x and 3.x |
<p>If you installed NetBSD/pmax 1.6.2, then try the following to start |
218 |
do not work with X out-of-the-box on pmax. It seems that this has to do |
with a framebuffer:<pre> |
|
with NetBSD switching console system to "WSCONS" somewhere between 1.6.2 |
|
|
and 2.0. For now, if you want X, then try NetBSD 1.6.2. |
|
|
|
|
|
<p>With NetBSD/pmax 1.6.2, try the following to start with a framebuffer:<pre> |
|
219 |
<b>gxemul -X -e 3max -d nbsd_pmax.img</b> |
<b>gxemul -X -e 3max -d nbsd_pmax.img</b> |
220 |
</pre> |
</pre> |
221 |
and log in as <tt>root</tt> and type <tt>startx</tt> to start X windows. |
and log in as <tt>root</tt> and type <tt>startx</tt> to start X windows. |
231 |
<a name="netbsdarcinstall"></a> |
<a name="netbsdarcinstall"></a> |
232 |
<h3>NetBSD/arc:</h3> |
<h3>NetBSD/arc:</h3> |
233 |
|
|
234 |
It is possible to install and run <a |
It is possible to install and run an old version of <a |
235 |
href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a> |
href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a> |
236 |
on an emulated Acer PICA-61 in the emulator. |
on an emulated Acer PICA-61 in the emulator. |
237 |
|
|
240 |
<a href="20041024-netbsd-arc-installed.gif"><img src="20041024-netbsd-arc-installed_small.gif"></a> |
<a href="20041024-netbsd-arc-installed.gif"><img src="20041024-netbsd-arc-installed_small.gif"></a> |
241 |
|
|
242 |
<p> |
<p> |
243 |
To install NetBSD/arc from a CDROM image onto an emulated harddisk image, |
To install NetBSD/arc 1.6.2 from a CDROM image onto an emulated |
244 |
follow these instructions: |
harddisk image, follow these instructions: |
245 |
|
|
246 |
<p> |
<p> |
247 |
<ol start="1"> |
<ol start="1"> |
252 |
</pre> |
</pre> |
253 |
<li>Download a NetBSD/arc 1.6.2 CDROM image, and a generic NetBSD/arc |
<li>Download a NetBSD/arc 1.6.2 CDROM image, and a generic NetBSD/arc |
254 |
kernel:<pre> |
kernel:<pre> |
255 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/1.6.2/arccd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/1.6.2/arccd.iso</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/iso/1.6.2/arccd.iso">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/iso/1.6.2/arccd.iso</a> |
256 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/arc/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/arc/binary/kernel/netbsd-GENERIC.gz</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/NetBSD-1.6.2/arc/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/NetBSD-1.6.2/arc/binary/kernel/netbsd-GENERIC.gz</a> |
257 |
|
|
258 |
</pre> |
</pre> |
259 |
<li>Start the emulator using this command line:<pre> |
<li>Start the emulator using this command line:<pre> |
264 |
(Try removing <tt>-x</tt> if you have problems with the xterm.) |
(Try removing <tt>-x</tt> if you have problems with the xterm.) |
265 |
<p> |
<p> |
266 |
<li>From now on, you have to use your imagination, as there is no |
<li>From now on, you have to use your imagination, as there is no |
267 |
automatic installation program for NetBSD/arc. Here are some tips |
automatic installation program for NetBSD/arc 1.6.2. Here are |
268 |
and hints on how you can proceed with the install: |
some tips and hints on how you can proceed with the install: |
269 |
<p><table border="0"><tr><td><tt> </tt></td><td><pre> |
<p><table border="0"><tr><td><tt> </tt></td><td><pre> |
270 |
<b>mount /dev/cd0a /mnt2 |
<b>mount /dev/cd0a /mnt2 |
271 |
disklabel -i -I sd0</b> (for example 'a', '4.2BSD', '1c', |
disklabel -i -I sd0</b> (for example 'a', '4.2BSD', '1c', |
279 |
cat > /mnt/etc/fstab |
cat > /mnt/etc/fstab |
280 |
/dev/sd0a / ffs rw 1 1 |
/dev/sd0a / ffs rw 1 1 |
281 |
/dev/sd0b none swap sw 0 0 |
/dev/sd0b none swap sw 0 0 |
282 |
</b>(press ctrl-d)<b> |
</b>(press ctrl-d) |
283 |
<b>cd /; umount /mnt; umount /mnt2 |
<b>cd /; umount /mnt; umount /mnt2 |
284 |
halt</b> |
halt</b> |
285 |
</pre></td></tr></table> |
</pre></td></tr></table> |
353 |
</table> |
</table> |
354 |
|
|
355 |
<p> |
<p> |
356 |
(<super>*</super>) = not aligned at a 4 KB boundary, so it will not work |
(<super>*</super>) = not aligned at a page boundary, so it will not work |
357 |
efficiently with the current bintrans system. Using this mode will still |
efficiently with the current dyntrans system. Using this mode will still |
358 |
work, but each load and store will be emulated much more slowly than is |
work, but each load and store will be emulated much more slowly than is |
359 |
possible with an aligned framebuffer. |
possible with an aligned framebuffer. |
360 |
|
|
376 |
<ol start="1"> |
<ol start="1"> |
377 |
<li>Create an empty harddisk image, which will be the root disk |
<li>Create an empty harddisk image, which will be the root disk |
378 |
that you will install NetBSD/hpcmips onto:<pre> |
that you will install NetBSD/hpcmips onto:<pre> |
379 |
<b>dd if=/dev/zero of=nbsd_hpcmips.img bs=1024 count=1 seek=1990000</b> |
<b>dd if=/dev/zero of=nbsd_hpcmips.img bs=1024 count=1 seek=999000</b> |
380 |
|
|
381 |
</pre> |
</pre> |
382 |
<li>Download the NetBSD/hpcmips 3.0 ISO image, and a generic kernel:<pre> |
<li>Download the NetBSD/hpcmips 3.0 ISO image, and a generic kernel:<pre> |
387 |
</pre> |
</pre> |
388 |
<p> |
<p> |
389 |
<li>Start the installation like this:<pre> |
<li>Start the installation like this:<pre> |
390 |
<b>gxemul -e mobilepro770 -X -A -d nbsd_hpcmips.img \ |
<b>gxemul -e mobilepro770 -X -d nbsd_hpcmips.img \ |
391 |
-d b:hpcmipscd-3.0.iso -j hpcmips/installation/netbsd.gz</b> |
-d b:hpcmipscd-3.0.iso -j hpcmips/installation/netbsd.gz</b> |
392 |
|
|
393 |
</pre> |
</pre> |
425 |
|
|
426 |
<a href="http://www.netbsd.org/Ports/cobalt/">NetBSD/cobalt</a> is tricky |
<a href="http://www.netbsd.org/Ports/cobalt/">NetBSD/cobalt</a> is tricky |
427 |
to install, because the Cobalt machines were designed for Linux, and not |
to install, because the Cobalt machines were designed for Linux, and not |
428 |
very flexible. There is no INSTALL kernel for NetBSD/cobalt. One way to |
very flexible. There is no traditional INSTALL kernel for NetBSD/cobalt. |
429 |
install the NetBSD/cobalt distribution onto a disk image is to do it from |
One way to install the NetBSD/cobalt distribution onto a disk image is to |
430 |
another (emulated) machine. |
do it from another (emulated) machine. |
431 |
|
|
432 |
<p> |
<p> |
433 |
|
|
441 |
<ol> |
<ol> |
442 |
<li>Create an empty harddisk image, which will be the disk image |
<li>Create an empty harddisk image, which will be the disk image |
443 |
that you will install NetBSD/cobalt onto:<pre> |
that you will install NetBSD/cobalt onto:<pre> |
444 |
<b>dd if=/dev/zero of=nbsd_cobalt.img bs=1024 count=1 seek=1999000</b> |
<b>dd if=/dev/zero of=nbsd_cobalt.img bs=1024 count=1 seek=999000</b> |
445 |
|
|
446 |
</pre> |
</pre> |
447 |
<li>Download the generic kernel for Cobalt and the 2.1 ISO image:<pre> |
<li>Download the generic kernel for Cobalt and the 2.1 ISO image:<pre> |
454 |
<a href="#netbsdpmaxinstall">further up on this page</a>. |
<a href="#netbsdpmaxinstall">further up on this page</a>. |
455 |
<p> |
<p> |
456 |
<li>Start NetBSD/pmax like this:<pre> |
<li>Start NetBSD/pmax like this:<pre> |
457 |
<b>gxemul -e3max -A -d nbsd_pmax.img -d cobaltcd.iso -d nbsd_cobalt.img</b> |
<b>gxemul -e3max -d nbsd_pmax.img -d cobaltcd.iso -d nbsd_cobalt.img</b> |
458 |
|
|
459 |
</pre> |
</pre> |
460 |
<li>Log in as root (on the emulated 3MAX machine), and execute the |
<li>Log in as root (on the emulated 3MAX machine), and execute the |
498 |
<a name="netbsdevbmipsinstall"></a> |
<a name="netbsdevbmipsinstall"></a> |
499 |
<h3>NetBSD/evbmips:</h3> |
<h3>NetBSD/evbmips:</h3> |
500 |
|
|
501 |
<a href="http://www.netbsd.org/Ports/evbmips/">NetBSD/evbmips</a> can run |
<a href="http://www.netbsd.org/Ports/evbmips/">NetBSD/evbmips</a> can run |
502 |
in GXemul on an emulated Malta evaluation board (with a 5Kc or 4Kc CPU). |
in GXemul on an emulated Malta evaluation board, with a 5Kc (MIPS64) or |
503 |
|
4Kc (MIPS32) processor. 5Kc is the default. |
504 |
|
|
505 |
<p> |
<p> |
506 |
|
|
531 |
</pre> |
</pre> |
532 |
<p> |
<p> |
533 |
<li>Start NetBSD/pmax like this:<pre> |
<li>Start NetBSD/pmax like this:<pre> |
534 |
<b>gxemul -e 3max -A -d nbsd_pmax.img -d nbsd_malta.img -d evbmips-mipselcd.iso</b> |
<b>gxemul -e 3max -d nbsd_pmax.img -d nbsd_malta.img -d evbmips-mipselcd.iso</b> |
535 |
|
|
536 |
</pre>and execute the following commands as <tt>root</tt>: |
</pre>and execute the following commands as <tt>root</tt>: |
537 |
<p><table border="0"><tr><td><tt> </tt></td><td><pre> |
<p><table border="0"><tr><td><tt> </tt></td><td><pre> |
557 |
2.1, however, there will be little or no difference in functionality, as |
2.1, however, there will be little or no difference in functionality, as |
558 |
NetBSD still runs in 32-bit mode on 64-bit MIPS CPUs. There are two things |
NetBSD still runs in 32-bit mode on 64-bit MIPS CPUs. There are two things |
559 |
that differ:<ol> |
that differ:<ol> |
560 |
<li>GXemul's binary translation subsystem might run a bit faster |
<li>The dynamic translation core runs faster when emulating 32-bit |
561 |
in 32-bit mode (because there are some optimizations that don't |
processors, so <tt><b>-C 4Kc</b></tt> might make things go faster. |
|
work with 64-bit emulation) |
|
562 |
<li>4Kc only has 16 TLB entries, whereas 5Kc has 48. This makes 4Kc |
<li>4Kc only has 16 TLB entries, whereas 5Kc has 48. This makes 4Kc |
563 |
slower. |
emulation slower in general, because there are more TLB misses. |
564 |
</ol> |
</ol> |
565 |
|
|
566 |
<p>The installation instructions above create a filesystem |
<p>The installation instructions above create a filesystem |
585 |
|
|
586 |
<p> |
<p> |
587 |
|
|
588 |
<a href="20050626-netbsd-sgimips-netboot.png"><img src="20050626-netbsd-sgimips-netboot_small.png"></a> |
<a href="20060623-netbsd-sgimips-3.0.png"><img src="20060623-netbsd-sgimips-3.0_small.png"></a> |
589 |
|
|
590 |
<p><a href="http://www.netbsd.org/Ports/sgimips/">NetBSD/sgimips</a> can run |
<p><a href="http://www.netbsd.org/Ports/sgimips/">NetBSD/sgimips</a> can run |
591 |
in GXemul on an emulated O2 (SGI-IP32). However, GXemul does not yet |
in GXemul on an emulated O2 (SGI-IP32). However, GXemul does not yet |
593 |
several times, asking for documentation, but never received any reply.) |
several times, asking for documentation, but never received any reply.) |
594 |
NetBSD can still run in the emulator, as long as it doesn't use SCSI. |
NetBSD can still run in the emulator, as long as it doesn't use SCSI. |
595 |
|
|
596 |
<p>For a simple test with the 2.1 ramdisk (install) kernel, try |
<p>For a simple test with the ramdisk/install kernel, try |
597 |
dowloading<pre> |
dowloading<pre> |
598 |
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
599 |
|
|
600 |
</pre>and run <b><tt>gxemul -e o2 netbsd-INSTALL32_IP3x.gz</tt></b>. |
</pre>and run <b><tt>gxemul -x -e o2 netbsd-INSTALL32_IP3x.gz</tt></b>. |
601 |
|
|
602 |
<p>It is possible to set up an environment for netbooting the emulated SGI |
<p>It is possible to set up an environment for netbooting the emulated SGI |
603 |
machine off of another emulated machine. Performing this setup is quite |
machine off of another emulated machine. Performing this setup is quite |
612 |
<p> |
<p> |
613 |
<li>Configure the nfs server machine to act as an nfs server. |
<li>Configure the nfs server machine to act as an nfs server. |
614 |
Start up the emulated DECstation:<pre> |
Start up the emulated DECstation:<pre> |
615 |
<b>gxemul -e 3max -A -d nbsd_pmax.img</b> |
<b>gxemul -e 3max -d nbsd_pmax.img</b> |
616 |
</pre>and enter the following commands as <tt>root</tt> |
</pre>and enter the following commands as <tt>root</tt> |
617 |
inside the emulator: |
inside the emulator: |
618 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
644 |
NetBSD/sgimips distribution sets:<br>(NOTE: This |
NetBSD/sgimips distribution sets:<br>(NOTE: This |
645 |
takes quite some time, even if you have a fast network connection.) |
takes quite some time, even if you have a fast network connection.) |
646 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
647 |
<b>cd /tftpboot; ftp -i ftp.uk.netbsd.org</b> |
<b>cd /tftpboot; ftp -i ftp.se.netbsd.org</b> |
648 |
(log in as anonymous...) |
(log in as anonymous...) |
649 |
<b>cd /pub/NetBSD/NetBSD-2.1/sgimips/binary/sets |
<b>cd /pub/NetBSD/NetBSD-3.0/sgimips/binary/sets |
650 |
mget base.tgz comp.tgz etc.tgz games.tgz man.tgz misc.tgz text.tgz |
mget base.tgz comp.tgz etc.tgz games.tgz man.tgz misc.tgz text.tgz |
651 |
quit |
quit |
652 |
sh |
sh |
657 |
halt</b> |
halt</b> |
658 |
</pre></td></tr></table> |
</pre></td></tr></table> |
659 |
<li>Download the NetBSD/sgimips GENERIC and INSTALL kernels:<pre> |
<li>Download the NetBSD/sgimips GENERIC and INSTALL kernels:<pre> |
660 |
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.1/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.1/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz</a> |
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz</a> |
661 |
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
662 |
|
|
663 |
</pre> |
</pre> |
664 |
<li>Create a configuration file called <tt>config_client</tt>: |
<li>Create a configuration file called <tt>config_client</tt>: |
665 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
666 |
<font color="#2020cf">!!gxemul |
<font color="#2020cf">! Configuration file for running NetBSD/sgimips diskless with |
|
! |
|
|
! Configuration file for running NetBSD/sgimips diskless with |
|
667 |
! a NetBSD/pmax machine as the nfs server.</font> |
! a NetBSD/pmax machine as the nfs server.</font> |
668 |
|
|
669 |
<b>emul( |
<b> net( |
|
net( |
|
670 |
add_remote("localhost:12444") </b>! the server<b> |
add_remote("localhost:12444") </b>! the server<b> |
671 |
local_port(12445) </b>! the client<b> |
local_port(12445) </b>! the client<b> |
672 |
) |
) |
681 |
load("netbsd-INSTALL32_IP3x.gz")</b> |
load("netbsd-INSTALL32_IP3x.gz")</b> |
682 |
! load("netbsd-GENERIC32_IP3x.gz")<b> |
! load("netbsd-GENERIC32_IP3x.gz")<b> |
683 |
) |
) |
684 |
)</b> |
</b> |
685 |
</pre></td></tr></table> |
</pre></td></tr></table> |
686 |
... and another configuration file for the server, |
... and another configuration file for the server, |
687 |
<tt>config_server</tt>: |
<tt>config_server</tt>: |
688 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
689 |
<font color="#2020cf">!!gxemul</font> |
<b> net( |
|
<b>emul( |
|
|
net( |
|
690 |
local_port(12444) </b>! the server<b> |
local_port(12444) </b>! the server<b> |
691 |
add_remote("localhost:12445") </b>! the client<b> |
add_remote("localhost:12445") </b>! the client<b> |
692 |
) |
) |
700 |
|
|
701 |
disk("nbsd_pmax.img") |
disk("nbsd_pmax.img") |
702 |
) |
) |
703 |
)</b> |
</b> |
704 |
</pre></td></tr></table> |
</pre></td></tr></table> |
705 |
<li>Boot the "<tt>nfs server</tt>" and the NetBSD/sgimips |
<li>Boot the "<tt>nfs server</tt>" and the NetBSD/sgimips |
706 |
"<tt>client machine</tt>" as two separate emulator instances:<pre> |
"<tt>client machine</tt>" as two separate emulator instances:<pre> |
890 |
<h3>NetBSD/prep:</h3> |
<h3>NetBSD/prep:</h3> |
891 |
|
|
892 |
It is possible to install and run |
It is possible to install and run |
893 |
<a href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a> in GXemul |
<a href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a> 2.1 in GXemul |
894 |
on an emulated IBM 6050 (PowerPC) machine. |
on an emulated IBM 6050 (PowerPC) machine. (NetBSD 3.0 uses the wdc |
895 |
|
controller in a way which isn't implemented in GXemul yet.) |
896 |
|
|
897 |
<p> |
<p> |
898 |
<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> |
1029 |
already have <tt>mkisofs</tt> installed on your system, you need |
already have <tt>mkisofs</tt> installed on your system, you need |
1030 |
to install it in order to do this.)<pre> |
to install it in order to do this.)<pre> |
1031 |
<b>mkisofs -o openbsd_pmax_2.8.iso ftp.se.openbsd.org/pub/OpenBSD/2.8/pmax</b> |
<b>mkisofs -o openbsd_pmax_2.8.iso ftp.se.openbsd.org/pub/OpenBSD/2.8/pmax</b> |
1032 |
|
<b>rm -rf ftp.se.openbsd.org</b> <i>(this directory is not needed anymore)</i> |
1033 |
|
|
1034 |
</pre> |
</pre> |
1035 |
<li>Start the emulator with all three (!) disk images:<pre> |
<li>Start the emulator with all three (!) disk images:<pre> |
1036 |
<b>gxemul -e 3max -A -d obsd_pmax.img -d b:simpleroot28.fs -j bsd -d c:openbsd_pmax_2.8.iso</b> |
<b>gxemul -e 3max -d obsd_pmax.img -d b:simpleroot28.fs -j bsd -d c:openbsd_pmax_2.8.iso</b> |
1037 |
|
|
1038 |
</pre> |
</pre> |
1039 |
(If you add <tt>-X</tt>, you will run with the graphical |
(If you add <tt>-X</tt>, you will run with the graphical |
1068 |
password! The first time you boot up OpenBSD after the install, you |
password! The first time you boot up OpenBSD after the install, you |
1069 |
need to go into single user mode and run <b>passwd root</b> to set |
need to go into single user mode and run <b>passwd root</b> to set |
1070 |
the root password, or you will not be able to log in at all!<pre> |
the root password, or you will not be able to log in at all!<pre> |
1071 |
<b>gxemul -e 3max -A -d obsd_pmax.img -d 2c:openbsd_pmax_2.8.iso -j bsd -o '-s'</b> |
<b>gxemul -e 3max -d obsd_pmax.img -d 2c:openbsd_pmax_2.8.iso -j bsd -o '-s'</b> |
1072 |
</pre> |
</pre> |
1073 |
While you are at it, you might want to extract the X11 install sets |
While you are at it, you might want to extract the X11 install sets |
1074 |
as well, as the installer seems to ignore them too. (Perhaps due to a bug |
as well, as the installer seems to ignore them too. (Perhaps due to a bug |
1145 |
|
|
1146 |
</pre> |
</pre> |
1147 |
<li>Download the entire cats directory from the ftp server:<pre> |
<li>Download the entire cats directory from the ftp server:<pre> |
1148 |
<b>wget -np -l 0 -r <a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.8/cats/">ftp://ftp.openbsd.org/pub/OpenBSD/3.8/cats/</a></b> |
<b>wget -np -l 0 -r <a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.9/cats/">ftp://ftp.openbsd.org/pub/OpenBSD/3.9/cats/</a></b> |
1149 |
<b>cp ftp.openbsd.org/pub/OpenBSD/3.8/cats/bsd .</b> |
<b>cp ftp.openbsd.org/pub/OpenBSD/3.9/cats/bsd .</b> |
1150 |
<b>cp ftp.openbsd.org/pub/OpenBSD/3.8/cats/bsd.rd .</b> |
<b>cp ftp.openbsd.org/pub/OpenBSD/3.9/cats/bsd.rd .</b> |
1151 |
|
|
1152 |
</pre> |
</pre> |
1153 |
|
(Replace ftp.openbsd.org with a server closer to you, for |
1154 |
|
increased download speed.) |
1155 |
|
<p> |
1156 |
<li>You now need to make an ISO image of the entire directory you downloaded. |
<li>You now need to make an ISO image of the entire directory you downloaded. |
1157 |
(I recommend using <tt>mkisofs</tt> for that purpose. If you don't |
(I recommend using <tt>mkisofs</tt> for that purpose. If you don't |
1158 |
already have <tt>mkisofs</tt> installed on your system, you need |
already have <tt>mkisofs</tt> installed on your system, you need |
1159 |
to install it in order to do this.)<pre> |
to install it in order to do this.)<pre> |
1160 |
<b>mkisofs -allow-lowercase -o openbsd_cats_3.8.iso ftp.openbsd.org/pub/OpenBSD/</b> |
<b>mkisofs -allow-lowercase -o openbsd_cats_3.9.iso ftp.openbsd.org/pub/OpenBSD/</b> |
1161 |
|
<b>rm -rf ftp.openbsd.org</b> <i>(this directory is not needed anymore)</i> |
1162 |
|
|
1163 |
</pre> |
</pre> |
1164 |
<li>Start the emulator using this command line:<pre> |
<li>Start the emulator using this command line:<pre> |
1165 |
<b>gxemul -XEcats -d obsd_cats.img -d openbsd_cats_3.8.iso bsd.rd</b> |
<b>gxemul -XEcats -d obsd_cats.img -d openbsd_cats_3.9.iso bsd.rd</b> |
1166 |
|
|
1167 |
</pre> |
</pre> |
1168 |
and proceed like you would do if you were installing OpenBSD |
and proceed like you would do if you were installing OpenBSD |
1203 |
|
|
1204 |
<p> |
<p> |
1205 |
|
|
1206 |
<a href="20040504-ultrix45-boot1.png"><img src="20040504-ultrix45-boot1_small.gif"></a> |
<a href="20040504-ultrix45-boot1.png"><img src="20040504-ultrix45-boot1_small.png"></a> |
1207 |
|
|
1208 |
<a href="ultrix4.5-20040706.png"><img src="ultrix4.5-20040706_small.gif"></a> |
<a href="ultrix4.5-20040706.png"><img src="ultrix4.5-20040706_small.png"></a> |
1209 |
|
|
1210 |
<p> |
<p> |
1211 |
The following instructions should let you install Ultrix onto a disk image: |
The following instructions should let you install Ultrix onto a disk image: |
1220 |
(On FreeBSD and similar systems, it is called <tt>/dev/cd0c</tt>. |
(On FreeBSD and similar systems, it is called <tt>/dev/cd0c</tt>. |
1221 |
Replace that with the name of your CDROM drive, or the name of a |
Replace that with the name of your CDROM drive, or the name of a |
1222 |
.iso image file.) Then, start the emulator like this:<pre> |
.iso image file.) Then, start the emulator like this:<pre> |
1223 |
<b>gxemul -X -A -e 3max -d rootdisk.img -d bc:/dev/cd0c -j vmunix</b> |
<b>gxemul -X -e 3max -d rootdisk.img -d bc:/dev/cd0c -j vmunix</b> |
1224 |
|
|
1225 |
</pre> |
</pre> |
1226 |
<li>Once the first stage of the installation is done (restoring the root |
<li>Once the first stage of the installation is done (restoring the root |
1228 |
new rootdisk, to continue the installation process. |
new rootdisk, to continue the installation process. |
1229 |
This is done by removing the bootflag ('<tt>b</tt>') from the second |
This is done by removing the bootflag ('<tt>b</tt>') from the second |
1230 |
diskimage argument:<pre> |
diskimage argument:<pre> |
1231 |
<b>gxemul -X -A -e 3max -d rootdisk.img -d c:/dev/cd0c -j vmunix</b> |
<b>gxemul -X -e 3max -d rootdisk.img -d c:/dev/cd0c -j vmunix</b> |
1232 |
|
|
1233 |
</pre> |
</pre> |
1234 |
</ol> |
</ol> |
1236 |
<p> |
<p> |
1237 |
When the installation is completed, the following command should start |
When the installation is completed, the following command should start |
1238 |
Ultrix from the harddisk image:<pre> |
Ultrix from the harddisk image:<pre> |
1239 |
<b>gxemul -X -A -e 3max -j vmunix -d rootdisk.img</b> |
<b>gxemul -X -e 3max -j vmunix -d rootdisk.img</b> |
1240 |
</pre> |
</pre> |
1241 |
|
|
1242 |
<p>Ultrix mostly seems to work with dynamic binary translation (which can |
<p>If you have a very fast host machine, you might experience a weird |
|
be disabled by the <b><tt>-B</tt></b> command line option). If you have a |
|
|
very fast host machine, and use bintrans, you might experience a weird |
|
1243 |
timer related bug, which makes it impossible to logon to the system. It is |
timer related bug, which makes it impossible to logon to the system. It is |
1244 |
triggered when the emulation goes faster than any real DECstation machine |
triggered when the emulation goes faster than any real DECstation machine |
1245 |
was capable of running. A temporary workaround is to add |
was capable of running. A temporary workaround is to add |
1256 |
displays to use. The following example starts Ultrix on an emulated |
displays to use. The following example starts Ultrix on an emulated |
1257 |
tripple-headed workstation, on three different displays (<tt>remote1:0.0</tt>, |
tripple-headed workstation, on three different displays (<tt>remote1:0.0</tt>, |
1258 |
<tt>localhost:0.0</tt>, and <tt>remote2:0.0</tt>), using no scaledown:<pre> |
<tt>localhost:0.0</tt>, and <tt>remote2:0.0</tt>), using no scaledown:<pre> |
1259 |
<b>gxemul -A -N -e 3max -jgenvmunix -d rootdisk.img \ |
<b>gxemul -N -e 3max -jgenvmunix -d rootdisk.img \ |
1260 |
-XZ3 -z remote1:0.0 -z localhost:0.0 -z remote2:0.0</b> |
-XZ3 -z remote1:0.0 -z localhost:0.0 -z remote2:0.0</b> |
1261 |
</pre> |
</pre> |
1262 |
|
|
1367 |
on an emulated 5000/200 ("3max"). Although the Debian project has released |
on an emulated 5000/200 ("3max"). Although the Debian project has released |
1368 |
install ramdisk kernels for this purpose, these do not always work: |
install ramdisk kernels for this purpose, these do not always work: |
1369 |
<ul> |
<ul> |
1370 |
<li>Serial console output doesn't work too well in GXemul. There are |
<li>Serial console output doesn't work too well in GXemul. Linux |
1371 |
random oopses, which may be due to bugs in GXemul, but may |
oopses randomly, which may be due to bugs in GXemul, but may |
1372 |
also be due to bugs in the serial controller code in Linux. |
also be due to bugs in the serial controller code in Linux. |
1373 |
(The speed at which serial interrupts are generated can be |
(The speed at which serial interrupts are generated can be |
1374 |
lowered with the <tt>-U</tt> command line option, but it only |
lowered with the <tt>-U</tt> command line option, but it only |
1402 |
</pre> |
</pre> |
1403 |
<p> |
<p> |
1404 |
<li>Start the installation like this:<pre> |
<li>Start the installation like this:<pre> |
1405 |
<b>gxemul -XAe3max -d debian_pmax.img -d debian-31r0a-mipsel-netinst.iso vmlinux-2.4.31</b> |
<b>gxemul -X -e3max -d debian_pmax.img -d debian-31r0a-mipsel-netinst.iso vmlinux-2.4.31</b> |
|
|
|
1406 |
</pre> |
</pre> |
1407 |
Everything is <i>really</i> slow, for several reasons (framebuffer is |
|
1408 |
always slower than serial console, and Debian's install seems to be |
<p>If everything goes well, you will see Linux' boot messages, and then |
1409 |
made up of scripts that run a lot slower in the emulator than pure |
arrive at the language chooser. |
1410 |
C code would). |
|
1411 |
<p> |
<p> |
1412 |
There will be a <font color="#d00000">warning</font> about "Select |
<a href="debian-1.png"><img src="debian-1-small.png"></a> |
1413 |
keyboard layout". Don't mind this. Continue by selecting "Detect and |
<a href="debian-2.png"><img src="debian-2-small.png"></a> |
1414 |
mount CD-ROM". |
<a href="debian-3.png"><img src="debian-3-small.png"></a> |
1415 |
|
<a href="debian-4.png"><img src="debian-4-small.png"></a> |
1416 |
|
|
1417 |
|
<p>There will be a warning about the keyboard |
1418 |
|
layout. Don't mind this. Continue, and then select <b>Detect |
1419 |
|
and mount CD-ROM</b> in the next menu. |
1420 |
|
|
1421 |
|
<p> |
1422 |
|
<a href="debian-5.png"><img src="debian-5-small.png"></a> |
1423 |
|
<a href="debian-6.png"><img src="debian-6-small.png"></a> |
1424 |
|
<a href="debian-7.png"><img src="debian-7-small.png"></a> |
1425 |
|
<a href="debian-8.png"><img src="debian-8-small.png"></a> |
1426 |
|
|
1427 |
<p> |
<p> |
1428 |
There will also be a <font color="#d00000">warning</font> about lack |
There will also be a warning about lack of loadable modules. Don't |
1429 |
of loadable modules. Don't mind this, continue anyway. |
mind this either, continue anyway by choosing <b>Yes</b>. |
1430 |
<p> |
<p> |
1431 |
You need to enter some values during the installation procedure, for |
When you reach the network configuration part of the install, choose |
1432 |
example network settings. The following should work:<pre> |
<b>Configure network manually</b> and enter the following values:<pre> |
|
DHCP: No, choose "<b>Configure network manually</b>" |
|
1433 |
IP address: <b>10.0.0.1</b> |
IP address: <b>10.0.0.1</b> |
1434 |
Netmask: <b>255.0.0.0</b> |
Netmask: <b>255.0.0.0</b> |
1435 |
Gateway: <b>10.0.0.254</b> |
Gateway: <b>10.0.0.254</b> |
1436 |
Name server addresses: <b>10.0.0.254</b> |
Name server addresses: <b>10.0.0.254</b> |
1437 |
|
|
1438 |
</pre> |
</pre> |
1439 |
<li>Once the first phase of the install has finished, the following command |
<p>Choose <b>Erase entire disk</b> in the partitioner. |
1440 |
should let you boot into Debian, and perform post-install |
|
1441 |
configuration:<pre> |
<p>Wait for the base system to be installed. This takes almost forever, |
1442 |
<b>gxemul -XAe3max -o 'root=/dev/sda1' -d debian_pmax.img vmlinux-2.4.31</b> |
so you can go fetch several <a href="http://en.wikipedia.org/wiki/Jolt_Cola">Jolts</a> |
1443 |
|
or cups of coffee in the meanwhile. |
1444 |
|
|
1445 |
|
<p> |
1446 |
|
<a href="debian-9.png"><img src="debian-9-small.png"></a> |
1447 |
|
<a href="debian-10.png"><img src="debian-10-small.png"></a> |
1448 |
|
<a href="debian-11.png"><img src="debian-11-small.png"></a> |
1449 |
|
<a href="debian-12.png"><img src="debian-12-small.png"></a> |
1450 |
|
|
1451 |
|
<p>Congratulations! The first phase of the installation is now completed. |
1452 |
|
Reboot using the following command line:<pre> |
1453 |
|
<b>gxemul -X -e3max -o 'root=/dev/sda1' -d debian_pmax.img vmlinux-2.4.31</b> |
1454 |
|
|
1455 |
|
</pre> |
1456 |
|
<p>The post-install step takes quite some time as well. A perfect opportunity |
1457 |
|
for more coffee. |
1458 |
|
|
1459 |
|
<p>When asked about "Apt configuration", choose <b>http</b> as the method |
1460 |
|
to use for accessing the Debian archive. |
1461 |
|
|
1462 |
|
<p> |
1463 |
|
<a href="debian-13.png"><img src="debian-13-small.png"></a> |
1464 |
|
<a href="debian-14.png"><img src="debian-14-small.png"></a> |
1465 |
|
<a href="debian-15.png"><img src="debian-15-small.png"></a> |
1466 |
|
|
1467 |
|
<p>Downloading the packages takes almost forever. Be patient. |
1468 |
|
|
1469 |
|
<p>Congratulations (again)! You are now fully done with the installation. |
1470 |
|
|
|
</pre>The post-install step takes quite some time. |
|
1471 |
</ol> |
</ol> |
1472 |
|
|
1473 |
<p>Debian GNU/Linux for DECstation should now be installed. Use this command |
<p><br>Debian GNU/Linux for DECstation is now installed and ready to be used. |
1474 |
to boot from the installed disk image:<pre> |
Use this command to boot from the installed disk image:<pre> |
1475 |
<b>gxemul -XAe3max -o 'root=/dev/sda1' -d debian_pmax.img vmlinux-2.4.31</b> |
<b>gxemul -X -e3max -o 'root=/dev/sda1' -d debian_pmax.img vmlinux-2.4.31</b> |
1476 |
|
|
1477 |
</pre> |
</pre> |
1478 |
|
|
1496 |
|
|
1497 |
<p> |
<p> |
1498 |
<ol> |
<ol> |
1499 |
<li>Download a kernel. David Muse' Debian-install kernel works fine, also with Redhat:<pre> |
<li>Download a kernel. David Muse' Debian-install kernel works fine:<pre> |
1500 |
<a href="http://www.firstworks.com/mips-linux-2.4.31/vmlinux-2.4.31">http://www.firstworks.com/mips-linux-2.4.31/vmlinux-2.4.31</a> |
<a href="http://www.firstworks.com/mips-linux-2.4.31/vmlinux-2.4.31">http://www.firstworks.com/mips-linux-2.4.31/vmlinux-2.4.31</a> |
1501 |
|
|
1502 |
</pre> |
</pre> |
1513 |
<li>This is the tricky part: on redhat_mips.img, you need to create an MS-DOS |
<li>This is the tricky part: on redhat_mips.img, you need to create an MS-DOS |
1514 |
(!) partition table, and then an ext2 partition. This is what Linux |
(!) partition table, and then an ext2 partition. This is what Linux |
1515 |
will then see as /dev/sda1. |
will then see as /dev/sda1. |
1516 |
<p>On a Linux host, you could use a loopback mount, or similar. Otherwise, |
<p>I recommend you run fdisk and mke2fs and untar the archive from within |
|
I recommend you run fdisk and mke2fs and untar the archive from within |
|
1517 |
Debian/DECstation or <a href="#debiancats">Debian/CATS</a> running |
Debian/DECstation or <a href="#debiancats">Debian/CATS</a> running |
1518 |
inside the emulator. Use your imagination. |
inside the emulator. (Alternatively, if you are on a Linux host, |
1519 |
|
you could use a loopback mount, or similar. This might require |
1520 |
|
root access. See e.g. |
1521 |
|
<a href="http://www.mega-tokyo.com/osfaq2/index.php/Disk%20Images%20Under%20Linux">http://www.mega-tokyo.com/osfaq2/index.php/Disk%20Images%20Under%20Linux</a>.) |
1522 |
<p> |
<p> |
1523 |
In order to actually boot the system you need to modify /etc/fstab. |
In order to actually boot the system you need to modify /etc/fstab. |
1524 |
Change<pre> |
Change<pre> |
1537 |
</ol> |
</ol> |
1538 |
|
|
1539 |
<p>To boot Redhat linux from the disk image, use the following command line:<pre> |
<p>To boot Redhat linux from the disk image, use the following command line:<pre> |
1540 |
<b>gxemul -XAe3max -o "root=/dev/sda1 ro" -d redhat_mips.img vmlinux-2.4.31</b> |
<b>gxemul -X -e3max -o "root=/dev/sda1 ro" -d redhat_mips.img vmlinux-2.4.31</b> |
1541 |
|
|
1542 |
</pre> |
</pre> |
1543 |
If you need to boot into single user mode, change options to |
If you need to boot into single user mode, change options to |
1646 |
mailed Adaptec several times, asking for documentation, but never received |
mailed Adaptec several times, asking for documentation, but never received |
1647 |
any reply.) OpenBSD/sgi can still run in the emulator, as long as it doesn't |
any reply.) OpenBSD/sgi can still run in the emulator, as long as it doesn't |
1648 |
use SCSI. For a simple test with the ramdisk (install) kernel, try dowloading<pre> |
use SCSI. For a simple test with the ramdisk (install) kernel, try dowloading<pre> |
1649 |
<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.7/sgi/bsd.rd">ftp://ftp.se.openbsd.org/pub/OpenBSD/3.7/sgi/bsd.rd</a> |
<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi/">ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi</a>/<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi/bsd.rd">bsd.rd</a> |
1650 |
|
|
1651 |
</pre>and run <b><tt>gxemul -e o2 bsd.rd</tt></b>. |
</pre>and run <b><tt>gxemul -xeo2 bsd.rd</tt></b>. |
1652 |
|
|
1653 |
<p>It might also be possible to netboot. Another emulated machine must |
<p>It might also be possible to netboot. Another emulated machine must |
1654 |
then be used as the nfs root server, and the emulated O2 machine must boot |
then be used as the nfs root server, and the emulated O2 machine must boot |
1664 |
<p> |
<p> |
1665 |
<li>Configure the nfs server machine to act as an nfs server. |
<li>Configure the nfs server machine to act as an nfs server. |
1666 |
Start up the emulated DECstation:<pre> |
Start up the emulated DECstation:<pre> |
1667 |
<b>gxemul -e 3max -A -d nbsd_pmax.img</b> |
<b>gxemul -e 3max -d nbsd_pmax.img</b> |
1668 |
</pre>and enter the following commands as <tt>root</tt> |
</pre>and enter the following commands as <tt>root</tt> |
1669 |
inside the emulator: |
inside the emulator: |
1670 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1688 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1689 |
<b>cd /tftpboot; ftp -i ftp.se.openbsd.org</b> |
<b>cd /tftpboot; ftp -i ftp.se.openbsd.org</b> |
1690 |
(log in as anonymous...) |
(log in as anonymous...) |
1691 |
<b>cd pub/OpenBSD/3.7/sgi |
<b>cd pub/OpenBSD/3.9/sgi |
1692 |
mget b*tgz c* e* g* m* |
mget b*tgz c*tgz e* g* m* |
1693 |
quit |
quit |
1694 |
sh |
sh |
1695 |
for a in *.tgz; do echo $a; tar zxfp $a; done |
for a in *.tgz; do echo $a; tar zxfp $a; done |
1699 |
halt</b> |
halt</b> |
1700 |
</pre></td></tr></table> |
</pre></td></tr></table> |
1701 |
<li>Download the OpenBSD/sgi GENERIC and RAMDISK kernels:<pre> |
<li>Download the OpenBSD/sgi GENERIC and RAMDISK kernels:<pre> |
1702 |
<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.7/sgi/bsd">ftp://ftp.se.openbsd.org/pub/OpenBSD/3.7/sgi/bsd</a> |
<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi/bsd">ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi/bsd</a> |
1703 |
MD5 (bsd) = f16eaf3dcbd51876db7c25f70e6d8a08 |
<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi/bsd.rd">ftp://ftp.se.openbsd.org/pub/OpenBSD/3.9/sgi/bsd.rd</a> |
|
<a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/3.7/sgi/bsd.rd">ftp://ftp.se.openbsd.org/pub/OpenBSD/3.7/sgi/bsd.rd</a> |
|
|
MD5 (bsd.rd) = 4843e6139d8dd04b03d5f0e33e9a4f7b |
|
1704 |
|
|
1705 |
</pre> |
</pre> |
1706 |
<li>Create a configuration file called <tt>config_client</tt>: |
<li>Create a configuration file called <tt>config_client</tt>: |
1707 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1708 |
<font color="#2020cf">!!gxemul |
<font color="#2020cf">! Configuration file for running OpenBSD/sgi diskless with |
|
! |
|
|
! Configuration file for running OpenBSD/sgi diskless with |
|
1709 |
! a NetBSD/pmax machine as the nfs server. |
! a NetBSD/pmax machine as the nfs server. |
1710 |
! |
! |
1711 |
! This config file is for the client.</font> |
! This config file is for the client.</font> |
1712 |
|
|
1713 |
<b>emul( |
<b> net( |
|
net( |
|
1714 |
add_remote("localhost:12444") </b>! the server<b> |
add_remote("localhost:12444") </b>! the server<b> |
1715 |
local_port(12445) </b>! the client<b> |
local_port(12445) </b>! the client<b> |
1716 |
) |
) |
1725 |
</b>! load("bsd")<b> |
</b>! load("bsd")<b> |
1726 |
load("bsd.rd") |
load("bsd.rd") |
1727 |
) |
) |
1728 |
)</b> |
</b> |
1729 |
</pre></td></tr></table> |
</pre></td></tr></table> |
1730 |
... and another configuration file for the server, |
... and another configuration file for the server, |
1731 |
<tt>config_server</tt>: |
<tt>config_server</tt>: |
1732 |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1733 |
<font color="#2020cf">!!gxemul</font> |
<b> net( |
|
<b>emul( |
|
|
net( |
|
1734 |
local_port(12444) </b>! the server<b> |
local_port(12444) </b>! the server<b> |
1735 |
add_remote("localhost:12445") </b>! the client<b> |
add_remote("localhost:12445") </b>! the client<b> |
1736 |
) |
) |
1744 |
|
|
1745 |
disk("nbsd_pmax.img") |
disk("nbsd_pmax.img") |
1746 |
) |
) |
1747 |
)</b> |
</b> |
1748 |
</pre></td></tr></table> |
</pre></td></tr></table> |
1749 |
<li>Boot the "<tt>nfs server</tt>" and the OpenBSD/sgi |
<li>Boot the "<tt>nfs server</tt>" and the OpenBSD/sgi |
1750 |
"<tt>client machine</tt>" as two separate emulator instances:<pre> |
"<tt>client machine</tt>" as two separate emulator instances:<pre> |
1861 |
|
|
1862 |
</pre> |
</pre> |
1863 |
<li>Start the emulator using this command line:<pre> |
<li>Start the emulator using this command line:<pre> |
1864 |
<b>gxemul -e pica -X -A -d obsd_arc.img -d b:openbsd_arc_2.3.iso -j 2.3/arc/bsd.rd</b> |
<b>gxemul -e pica -X -d obsd_arc.img -d b:openbsd_arc_2.3.iso -j 2.3/arc/bsd.rd</b> |
1865 |
|
|
1866 |
</pre> |
</pre> |
1867 |
and proceed like you would do if you were installing OpenBSD |
and proceed like you would do if you were installing OpenBSD |
1939 |
|
|
1940 |
|
|
1941 |
|
|
1942 |
|
|
1943 |
|
<p><br> |
1944 |
|
<a name="linux_qemu_mips"></a> |
1945 |
|
<h3>Linux/QEMU_MIPS:</h3> |
1946 |
|
|
1947 |
|
I've added a semi-bogus machine mode which tries to |
1948 |
|
mimic the MIPS machine mode used in Fabrice Bellard's |
1949 |
|
<a href="http://fabrice.bellard.free.fr/qemu/">QEMU</a>. |
1950 |
|
|
1951 |
|
<p>Follow these steps to download and run the Linux/QEMU_MIPS test |
1952 |
|
ramdisk kernel: |
1953 |
|
|
1954 |
|
<p><ol> |
1955 |
|
<li>Download <a href="http://fabrice.bellard.free.fr/qemu/mips-test-0.1.tar.gz">mips-test-0.1.tar.gz</a> |
1956 |
|
from <a href="http://fabrice.bellard.free.fr/qemu/download.html">http://fabrice.bellard.free.fr/qemu/download.html</a>, |
1957 |
|
and extract its contents (<tt>tar zxvf mips-test-0.1.tar.gz</tt>). |
1958 |
|
<p> |
1959 |
|
<li>Test it in GXemul using the following command line:<pre> |
1960 |
|
<b>gxemul -E qemu_mips -o 'console=ttyS0 root=/dev/ram |
1961 |
|
rd_start=0x80800000 rd_size=10000000 init=/bin/sh' |
1962 |
|
0x80800000:mips-test/initrd mips-test/vmlinux-r1</b> |
1963 |
|
|
1964 |
|
</pre> |
1965 |
|
</ol> |
1966 |
|
|
1967 |
|
<p><i>"QEMU is a FAST! processor emulator"</i> according to <a |
1968 |
|
href="http://fabrice.bellard.free.fr/qemu/qemu-doc.html">http://fabrice.bellard.free.fr/qemu/qemu-doc.html</a>. |
1969 |
|
Sometimes QEMU is faster than GXemul, sometimes it is the other way |
1970 |
|
around. A quick (and quite unfair) test on my laptop (1.8 GHz Turion ML32, |
1971 |
|
I think, in AMD64 mode) comparing QEMU 0.8.1 installed as a binary package |
1972 |
|
from FreeBSD ports with GXemul gave the following result: |
1973 |
|
|
1974 |
|
<p><pre> |
1975 |
|
<b>while true; do ls -l > /dev/null; echo -n .; done</b> |
1976 |
|
(80 x 36 dots) |
1977 |
|
QEMU 0.8.1: 13 min 48 sec |
1978 |
|
GXemul 20060711: 7 min 54 sec |
1979 |
|
GXemul 0.4.1: 4 min 59 sec |
1980 |
|
|
1981 |
|
<b>while true; do /usr/bin/md5sum /usr/bin/* > /dev/null; echo -n .; done</b> |
1982 |
|
(80 dots) |
1983 |
|
QEMU 0.8.1: 2 min 9 sec |
1984 |
|
GXemul 20060711: 8 min 49 sec |
1985 |
|
GXemul 0.4.1: 6 min 54 sec |
1986 |
|
|
1987 |
|
<b>while true; do grep hej lib/libtextwrap.so.1 > /dev/null; echo -n .; done</b> |
1988 |
|
(80 dots) |
1989 |
|
QEMU 0.8.1: 10 min 5 sec |
1990 |
|
GXemul 20060711: 3 min 8 sec |
1991 |
|
GXemul 0.4.1: 1 min 42 sec |
1992 |
|
</pre> |
1993 |
|
|
1994 |
|
<p>The commands were run inside the emulators, using the ramdisk kernel |
1995 |
|
mentioned above. (For GXemul, 2006-07-11 was the date when the QEMU_MIPS |
1996 |
|
mode was added. Performance has since gotten a bit better in general, for |
1997 |
|
non-R3000 MIPS emulation.) |
1998 |
|
|
1999 |
|
|
2000 |
|
|
2001 |
|
|
2002 |
|
|
2003 |
|
|
2004 |
|
|
2005 |
|
|
2006 |
|
<p><br> |
2007 |
|
<a name="windows_nt_mips"></a> |
2008 |
|
<h3>Windows NT/MIPS:</h3> |
2009 |
|
|
2010 |
|
Old versions of Windows NT could run on MIPS hardware, e.g. |
2011 |
|
the PICA 61. It is theoretically possible that the emulation provided by |
2012 |
|
GXemul some day could be stable/complete enough to emulate |
2013 |
|
such hardware well enough to fool Windows NT into thinking |
2014 |
|
that it is running on a real machine. |
2015 |
|
<font color="#ff0000">IT DOES <b>NOT</b> WORK YET!</font> |
2016 |
|
|
2017 |
|
<p>Something like this would be done to install |
2018 |
|
Windows NT onto a disk image: |
2019 |
|
|
2020 |
|
<ol> |
2021 |
|
<li>Put a "Windows NT 4.0 for MIPS" CDROM (or similar) into |
2022 |
|
your CDROM drive. (On FreeBSD systems, it is |
2023 |
|
usually called <tt>/dev/cd0c</tt> or similar. Change |
2024 |
|
that to whatever the CDROM is called on your system, |
2025 |
|
or the name of a raw .iso image. I have tried this |
2026 |
|
with the Swedish version, but it might work with |
2027 |
|
other versions too.) |
2028 |
|
<p> |
2029 |
|
<li>Create an empty harddisk image, which will be the disk image |
2030 |
|
that you will install Windows NT onto:<pre> |
2031 |
|
$ <b><tt>dd if=/dev/zero of=winnt_test.img bs=1024 count=1 seek=999000</tt></b> |
2032 |
|
|
2033 |
|
</pre> |
2034 |
|
<li>Run the ARC installer, to partition the disk image:<pre> |
2035 |
|
$ <b><tt>gxemul -X -e pica -d winnt_test.img -d bc6:/dev/cd0c -j MIPS\\ARCINST</tt></b> |
2036 |
|
</pre> |
2037 |
|
Note that <tt>ARCINST</tt> <i>almost</i> works, but not quite. |
2038 |
|
<p> |
2039 |
|
<li>Run the SETUP program:<pre> |
2040 |
|
$ <b><tt>gxemul -X -e pica -d winnt_test.img -d bc6:/dev/cd0c -j MIPS\\SETUPLDR</tt></b> |
2041 |
|
</pre> |
2042 |
|
</ol> |
2043 |
|
|
2044 |
|
<p><tt>SETUPLDR</tt> manages to load some drivers from the cdrom, |
2045 |
|
but then it crashes because of incomplete emulation of some hardware devices. |
2046 |
|
|
2047 |
|
|
2048 |
|
|
2049 |
|
|
2050 |
|
|
2051 |
|
|
2052 |
|
|
2053 |
<p><br> |
<p><br> |
2054 |
<a name="netbsdnetwinderinstall"></a> |
<a name="netbsdnetwinderinstall"></a> |
2055 |
<h3>NetBSD/netwinder:</h3> |
<h3>NetBSD/netwinder:</h3> |
2083 |
</pre> |
</pre> |
2084 |
<p> |
<p> |
2085 |
<li>Start NetBSD/pmax like this:<pre> |
<li>Start NetBSD/pmax like this:<pre> |
2086 |
<b>gxemul -e 3max -A -d nbsd_pmax.img -d nbsd_netwinder.img -d netwinder.iso</b> |
<b>gxemul -e 3max -d nbsd_pmax.img -d nbsd_netwinder.img -d netwinder.iso</b> |
2087 |
|
|
2088 |
</pre>and execute the following commands as <tt>root</tt>: |
</pre>and execute the following commands as <tt>root</tt>: |
2089 |
<p><table border="0"><tr><td><tt> </tt></td><td><pre> |
<p><table border="0"><tr><td><tt> </tt></td><td><pre> |
2123 |
|
|
2124 |
|
|
2125 |
|
|
2126 |
|
|
2127 |
|
|
2128 |
|
<p><br> |
2129 |
|
<a name="netbsdmacppcinstall"></a> |
2130 |
|
<h3>NetBSD/macppc:</h3> |
2131 |
|
|
2132 |
|
It is <font color="#ff0000"><b>ALMOST</b></font> possible to install and run |
2133 |
|
<a href="http://www.netbsd.org/Ports/macppc/">NetBSD/macppc</a> in GXemul |
2134 |
|
on an emulated generic PowerPC machine. No specific Machintosh model |
2135 |
|
is emulated, but it is enough to for NetBSD to recognize it. |
2136 |
|
|
2137 |
|
<p>To install NetBSD/macppc onto a disk image, follow these instructions: |
2138 |
|
|
2139 |
|
<p> |
2140 |
|
<ol start="1"> |
2141 |
|
<li>Create an empty harddisk image, which will be the root disk |
2142 |
|
that you will install NetBSD/macppc onto:<pre> |
2143 |
|
<b>dd if=/dev/zero of=nbsd_macppc.img bs=1024 count=1 seek=2000000</b> |
2144 |
|
|
2145 |
|
</pre> |
2146 |
|
<li>Download the NetBSD/macppc 3.0 ISO image and a generic kernel:<pre> |
2147 |
|
<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> |
2148 |
|
<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> |
2149 |
|
|
2150 |
|
</pre> |
2151 |
|
<p> |
2152 |
|
<li>Start the installation like this:<pre> |
2153 |
|
<b>gxemul -x -e g4 -d nbsd_macppc.img -d b:macppccd-3.0.iso -j macppc/binary/kernel/netbsd-INSTALL.gz</b> |
2154 |
|
|
2155 |
|
</pre> |
2156 |
|
</ol> |
2157 |
|
|
2158 |
|
<p>If everything worked, NetBSD/macppc should now be installed on the disk image. |
2159 |
|
|
2160 |
|
<p><font color="#ff0000"><b>2006-02-26:</b></font> That's it. The installation |
2161 |
|
succeeds, but it is not possible to start from the newly installed disk. |
2162 |
|
/sbin/init dies, so the following command doesn't really work yet: |
2163 |
|
|
2164 |
|
<p>Use the following command line to boot the emulated machine:<pre> |
2165 |
|
<b>gxemul -x -e g4 -d nbsd_macppc.img netbsd-GENERIC.MP.gz</b> |
2166 |
|
|
2167 |
|
</pre> |
2168 |
|
|
2169 |
|
|
2170 |
|
|
2171 |
|
|
2172 |
|
|
2173 |
</p> |
</p> |