1 |
<html> |
<html><head><title>GXemul documentation: Installing and running "guest OSes"</title> |
|
<head><title>GXemul documentation: Installing and running "guest OSes"</title> |
|
2 |
<meta name="robots" content="noarchive,nofollow,noindex"> |
<meta name="robots" content="noarchive,nofollow,noindex"> |
3 |
</head> |
</head> |
4 |
<body bgcolor="#f8f8f8" text="#000000" link="#4040f0" vlink="#404040" alink="#ff0000"> |
<body bgcolor="#f8f8f8" text="#000000" link="#4040f0" vlink="#404040" alink="#ff0000"> |
11 |
|
|
12 |
<!-- |
<!-- |
13 |
|
|
14 |
$Id: guestoses.html,v 1.50 2005/06/11 11:53:33 debug Exp $ |
$Id: guestoses.html,v 1.72 2005/06/27 23:04:36 debug Exp $ |
15 |
|
|
16 |
Copyright (C) 2003-2005 Anders Gavare. All rights reserved. |
Copyright (C) 2003-2005 Anders Gavare. All rights reserved. |
17 |
|
|
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="#netbsdinstall">Installing NetBSD/pmax in GXemul</a> |
<li><a href="#netbsdinstall">NetBSD/pmax</a> |
52 |
<li><a href="#netbsdarcinstall">Installing NetBSD/arc in GXemul</a> |
<li><a href="#netbsdarcinstall">NetBSD/arc</a> |
53 |
<li><a href="#netbsdhpcmipsinstall">Installing NetBSD/hpcmips in GXemul</a> |
<li><a href="#netbsdhpcmipsinstall">NetBSD/hpcmips</a> |
54 |
<li><a href="#netbsdcobaltinstall">Installing NetBSD/cobalt in GXemul</a> |
<li><a href="#netbsdcobaltinstall">NetBSD/cobalt</a> |
55 |
<!-- |
<li><a href="#netbsdevbmipsinstall">NetBSD/evbmips</a> |
56 |
<li><a href="#netbsdsgimips">Running NetBSD/sgimips in GXemul</a> |
<li><a href="#netbsdsgimips">NetBSD/sgimips</a> |
57 |
--> |
<li><a href="#openbsdinstall">OpenBSD/pmax</a> |
58 |
<li><a href="#openbsdinstall">Installing OpenBSD/pmax in GXemul</a> |
<li><a href="#openbsdarcinstall">OpenBSD/arc</a> |
59 |
<li><a href="#openbsdarcinstall">Installing OpenBSD/arc in GXemul</a> |
<li><a href="#ultrixinstall">Ultrix/RISC</a> |
60 |
<!-- |
<li><a href="#sprite">Sprite for DECstation</a> |
61 |
<li><a href="#openbsdsgiinstall">Running OpenBSD/sgi in GXemul</a> |
<li><a href="#declinux">Debian GNU/Linux for DECstation</a> |
62 |
--> |
<li><a href="#declinuxredhat">Redhat Linux for DECstation</a> |
63 |
<li><a href="#ultrixinstall">Installing Ultrix/RISC in GXemul</a> |
</ul> |
64 |
<li><a href="#sprite">Running Sprite for DECstation in GXemul</a> |
|
65 |
<li><a href="#declinux">Installing Debian GNU/Linux for DECstation in GXemul</a> |
<p>In addition to the "working" guest operating systems listed above, |
66 |
<li><a href="#declinuxredhat">Running Redhat Linux for DECstation in GXemul</a> |
you might find the following information interesting: |
67 |
<li><a href="#mach">Running Mach/PMAX in GXemul</a> |
<ul> |
68 |
|
<li><a href="#mach">Mach/PMAX</a> |
69 |
|
<li><a href="#openbsdsgiinstall">OpenBSD/sgi</a> |
70 |
</ul> |
</ul> |
71 |
|
|
72 |
|
|
97 |
|
|
98 |
<p><br> |
<p><br> |
99 |
<a name="netbsdinstall"></a> |
<a name="netbsdinstall"></a> |
100 |
<h3>Installing NetBSD/pmax in GXemul:</h3> |
<h3>NetBSD/pmax:</h3> |
101 |
|
|
102 |
<p> |
<p> |
103 |
|
|
104 |
<a href="20050317-example.png"><img src="20050317-example_small.png"></a> |
<a href="20050317-example.png"><img src="20050317-example_small.png"></a> |
105 |
|
|
106 |
<p> |
<p>To install <a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a> |
107 |
To install NetBSD/pmax onto a harddisk image in the emulator, follow these |
onto a harddisk image in the emulator, follow these instructions: |
|
instructions: |
|
108 |
|
|
109 |
<p> |
<p><ol start="1"> |
|
<ol start="1"> |
|
110 |
<li>Create an empty harddisk image, which will be the root disk |
<li>Create an empty harddisk image, which will be the root disk |
111 |
that NetBSD installs itself onto:<pre> |
that NetBSD installs itself onto:<pre> |
112 |
$ <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=1 count=512 seek=1900000000</b> |
126 |
<li>Download a NetBSD CD-ROM iso image:<pre> |
<li>Download a NetBSD CD-ROM iso image:<pre> |
127 |
<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/iso/1.6.2/pmaxcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/1.6.2/pmaxcd.iso</a> |
128 |
or |
or |
129 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0/pmaxcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0/pmaxcd.iso</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/pmaxcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/pmaxcd.iso</a> |
130 |
|
|
131 |
</pre> |
</pre> |
132 |
<li>Start the emulator like this:<pre> |
<li>Start the emulator like this:<pre> |
133 |
$ <b>gxemul -X -b -E dec -e 3max -d nbsd_pmax.img -d bc:pmaxcd.iso</b> |
$ <b>gxemul -X -E dec -e 3max -d nbsd_pmax.img -d bc:pmaxcd.iso</b> |
134 |
</pre> |
</pre> |
135 |
|
and proceed like you would do if you were installing NetBSD on a real |
136 |
|
DECstation. |
137 |
</ol> |
</ol> |
138 |
<p> |
<p> |
139 |
For an ftp install, substitute steps 2 and 3 above with these: |
For an ftp install, substitute steps 2 and 3 above with these: |
140 |
<p> |
<p> |
141 |
<ol start="2"> |
<ol start="2"> |
142 |
|
|
143 |
<li>Download a NetBSD pmax INSTALL kernel, and gunzip it:<pre> |
<li>Download a NetBSD pmax INSTALL kernel:<pre> |
144 |
<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-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> |
145 |
or |
or |
146 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
|
|
|
|
$ <b>gunzip netbsd-INSTALL.gz</b> |
|
147 |
|
|
148 |
</pre> |
</pre> |
149 |
<li>Start the emulator like this:<pre> |
<li>Start the emulator like this:<pre> |
150 |
$ <b>gxemul -X -b -E dec -e 3max -d nbsd_pmax.img -O netbsd-INSTALL</b> |
$ <b>gxemul -X -E dec -e 3max -d nbsd_pmax.img -O netbsd-INSTALL.gz</b> |
151 |
</pre> |
</pre> |
152 |
</ol> |
and proceed like you would do if you were installing NetBSD on a real |
153 |
|
DECstation. Suitable networking parameters are as follows:<pre> |
|
<p> |
|
|
(If you don't want to use a graphical framebuffer during the install, |
|
|
you can remove <b>-X</b> from the command line, but then make sure you |
|
|
choose 'vt100' when prompted with which terminal type to use, and not |
|
|
'rcons'.) |
|
|
|
|
|
<p> |
|
|
Then proceed like you would do if you were installing NetBSD on a real |
|
|
DECstation. If you are installing from the network, then suitable networking |
|
|
parameters are as follows:<pre> |
|
154 |
Which device shall I use? [le0]: <b>le0</b> |
Which device shall I use? [le0]: <b>le0</b> |
155 |
.. |
.. |
156 |
Your DNS domain: <b>mydomain.com</b> |
Your DNS domain: <b>mydomain.com</b> |
160 |
IPv4 gateway: <b>10.0.0.254</b> |
IPv4 gateway: <b>10.0.0.254</b> |
161 |
IPv4 name server: <b>10.0.0.254</b> |
IPv4 name server: <b>10.0.0.254</b> |
162 |
</pre> |
</pre> |
163 |
|
(If using 10.0.0.254 as the nameserver fails, then try entering the |
164 |
|
IP number of a real-world nameserver instead.) |
165 |
|
</ol> |
166 |
|
|
167 |
<p> |
<p>(If you don't want to use a graphical framebuffer during the install, |
168 |
(If using 10.0.0.254 as the nameserver fails, then try entering the |
you can remove <b><tt>-X</tt></b> from the command line, but then make sure you |
169 |
IP number of a real-world nameserver instead.) |
choose "<tt>vt100</tt>" when prompted with which terminal type to use, and not |
170 |
|
"<tt>rcons</tt>". If you want to use X, but think that the default framebuffer |
171 |
|
window is too large, try adding <tt><b>-Y2</b></tt> to the command line.) |
172 |
|
|
173 |
<p> |
<p>When the installation is completed, the following command should start |
|
When the installation is completed, the following command should start |
|
174 |
NetBSD from the harddisk image:<pre> |
NetBSD from the harddisk image:<pre> |
175 |
$ <b>gxemul -X -b -M64 -E dec -e 3max -d nbsd_pmax.img</b> |
$ <b>gxemul -X -M64 -E dec -e 3max -d nbsd_pmax.img</b> |
176 |
</pre> |
</pre> |
177 |
|
|
178 |
<p> |
<p> |
179 |
Use <b>startx</b> to start X windows. |
Use <b>startx</b> to start X windows. |
180 |
|
|
181 |
<p> |
<p> |
182 |
<font color="#ff0000">NOTE:</font> For some reason, NetBSD 2.0 doesn't |
<font color="#ff0000">NOTE:</font> For some reason, NetBSD 2.0.2 doesn't |
183 |
work with X out-of-the-box on pmax. It seems that this has to do with a |
work with X out-of-the-box on pmax. It seems that this has to do with a |
184 |
switch to WSCONS. For now, if you want X, then try NetBSD 1.6.2. |
switch to WSCONS. For now, if you want X, then try NetBSD 1.6.2. |
185 |
|
|
186 |
<p> |
<p> |
187 |
If you want to run without the X framebuffer, use this instead:<pre> |
If you want to run without the X framebuffer, use this instead:<pre> |
188 |
$ <b>gxemul -E dec -e 3max -b -d nbsd_pmax.img</b> |
$ <b>gxemul -E dec -e 3max -d nbsd_pmax.img</b> |
189 |
</pre> |
</pre> |
190 |
|
|
191 |
|
|
196 |
|
|
197 |
<p><br> |
<p><br> |
198 |
<a name="netbsdarcinstall"></a> |
<a name="netbsdarcinstall"></a> |
199 |
<h3>Installing NetBSD/arc in GXemul:</h3> |
<h3>NetBSD/arc:</h3> |
200 |
|
|
201 |
It is possible to run NetBSD/arc on an emulated Acer PICA-61 in the emulator. |
It is possible to run <a |
202 |
|
href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a> |
203 |
|
on an emulated Acer PICA-61 in the emulator. |
204 |
|
|
205 |
<p> |
<p> |
206 |
|
|
222 |
|
|
223 |
</pre> |
</pre> |
224 |
<li>Start the emulator using this command line:<pre> |
<li>Start the emulator using this command line:<pre> |
225 |
$ <b>gxemul -E arc -e pica -x -b -d nbsd_arc.img -d bc:arccd.iso \ |
$ <b>gxemul -E arc -e pica -x -d nbsd_arc.img -d bc:arccd.iso \ |
226 |
-j arc/binary/kernel/netbsd.RAMDISK.gz</b> |
-j arc/binary/kernel/netbsd.RAMDISK.gz</b> |
227 |
|
|
228 |
</pre> |
</pre> |
248 |
$ <b>halt</b> |
$ <b>halt</b> |
249 |
|
|
250 |
</pre> |
</pre> |
251 |
<li>Download a generic NetBSD/arc kernel, |
<li>Download a generic NetBSD/arc kernel:<pre> |
|
and gunzip it:<pre> |
|
252 |
<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-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> |
253 |
|
|
254 |
</pre> |
</pre> |
255 |
</ol> |
</ol> |
256 |
|
|
257 |
<p> |
<p>You can now use the generic NetBSD/arc kernel to boot from the harddisk |
258 |
You can now use the generic NetBSD/arc kernel to boot from the harddisk |
image, using the following command:<pre> |
259 |
image, using the following command: |
$ <b>gxemul -E arc -e pica -x -d nbsd_arc.img netbsd-GENERIC.gz</b> |
|
<p> |
|
|
<pre> |
|
|
$ <b>gxemul -E arc -e pica -xb -d nbsd_arc.img netbsd-GENERIC</b> |
|
260 |
|
|
261 |
</pre> |
</pre> |
262 |
|
|
263 |
|
<p>When asked for "<tt>root device: </tt>", enter <b><tt>sd0</tt></b>. |
264 |
|
|
265 |
|
|
266 |
|
|
270 |
|
|
271 |
<p><br> |
<p><br> |
272 |
<a name="netbsdhpcmipsinstall"></a> |
<a name="netbsdhpcmipsinstall"></a> |
273 |
<h3>Installing NetBSD/hpcmips in GXemul:</h3> |
<h3>NetBSD/hpcmips:</h3> |
274 |
|
|
275 |
It is possible to install NetBSD/hpcmips onto a disk image, on an an |
It is possible to install <a |
276 |
emulated MobilePro 770, 780, 800, or 880. The emulator treats the |
href="http://www.netbsd.org/Ports/hpcmips/">NetBSD/hpcmips</a> onto a disk |
277 |
different machine models as being almost identical; the most important |
image, on an an emulated MobilePro 770, 780, 800, or 880. The emulator |
278 |
difference is regarding the framebuffer. |
treats the different machine models as being almost identical; the most |
279 |
|
important difference is regarding the framebuffer. |
280 |
|
|
281 |
<p> |
<p><table border="0"> |
|
<table border="0"> |
|
282 |
<tr> |
<tr> |
283 |
<td width="80"> </td> |
<td width="80"> </td> |
284 |
<td><u>Model:</u></td> |
<td><u>Model:</u></td> |
348 |
$ <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=1990000</b> |
349 |
|
|
350 |
</pre> |
</pre> |
351 |
<li>Download the NetBSD 2.0 for hpcmips ISO image:<pre> |
<li>Download the NetBSD 2.0.2 for hpcmips ISO image:<pre> |
352 |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0/">ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0</a>/<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0/hpcmipscd.iso">hpcmipscd.iso</a> |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2/">ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2</a>/<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2/hpcmipscd.iso">hpcmipscd.iso</a> |
353 |
|
|
354 |
</pre>(You may want to choose a mirror closer to you, if .se is slow.) |
</pre>(You may want to choose a mirror closer to you, if .se is slow.) |
355 |
<p> |
<p> |
356 |
<li>Start the installation like this:<pre> |
<li>Start the installation like this:<pre> |
357 |
$ <b>gxemul -E hpc -e mobilepro800 -b -X -d nbsd_hpcmips.img \ |
$ <b>gxemul -E hpc -e mobilepro800 -X -d nbsd_hpcmips.img \ |
358 |
-d b:hpcmipscd.iso -j hpcmips/installation/netbsd.gz</b> |
-d b:hpcmipscd.iso -j hpcmips/installation/netbsd.gz</b> |
359 |
|
|
360 |
</pre> |
</pre> |
368 |
If everything worked, NetBSD should now be installed on the disk image. |
If everything worked, NetBSD should now be installed on the disk image. |
369 |
GXemul does not (yet) support reading the kernel directly from the |
GXemul does not (yet) support reading the kernel directly from the |
370 |
disk image, so you need to download a generic kernel separately:<pre> |
disk image, so you need to download a generic kernel separately:<pre> |
371 |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel/netbsd-GENERIC.gz">netbsd-GENERIC.gz</a> |
<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/hpcmips/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/hpcmips/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/hpcmips/binary/kernel/netbsd-GENERIC.gz">netbsd-GENERIC.gz</a> |
372 |
|
|
373 |
</pre> |
</pre> |
374 |
|
|
375 |
<p> |
<p>The installation is now complete. Use the following command line to |
376 |
Once you have gunziped the generic kernel, you can now use it to boot from |
boot the emulated hpcmips machine:<pre> |
377 |
the harddisk image, using the following command:<pre> |
$ <b>gxemul -E hpc -e mobilepro800 -X -d nbsd_hpcmips.img netbsd-GENERIC.gz</b> |
|
$ <b>gxemul -E hpc -e mobilepro800 -b -X -d nbsd_hpcmips.img netbsd-GENERIC</b> |
|
378 |
|
|
379 |
</pre> |
</pre> |
380 |
|
|
381 |
<p> |
<p>If you change your mind at this point regarding which machine type to |
382 |
When you have logged in as root, you can use <b>startx</b> to start X |
emulate, you might for example prefer a MobilePro 770, then you can change |
383 |
Windows. (Note: There is no mouse support yet; you can only use |
that at any time. NetBSD is designed to be able to boot on many types, |
384 |
|
without any need to change the kernel. |
385 |
|
|
386 |
|
<p>When you have logged in as root, you can use <b><tt>startx</tt></b> to |
387 |
|
start X Windows. (Note: There is no mouse support yet; you can only use |
388 |
keyboard input.) |
keyboard input.) |
389 |
|
|
390 |
|
|
396 |
|
|
397 |
<p><br> |
<p><br> |
398 |
<a name="netbsdcobaltinstall"></a> |
<a name="netbsdcobaltinstall"></a> |
399 |
<h3>Installing NetBSD/cobalt in GXemul:</h3> |
<h3>NetBSD/cobalt:</h3> |
400 |
|
|
401 |
<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 |
402 |
to install, because the Cobalt machines were designed for Linux, and not |
to install, because the Cobalt machines were designed for Linux, and not |
419 |
$ <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=1999000</b> |
420 |
|
|
421 |
</pre> |
</pre> |
422 |
<li>Download the generic kernel for Cobalt (and gunzip it) and |
<li>Download the generic kernel for Cobalt and the 2.0.2 ISO image:<pre> |
423 |
the 2.0 ISO image:<pre> |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cobalt/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.se.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cobalt/binary/kernel/netbsd-GENERIC.gz</a> |
424 |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/NetBSD-2.0/cobalt/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.se.netbsd.org/pub/NetBSD/NetBSD-2.0/cobalt/binary/kernel/netbsd-GENERIC.gz</a> |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2/cobaltcd.iso">ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2/cobaltcd.iso</a> |
|
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0/cobaltcd.iso">ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0/cobaltcd.iso</a> |
|
425 |
|
|
426 |
</pre>(You may want to choose a mirror closer to you, if .se is slow.) |
</pre>(You may want to choose a mirror closer to you, if .se is slow.) |
427 |
<p> |
<p> |
428 |
<li>Install NetBSD/pmax 2.0 according to instructions further up |
<li>Install NetBSD/pmax 2.0.2 according to instructions |
429 |
on this page. |
<a href="#netbsdinstall">further up on this page</a>. |
430 |
<p> |
<p> |
431 |
<li>Start NetBSD/pmax like this:<pre> |
<li>Start NetBSD/pmax like this:<pre> |
432 |
$ <b>gxemul -b -Edec -e3max -d nbsd_pmax.img -d cobaltcd.iso -d nbsd_cobalt.img</b> |
$ <b>gxemul -Edec -e3max -d nbsd_pmax.img -d cobaltcd.iso -d nbsd_cobalt.img</b> |
433 |
|
|
434 |
</pre> |
</pre> |
435 |
<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 |
436 |
following commands: (adjust according to taste)<pre> |
following commands: (adjust according to taste)<pre> |
437 |
# <b>newfs /dev/sd1c</b> |
<b>newfs /dev/sd1c</b> |
438 |
# <b>mount /dev/cd0c /mnt</b> |
<b>mount /dev/cd0c /mnt</b> |
439 |
# <b>mkdir /mnt2; mount /dev/sd1c /mnt2</b> |
<b>mkdir /mnt2; mount /dev/sd1c /mnt2</b> |
440 |
# <b>cd /mnt2; sh</b> |
<b>cd /mnt2; sh</b> |
441 |
# <b>for a in /mnt/cobalt/binary/sets/*.tgz; do echo $a; tar zxfp $a; done</b> |
<b>for a in /mnt/cobalt/binary/sets/*.tgz; do echo $a; tar zxfp $a; done</b> |
442 |
# <b>exit</b> |
<b>exit</b> |
443 |
# <b>cd dev; sh ./MAKEDEV all; cd ../etc</b> |
<b>cd dev; sh ./MAKEDEV all; cd ../etc</b> |
444 |
# <b>echo rc_configured=YES >> rc.conf</b> |
<b>echo rc_configured=YES >> rc.conf</b> |
445 |
# <b>echo "/dev/wd0d / ffs rw 1 1" > fstab</b> |
<b>echo "/dev/wd0d / ffs rw 1 1" > fstab</b> |
446 |
# <b>cd /; umount /mnt; umount /mnt2; halt</b> |
<b>cd /; umount /mnt; umount /mnt2; halt</b> |
447 |
</pre> |
</pre> |
448 |
</ol> |
</ol> |
449 |
|
|
450 |
<p> |
<p> |
451 |
You should now be able to boot NetBSD/cobalt like this:<pre> |
You should now be able to boot NetBSD/cobalt like this:<pre> |
452 |
$ <b>gxemul -b -M128 -E cobalt -d nbsd_cobalt.img netbsd-GENERIC</b> |
$ <b>gxemul -M128 -E cobalt -d nbsd_cobalt.img netbsd-GENERIC.gz</b> |
453 |
</pre> |
</pre> |
454 |
|
|
455 |
Note that the installation instructions above create a filesystem |
Note that the installation instructions above create a filesystem |
468 |
|
|
469 |
|
|
470 |
|
|
|
<!-- |
|
|
|
|
471 |
<p><br> |
<p><br> |
472 |
<a name="netbsdsgimips"></a> |
<a name="netbsdevbmipsinstall"></a> |
473 |
<h3>Running NetBSD/sgimips in GXemul:</h3> |
<h3>NetBSD/evbmips:</h3> |
474 |
|
|
475 |
<a href="http://www.netbsd.org/Ports/sgimips/">NetBSD/sgimips</a> |
<a href="http://www.netbsd.org/Ports/evbmips/">NetBSD/evbmips</a> can run |
476 |
can theoretically run in GXemul on an emulated O2 (SGI-IP32) with root on nfs. |
in GXemul on an emulated Malta evaluation board (with a 5Kc or 4Kc CPU). |
477 |
|
|
478 |
<p> |
<p> |
479 |
<font color="#ff0000">NOTE: I haven't succeeded with this yet.</font> |
|
480 |
|
<a href="20050622-netbsd-evbmips-malta.png"><img src="20050622-netbsd-evbmips-malta_small.png"></a> |
481 |
|
|
482 |
|
<p>It is tricky to install, because there is (as far as I know) no INSTALL |
483 |
|
kernel. One way to install the NetBSD/evbmips distribution onto a disk |
484 |
|
image is to install the files is to do it using another (emulated) |
485 |
|
machine. |
486 |
|
|
487 |
<p> |
<p> |
488 |
See the section on <a href="#openbsdsgiinstall">how to run OpenBSD/sgi</a> |
The following instructions will let you install NetBSD/evbmips onto a disk |
489 |
for more information. |
image, from an emulated DECstation 3MAX machine: |
490 |
|
|
491 |
<p> |
<p> |
492 |
TODO... |
<ol> |
493 |
|
<li>Create an empty harddisk image, which will be the disk image |
494 |
|
that you will install NetBSD onto:<pre> |
495 |
|
$ <b>dd if=/dev/zero of=nbsd_malta.img bs=1024 count=1 seek=999000</b> |
496 |
|
|
497 |
<pre> |
</pre> |
498 |
cd /tftpboot; ftp -i ftp.se.netbsd.org |
<li>Download the generic kernel and the 2.0.2 ISO image:<pre> |
499 |
.. |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipsel/binary/kernel/netbsd-MALTA.gz">ftp://ftp.se.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipsel/binary/kernel/netbsd-MALTA.gz</a> |
500 |
cd pub/NetBSD/NetBSD-2.0/sgimips/binary/sets |
<a href="ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2/evbmips-mipselcd.iso">ftp://ftp.se.netbsd.org/pub/NetBSD/iso/2.0.2/evbmips-mipselcd.iso</a> |
501 |
mget *.tgz |
|
502 |
exit |
</pre>(You may want to choose a mirror closer to you, if .se is slow.) |
503 |
|
<p> |
504 |
|
<li>Install NetBSD/pmax 2.0.2 according to instructions |
505 |
|
<a href="#netbsdinstall">further up on this page</a>. |
506 |
|
<p> |
507 |
|
<li>Start NetBSD/pmax like this:<pre> |
508 |
|
$ <b>gxemul -Edec -e3max -d nbsd_pmax.img -d nbsd_malta.img -d evbmips-mipselcd.iso</b> |
509 |
|
|
510 |
|
</pre> |
511 |
|
<li>Log in as root (on the emulated 3MAX machine), and execute the |
512 |
|
following commands: (adjust according to taste)<pre> |
513 |
|
<b>newfs /dev/sd1c</b> |
514 |
|
<b>mount /dev/cd0c /mnt</b> |
515 |
|
<b>mkdir /mnt2; mount /dev/sd1c /mnt2</b> |
516 |
|
<b>cd /mnt2; sh</b> |
517 |
|
<b>for a in /mnt/evbmips-mipsel/binary/sets/*.tgz; do echo $a; tar zxfp $a; done</b> |
518 |
|
<b>exit</b> |
519 |
|
<b>cd dev; sh ./MAKEDEV all; cd ../etc</b> |
520 |
|
<b>echo rc_configured=YES >> rc.conf</b> |
521 |
|
<b>echo "/dev/wd0c / ffs rw 1 1" > fstab</b> |
522 |
|
<b>cd /; umount /mnt; umount /mnt2; halt</b> |
523 |
|
</pre> |
524 |
|
</ol> |
525 |
|
|
526 |
|
<p>You should now be able to boot NetBSD/evbmips like this:<pre> |
527 |
|
$ <b>gxemul -Eevbmips -emalta -d nbsd_malta.img netbsd-MALTA.gz</b> |
528 |
|
</pre> |
529 |
|
|
530 |
|
<p>Note 1: NetBSD detects a very fast CPU although the emulation isn't |
531 |
|
really very fast, so delays take very long. Even on a multi-GHz host, you |
532 |
|
will need a lot of patience. |
533 |
|
|
534 |
|
<p>Note 2: To select a 4Kc (MIPS32) CPU instead of the default 5Kc |
535 |
|
(MIPS64) CPU, add <tt><b>-C 4Kc</b></tt> to the command line. With NetBSD |
536 |
|
2.0.2, however, there will be little or no difference in functionality. |
537 |
|
(NetBSD still runs in 32-bit mode on 64-bit MIPS CPUs.) |
538 |
|
|
539 |
|
<p>Note 3: The installation instructions above create a filesystem |
540 |
|
<i>without</i> a disklabel, so there is only one ffs partition and no |
541 |
|
swap. You will need to enter the following things when booting with the |
542 |
|
generic kernel:<pre> |
543 |
|
root device (default wd0a): <b>wd0c</b> |
544 |
|
dump device (default wd0b): <b>none</b> |
545 |
|
file system (default generic): <b>ffs</b> |
546 |
|
init path (default /sbin/init): <i>(just press enter here)</i> |
547 |
|
</pre> |
548 |
|
|
549 |
|
|
550 |
|
|
551 |
|
|
552 |
|
|
553 |
|
|
554 |
|
|
555 |
|
<p><br> |
556 |
|
<a name="netbsdsgimips"></a> |
557 |
|
<h3>NetBSD/sgimips:</h3> |
558 |
|
|
559 |
|
<p> |
560 |
|
|
561 |
|
<a href="20050626-netbsd-sgimips-netboot.png"><img src="20050626-netbsd-sgimips-netboot_small.png"></a> |
562 |
|
|
563 |
|
<p><a href="http://www.netbsd.org/Ports/sgimips/">NetBSD/sgimips</a> can run |
564 |
|
in GXemul on an emulated O2 (SGI-IP32). However, GXemul does not yet |
565 |
|
emulate the AHC PCI SCSI controller in the O2. (I have mailed Adaptec |
566 |
|
several times, asking for documentation, but never received any reply.) |
567 |
|
NetBSD can still run, as long as it doesn't use SCSI. |
568 |
|
|
569 |
|
<p>For a simple test with the 2.0.2 ramdisk (install) kernel, try |
570 |
|
dowloading<pre> |
571 |
|
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.0.2/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.0.2/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
572 |
|
|
573 |
|
</pre>and run <b><tt>gxemul -E sgi -e o2 netbsd-INSTALL32_IP3x.gz</tt></b>. |
574 |
|
|
575 |
|
<p>It is possible to set up an environment for netbooting the emulated SGI |
576 |
|
machine off of another emulated machine. Performing this setup is quite |
577 |
|
time consuming, but necessary: |
578 |
|
|
579 |
|
<p> |
580 |
|
<ol> |
581 |
|
<li>First of all, the "<tt>nfs server</tt>" machine must be set up. |
582 |
|
This needs to have a 750 MB <tt>/tftpboot</tt> partition. |
583 |
|
<a href="#netbsdinstall">Install NetBSD/pmax 2.0.2 from CDROM</a> |
584 |
|
inside the emulator. (Don't forget to add the extra partition!) |
585 |
|
<p> |
586 |
|
<li>Configure the nfs server machine to act as an nfs server. |
587 |
|
Start up the emulated DECstation:<pre> |
588 |
|
$ <b>gxemul -M64 -Edec -e3max -d nbsd_pmax.img</b> |
589 |
|
</pre>and enter the following commands as <tt>root</tt> |
590 |
|
inside the emulator: |
591 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
592 |
|
<b>echo hostname=server >> /etc/rc.conf |
593 |
|
echo ifconfig_le0=\"inet 10.0.0.2\" >> /etc/rc.conf |
594 |
|
echo nameserver 10.0.0.254 >> /etc/resolv.conf |
595 |
|
echo 10.0.0.254 > /etc/mygate |
596 |
|
echo /tftpboot -maproot=root 10.0.0.1 > /etc/exports |
597 |
|
echo rpcbind=YES >> /etc/rc.conf |
598 |
|
echo nfs_server=YES >> /etc/rc.conf |
599 |
|
echo mountd=YES >> /etc/rc.conf |
600 |
|
echo bootparamd=YES >> /etc/rc.conf |
601 |
|
printf "client root=10.0.0.2:/tftpboot \\\n swap=10.0.0.2:/tftpboot/swap\n" > /etc/bootparams |
602 |
|
echo "bootps dgram udp wait root /usr/sbin/bootpd bootpd -d 4 -h 10.0.0.2" >> /etc/inetd.conf |
603 |
|
cat >> /etc/bootptab |
604 |
|
client:\ |
605 |
|
:ht=ether:\ |
606 |
|
:ha=102030000010:\ |
607 |
|
:sm=255.0.0.0:\ |
608 |
|
:lg=10.0.0.254:\ |
609 |
|
:ip=10.0.0.1:\ |
610 |
|
:rp=/tftpboot: |
611 |
|
</b>(press CTRL-D) |
612 |
|
<b>echo "10:20:30:00:00:10 client" > /etc/ethers |
613 |
|
echo 10.0.0.1 client > /etc/hosts |
614 |
|
reboot</b> |
615 |
|
</pre></td></tr></table> |
616 |
|
<li>Start the DECstation emulation again, and download the |
617 |
|
NetBSD/sgimips distribution sets:<br>(NOTE: This |
618 |
|
takes quite some time, even if you have a fast network connection.) |
619 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
620 |
|
<b>cd /tftpboot; ftp -i ftp.se.netbsd.org</b> |
621 |
|
(log in as anonymous...) |
622 |
|
<b>cd /pub/NetBSD/NetBSD-2.0.2/sgimips/binary/sets |
623 |
|
mget base.tgz comp.tgz etc.tgz games.tgz man.tgz misc.tgz text.tgz |
624 |
|
quit |
625 |
sh |
sh |
626 |
for a in etc.tgz base.tgz comp.tgz; do tar zxvfp $a; done |
for a in *.tgz; do echo $a; tar zxfp $a; done |
627 |
|
echo 10.0.0.2:/tftpboot / nfs rw 0 0 > /tftpboot/etc/fstab |
628 |
|
echo rc_configured=YES >> /tftpboot/etc/rc.conf |
629 |
|
dd if=/dev/zero of=swap bs=1024 count=32768 |
630 |
|
halt</b> |
631 |
|
</pre></td></tr></table> |
632 |
|
<li>Download the NetBSD/sgimips GENERIC and INSTALL kernels:<pre> |
633 |
|
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.0.2/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.0.2/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz</a> |
634 |
|
<a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.0.2/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-2.0.2/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
635 |
|
|
636 |
|
</pre> |
637 |
|
<li>Create a configuration file called <tt>config_client</tt>: |
638 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
639 |
|
<font color="#2020cf">!!gxemul |
640 |
|
! |
641 |
|
! Configuration file for running NetBSD/sgimips diskless with |
642 |
|
! a NetBSD/pmax machine as the nfs server.</font> |
643 |
|
|
644 |
|
<b>emul( |
645 |
|
net( |
646 |
|
add_remote("127.0.0.1:12444") </b>! the server<b> |
647 |
|
local_port(12445) </b>! the client<b> |
648 |
|
) |
649 |
|
|
650 |
|
machine( |
651 |
|
name("client machine") |
652 |
|
serial_nr(1) |
653 |
|
|
654 |
|
type("sgi") |
655 |
|
subtype("o2") |
656 |
|
|
657 |
|
load("netbsd-INSTALL32_IP3x.gz")</b> |
658 |
|
! load("netbsd-GENERIC32_IP3x.gz")<b> |
659 |
|
) |
660 |
|
)</b> |
661 |
|
</pre></td></tr></table> |
662 |
|
... and another configuration file for the server, |
663 |
|
<tt>config_server</tt>: |
664 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
665 |
|
<font color="#2020cf">!!gxemul</font> |
666 |
|
<b>emul( |
667 |
|
net( |
668 |
|
local_port(12444) </b>! the server<b> |
669 |
|
add_remote("127.0.0.1:12445") </b>! the client<b> |
670 |
|
) |
671 |
|
|
672 |
|
machine( |
673 |
|
name("nfs server") |
674 |
|
serial_nr(2) |
675 |
|
|
676 |
|
type("dec") |
677 |
|
subtype("5000/200") |
678 |
|
|
679 |
|
disk("nbsd_pmax.img") |
680 |
|
) |
681 |
|
)</b> |
682 |
|
</pre></td></tr></table> |
683 |
|
<li>Boot the "<tt>nfs server</tt>" and the NetBSD/sgimips |
684 |
|
"<tt>client machine</tt>" as two separate emulator instances:<pre> |
685 |
|
in one xterm: |
686 |
|
$ <b>gxemul @config_server</b> |
687 |
|
|
688 |
|
and then, in another xterm: |
689 |
|
$ <b>gxemul @config_client</b> |
690 |
|
|
691 |
|
</pre> |
692 |
|
<li>In the NetBSD/sgimips window, choose "<tt>x: Exit Install System</tt>" |
693 |
|
in the installer's main menu, and then type:<pre> |
694 |
|
<b>ifconfig mec0 10.0.0.1; route add default 10.0.0.254</b> |
695 |
|
<b>mount -v 10.0.0.2:/tftpboot /mnt</b> |
696 |
|
<b>cd /mnt/dev; ./MAKEDEV all; cd /; umount /mnt</b> |
697 |
|
<b>halt</b> |
698 |
|
</pre>Then log in as <tt>root</tt> on the server machine and type |
699 |
|
<tt><b>reboot</b></tt>. |
700 |
|
<p> |
701 |
|
<li>Once everything has been set up correctly, change |
702 |
|
<tt>netbsd-INSTALL32_IP3x.gz</tt> in <tt>config_client</tt> to |
703 |
|
<tt>netbsd-GENERIC32_IP3x.gz</tt> (the GENERIC kernel). |
704 |
|
</ol> |
705 |
|
|
706 |
|
<p>You might want to log in as <tt>root</tt> on the server machine, and |
707 |
|
run <tt>tcpdump -lnvv</tt> or similar, to see that what the client machine |
708 |
|
actually does on the network. |
709 |
|
|
710 |
|
<p>It should now be possible to boot NetBSD/sgimips using the NetBSD/pmax |
711 |
|
nfs server, using the following commands: (NOTE! Execute these in two |
712 |
|
separate xterms!)<pre> |
713 |
|
$ <b>gxemul @config_server</b> |
714 |
|
$ <b>gxemul @config_client</b> |
715 |
|
</pre> |
716 |
|
|
717 |
|
<p>When asked for "<tt>root device:</tt>" etc. on the clientmachine, enter |
718 |
|
the following values:<pre> |
719 |
|
root device: <b>mec0</b> |
720 |
|
dump device: <b>(leave blank)</b> |
721 |
|
file system (default generic): <b>(leave blank)</b> |
722 |
|
.. |
723 |
|
init path (default /sbin/init): <b>(leave blank)</b> |
724 |
|
Enter pathname of shell or RETURN for /bin/sh: <b>(leave blank)</b> |
725 |
|
Terminal type? [unknown] <b>xterm</b> |
726 |
|
.. |
727 |
|
# <b>exit</b> (to leave the single-user shell) |
728 |
</pre> |
</pre> |
729 |
|
|
730 |
--> |
<p>Note: Netbooting like this is very slow, so you need a lot of patience. |
731 |
|
For example, when NetBSD says "<tt>nfs_boot: trying DHCP/BOOTP</tt>", |
732 |
|
there will be a long pause, even on a very fast host machine. The reason |
733 |
|
for this is mostly because the emulator doesn't deal with timing issues |
734 |
|
very well, but also because NetBSD tries IPv6 first, before falling back |
735 |
|
to IPv4. |
736 |
|
|
737 |
|
|
738 |
|
|
742 |
|
|
743 |
<p><br> |
<p><br> |
744 |
<a name="openbsdinstall"></a> |
<a name="openbsdinstall"></a> |
745 |
<h3>Installing OpenBSD/pmax in GXemul:</h3> |
<h3>OpenBSD/pmax:</h3> |
746 |
|
|
747 |
Installing OpenBSD/pmax is a bit harder than installing NetBSD/pmax. |
Installing <a href="http://www.openbsd.org/pmax.html">OpenBSD/pmax</a> is |
748 |
You should first read the section above on how to install NetBSD/pmax, |
a bit harder than installing NetBSD/pmax. You should first read the <a |
749 |
|
href="#netbsdinstall">section above</a> on how to install NetBSD/pmax, |
750 |
before continuing here. If you have never installed OpenBSD on any |
before continuing here. If you have never installed OpenBSD on any |
751 |
architecture, then you need a great deal of patience to do this. |
architecture, then you need a great deal of patience to do this. If, on |
752 |
If, on the other hand you are used to installing OpenBSD, then |
the other hand you are used to installing OpenBSD, then this should be no |
753 |
this should be no problem for you. |
problem for you. |
754 |
|
|
755 |
<p> |
<p> |
756 |
|
|
786 |
|
|
787 |
</pre> |
</pre> |
788 |
<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. |
789 |
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 |
790 |
already have <tt>mkisofs</tt> installed on your system, you need |
already have <tt>mkisofs</tt> installed on your system, you need |
791 |
to install it in order to do this.<pre> |
to install it in order to do this.)<pre> |
792 |
$ <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> |
793 |
|
|
794 |
</pre> |
</pre> |
795 |
<li>Start the emulator with all three (!) disk images:<pre> |
<li>Start the emulator with all three (!) disk images:<pre> |
796 |
$ <b>gxemul -E dec -e 3max -b -d obsd_pmax.img -d b:simpleroot28.fs -j bsd -d c:openbsd_pmax_2.8.iso</b> |
$ <b>gxemul -E dec -e 3max -d obsd_pmax.img -d b:simpleroot28.fs -j bsd -d c:openbsd_pmax_2.8.iso</b> |
797 |
|
|
798 |
</pre> |
</pre> |
799 |
(If you add <tt><b>-X</b></tt>, you will run with the graphical |
(If you add <tt><b>-X</b></tt>, you will run with the graphical |
824 |
the directory containing the install sets. |
the directory containing the install sets. |
825 |
</ul> |
</ul> |
826 |
<p> |
<p> |
827 |
<li> |
<li>For some unknown reason, the install script does not set the root |
828 |
For some unknown reason, the install script does not set the root |
password! The first time you boot up OpenBSD after the install, you |
829 |
password! The first time you boot up OpenBSD after the install, you |
need to go into single user mode and run <b>passwd root</b> to set |
830 |
need to go into single user mode and run <b>passwd root</b> to set |
the root password, or you will not be able to log in at all!<pre> |
831 |
the root password, or you will not be able to log in at all! |
$ <b>gxemul -E dec -e 3max -d obsd_pmax.img -d 2c:openbsd_pmax_2.8.iso -j bsd -o '-s'</b> |
|
<pre> |
|
|
$ <b>gxemul -E dec -e 3max -b -d obsd_pmax.img -d 2c:openbsd_pmax_2.8.iso -j bsd -o '-s'</b> |
|
832 |
</pre> |
</pre> |
833 |
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 |
834 |
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 |
836 |
<p> |
<p> |
837 |
Execute the following commands in the emulator: |
Execute the following commands in the emulator: |
838 |
<pre> |
<pre> |
839 |
# <b>fsck /dev/rz0a</b> |
<b>fsck /dev/rz0a</b> |
840 |
# <b>mount /</b> |
<b>mount /</b> |
841 |
# <b>passwd root</b> |
<b>passwd root</b> |
842 |
|
|
843 |
# <b>cd /; mount -t cd9660 /dev/rz2c /mnt; sh</b> |
<b>cd /; mount -t cd9660 /dev/rz2c /mnt; sh</b> |
844 |
# <b>for a in /mnt/[xX]*; do tar zxvf $a; done</b> |
<b>for a in /mnt/[xX]*; do tar zxvf $a; done</b> |
845 |
# <b>ln -s /usr/X11R6/bin/Xcfbpmax /usr/X11R6/bin/X</b> |
<b>ln -s /usr/X11R6/bin/Xcfbpmax /usr/X11R6/bin/X</b> |
846 |
# <b>ln -s /dev/fb0 /dev/mouse</b> |
<b>ln -s /dev/fb0 /dev/mouse</b> |
847 |
# <b>echo /usr/X11R6/lib >> /etc/ld.so.conf</b> |
<b>echo /usr/X11R6/lib >> /etc/ld.so.conf</b> |
848 |
# <b>ldconfig</b> |
<b>ldconfig</b> |
849 |
|
|
850 |
# <b>sync</b> |
<b>sync</b> |
851 |
# <b>halt</b> |
<b>halt</b> |
852 |
</pre> |
</pre> |
853 |
</ol> |
</ol> |
854 |
|
|
862 |
Once you have completed the installation procedure, the following command |
Once you have completed the installation procedure, the following command |
863 |
will let you boot from the new rootdisk image: |
will let you boot from the new rootdisk image: |
864 |
<pre> |
<pre> |
865 |
$ <b>gxemul -E dec -e 3max -b -X -M64 -o '-aN' -d obsd_pmax.img -j bsd</b> |
$ <b>gxemul -E dec -e 3max -X -M64 -o '-aN' -d obsd_pmax.img -j bsd</b> |
866 |
</pre> |
</pre> |
867 |
|
|
868 |
<p> |
<p> |
880 |
|
|
881 |
|
|
882 |
|
|
883 |
|
|
884 |
<p><br> |
<p><br> |
885 |
<a name="openbsdarcinstall"></a> |
<a name="openbsdarcinstall"></a> |
886 |
<h3>Installing OpenBSD/arc in GXemul:</h3> |
<h3>OpenBSD/arc:</h3> |
887 |
|
|
888 |
It is possible to run OpenBSD/arc on an emulated Acer PICA-61 in the |
It is possible to run OpenBSD/arc on an emulated Acer PICA-61 in the |
889 |
emulator. |
emulator. |
916 |
</pre> |
</pre> |
917 |
|
|
918 |
<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. |
919 |
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 |
920 |
already have <tt>mkisofs</tt> installed on your system, you need |
already have <tt>mkisofs</tt> installed on your system, you need |
921 |
to install it in order to do this.<pre> |
to install it in order to do this.)<pre> |
922 |
$ <b>mkisofs -o openbsd_arc_2.3.iso ftp.se.openbsd.org/pub/OpenBSD/</b> |
$ <b>mkisofs -o openbsd_arc_2.3.iso ftp.se.openbsd.org/pub/OpenBSD/</b> |
923 |
|
|
924 |
</pre> |
</pre> |
925 |
<li>Start the emulator using this command line:<pre> |
<li>Start the emulator using this command line:<pre> |
926 |
$ <b>gxemul -X -b -E arc -e pica -d obsd_arc.img -d b:openbsd_arc_2.3.iso -j 2.3/arc/bsd.rd</b> |
$ <b>gxemul -X -E arc -e pica -d obsd_arc.img -d b:openbsd_arc_2.3.iso -j 2.3/arc/bsd.rd</b> |
927 |
|
|
928 |
</pre> |
</pre> |
929 |
and proceed like you would do if you were installing OpenBSD |
and proceed like you would do if you were installing OpenBSD |
936 |
boot from the harddisk image: |
boot from the harddisk image: |
937 |
<p> |
<p> |
938 |
<pre> |
<pre> |
939 |
$ <b>gxemul -X -b -E arc -e pica -d obsd_arc.img ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd</b> |
$ <b>gxemul -X -E arc -e pica -d obsd_arc.img ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd</b> |
940 |
|
|
941 |
</pre> |
</pre> |
942 |
|
|
944 |
|
|
945 |
|
|
946 |
|
|
|
<!-- |
|
|
|
|
|
<p><br> |
|
|
<a name="openbsdsgiinstall"></a> |
|
|
<h3>Running OpenBSD/sgi in GXemul:</h3> |
|
|
|
|
|
<a href="http://www.openbsd.org/sgi.html">OpenBSD/sgi</a> |
|
|
can theoretically run in GXemul on an emulated O2 (SGI-IP32) with root on nfs. |
|
|
|
|
|
<p> |
|
|
<font color="#ff0000">NOTE: I haven't succeeded with this yet.</font> |
|
|
|
|
|
<p> |
|
|
GXemul does not yet emulate the AHC PCI SCSI controller in the O2, so |
|
|
another emulated machine must be used as the nfs root server, and the |
|
|
emulated O2 machine must boot as a |
|
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=diskless&manpath=OpenBSD+Current&format=html">diskless</a> |
|
|
client. Performing this setup is very time consuming, but necessary. |
|
|
|
|
|
<p> |
|
|
<ol> |
|
|
<li><a href="#netbsdinstall">Install NetBSD/pmax 2.0 from CDROM</a> |
|
|
(or install some other similar OS) inside the emulator. This will |
|
|
be the "nfs server" machine. Create a 600 MB <tt>/tftpboot</tt> |
|
|
partition during the installation. |
|
|
<p> |
|
|
<li>Configure the nfs server machine to act as an nfs server.<pre> |
|
|
# <b>echo hostname=server >> /etc/rc.conf</b> |
|
|
# <b>echo ifconfig_le0=\"inet 10.0.0.2\" >> /etc/rc.conf</b> |
|
|
# <b>echo nameserver 10.0.0.254 >> /etc/rc.conf</b> |
|
|
# <b>echo 10.0.0.254 > /etc/mygate</b> |
|
|
# <b>echo /tftpboot -maproot=root 10.0.0.1 > /etc/exports</b> |
|
|
# <b>echo rpcbind=YES >> /etc/rc.conf</b> |
|
|
# <b>echo nfs_server=YES >> /etc/rc.conf</b> |
|
|
# <b>echo mountd=YES >> /etc/rc.conf</b> |
|
|
# <b>echo bootparamd=YES >> /etc/rc.conf</b> |
|
|
# <b>printf "client root=10.0.0.2:/tftpboot \\\n swap=10.0.0.2:/tftpboot/swap\n" > /etc/bootparams</b> |
|
|
# <b>echo 10.0.0.1 client > /etc/hosts</b> |
|
|
|
|
|
Reboot. Then download the OpenBSD/sgi distribution: (NOTE: This |
|
|
takes quite some time, even if you have a fast network connection.) |
|
|
|
|
|
# <b>cd /tftpboot; ftp -i ftp.se.openbsd.org</b> |
|
|
... |
|
|
<b>cd pub/OpenBSD/3.7/sgi</b> |
|
|
<b>mget *</b> |
|
|
|
|
|
# <b>sh</b> |
|
|
# <b>for a in base* etc* misc*; do tar vzxfp $a; done</b> |
|
|
# <b>dd if=/dev/zero of=swap bs=1024 count=16384</b> |
|
|
|
|
|
</pre> |
|
|
<p> |
|
|
<li>Create a configuration file along these lines:<pre> |
|
|
<font color="#2020cf">!!gxemul |
|
|
! |
|
|
! Configuration file for running OpenBSD/sgi diskless with |
|
|
! a NetBSD/pmax machine as the nfs server. |
|
|
! |
|
|
! Change the filenames to suit your setup.</font> |
|
|
|
|
|
<b>emul( |
|
|
net() |
|
|
|
|
|
machine( |
|
|
name("client machine") |
|
|
type("sgi") |
|
|
subtype("ip32") |
|
|
bintrans(yes) |
|
|
load("openbsd-sgi-20050202-bsd") |
|
|
start_paused(yes) |
|
|
) |
|
|
|
|
|
machine( |
|
|
name("nfs server") |
|
|
type("dec") |
|
|
subtype("5000/200") |
|
|
bintrans(yes) |
|
|
disk("nbsd_pmax.img") |
|
|
) |
|
|
)</b> |
|
|
|
|
|
</pre> |
|
|
<li>Boot the nfs server and the OpenBSD/sgi client machine like this:<pre> |
|
|
$ <b>gxemul @myconf</b> |
|
|
|
|
|
</pre> |
|
|
You might want to log in as root on the server machine, and |
|
|
run <b>tcpdump -lnvv</b> or similar, to see that what the client |
|
|
machine actually does on the network. |
|
|
<p> |
|
|
The OpenBSD box ("client machine") will be paused, so when you |
|
|
are ready to unpause it, press CTRL-C in the main GXemul |
|
|
window and use the <b>focus</b> and <b>pause</b> commands to |
|
|
unpause the main CPU in that machine, and then <b>continue</b> |
|
|
to resume execution. |
|
|
<p> |
|
|
When asked for "root device :", enter <b>mec0</b>. |
|
|
</ol> |
|
|
|
|
|
<p> |
|
|
TODO... |
|
|
|
|
|
--> |
|
|
|
|
|
|
|
|
|
|
947 |
|
|
948 |
|
|
949 |
<p><br> |
<p><br> |
950 |
<a name="ultrixinstall"></a> |
<a name="ultrixinstall"></a> |
951 |
<h3>Installing Ultrix/RISC in GXemul:</h3> |
<h3>Ultrix/RISC:</h3> |
952 |
|
|
953 |
Ultrix 4.x can run in GXemul on an emulated DECstation 5000/200. |
Ultrix 4.x can run in GXemul on an emulated DECstation 5000/200. |
954 |
|
(Ultrix was the native OS for these machines, but NetBSD/pmax is |
955 |
|
also usable.) |
956 |
|
|
957 |
<p> |
<p> |
958 |
|
|
973 |
(On FreeBSD and similar systems, it is called <tt>/dev/cd0c</tt>. |
(On FreeBSD and similar systems, it is called <tt>/dev/cd0c</tt>. |
974 |
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 |
975 |
.iso image file.) Then, start the emulator like this:<pre> |
.iso image file.) Then, start the emulator like this:<pre> |
976 |
$ <b>gxemul -X -b -M64 -E dec -e 3max -d rootdisk.img -d bc:/dev/cd0c -j vmunix</b> |
$ <b>gxemul -X -M64 -E dec -e 3max -d rootdisk.img -d bc:/dev/cd0c -j vmunix</b> |
977 |
|
|
978 |
</pre> |
</pre> |
979 |
<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 |
981 |
new rootdisk, to continue the installation process. |
new rootdisk, to continue the installation process. |
982 |
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 |
983 |
diskimage argument:<pre> |
diskimage argument:<pre> |
984 |
$ <b>gxemul -X -b -M64 -E dec -e 3max -d rootdisk.img -d c:/dev/cd0c -j vmunix</b> |
$ <b>gxemul -X -M64 -E dec -e 3max -d rootdisk.img -d c:/dev/cd0c -j vmunix</b> |
985 |
|
|
986 |
</pre> |
</pre> |
987 |
</ol> |
</ol> |
989 |
<p> |
<p> |
990 |
When the installation is completed, the following command should start |
When the installation is completed, the following command should start |
991 |
Ultrix from the harddisk image:<pre> |
Ultrix from the harddisk image:<pre> |
992 |
$ <b>gxemul -X -b -M64 -E dec -e 3max -j vmunix -d rootdisk.img</b> |
$ <b>gxemul -X -M64 -E dec -e 3max -j vmunix -d rootdisk.img</b> |
993 |
</pre> |
</pre> |
994 |
|
|
995 |
<p> |
<p>Ultrix mostly seems to work with dynamic binary translation (which can |
996 |
Ultrix mostly seems to work with dynamic binary translation (enabled by |
be disabled by the <b><tt>-B</tt></b> command line option). If you have a |
997 |
the <b><tt>-b</tt></b> command line option). If you have a very fast |
very fast host machine, and use bintrans, you might experience a weird |
998 |
host machine, and use bintrans, you might experience a weird timer related |
timer related bug, which makes it impossible to logon to the system. It is |
999 |
bug, which makes it impossible to logon to the system. It is triggered |
triggered when the emulation goes faster than any real DECstation machine |
1000 |
when the emulation goes faster than any real DECstation machine was |
was capable of running. A temporary workaround is to add |
1001 |
capable of running. A temporary workaround is to add <b><tt>-I33000000</tt></b> |
<b><tt>-I33000000</tt></b> to fix the emulated clock speed to 33 million |
1002 |
to fix the emulated clock speed to 33 million instructions per emulated |
instructions per emulated second. (When using <tt><b>-CR4400</b></tt>, |
1003 |
second. (When using <tt><b>-CR4400</b></tt>, <b><tt>-I16000000</tt></b> |
<b><tt>-I16000000</tt></b> should be used instead.) |
|
should be used instead.) |
|
1004 |
|
|
1005 |
<p> |
<p> |
1006 |
You can experiment with adding <b><tt>-Z2</tt></b> (for emulating a |
You can experiment with adding <b><tt>-Z2</tt></b> (for emulating a |
1011 |
displays to use. The following example starts Ultrix on an emulated |
displays to use. The following example starts Ultrix on an emulated |
1012 |
tripple-headed workstation, on three different displays (<tt>remote1:0.0</tt>, |
tripple-headed workstation, on three different displays (<tt>remote1:0.0</tt>, |
1013 |
<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> |
1014 |
$ <b>gxemul -M64 -bN -E dec -e 3max -jgenvmunix -d rootdisk.img \ |
$ <b>gxemul -M64 -N -E dec -e 3max -jgenvmunix -d rootdisk.img \ |
1015 |
-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> |
1016 |
</pre> |
</pre> |
1017 |
|
|
1052 |
|
|
1053 |
<p><br> |
<p><br> |
1054 |
<a name="sprite"></a> |
<a name="sprite"></a> |
1055 |
<h3>Running Sprite for DECstation in GXemul:</h3> |
<h3>Sprite for DECstation:</h3> |
1056 |
|
|
1057 |
Sprite was a research operating system at the University of Berkeley. |
Sprite was a research operating system at the University of Berkeley. |
1058 |
The Unix Heritage Society (TUHS, <a href="http://www.tuhs.org">www.tuhs.org</a>) |
The Unix Heritage Society (TUHS, <a href="http://www.tuhs.org">www.tuhs.org</a>) |
1072 |
|
|
1073 |
<p> |
<p> |
1074 |
<ol> |
<ol> |
1075 |
<li>Download the Sprite harddisk image using ftp or http:<pre> |
<li>Download the Sprite harddisk image:<pre> |
1076 |
<a href="http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite/">http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite</a>/<a href="http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite/ds5000.bt">ds5000.bt</a> |
<a href="ftp://ftp.es.embnet.org/pub/misc/TUHS/other_os/Sprite/ds5000.bt">ftp://ftp.es.embnet.org/pub/misc/TUHS/other_os/Sprite/ds5000.bt</a> |
|
or <a href="ftp://ftp.es.embnet.org/pub/misc/TUHS/other_os/Sprite/ds5000.bt">ftp://ftp.es.embnet.org/pub/misc/TUHS/other_os/Sprite/ds5000.bt</a> |
|
1077 |
83973120 bytes, MD5 = ec84eeeb20fe77b758370d5e312e4a5e |
83973120 bytes, MD5 = ec84eeeb20fe77b758370d5e312e4a5e |
1078 |
|
|
1079 |
</pre> |
</pre> |
1080 |
<li>Start the emulator with the following command line:<pre> |
<li>Start the emulator with the following command line:<pre> |
1081 |
$ <b>gxemul -X -b -E dec -e 3max -M128 -d ds5000.bt -j vmsprite -o ''</b> |
$ <b>gxemul -X -E dec -e 3max -M128 -d ds5000.bt -j vmsprite -o ''</b> |
1082 |
|
|
1083 |
</pre> |
</pre> |
1084 |
</ol> |
</ol> |
1090 |
<p> |
<p> |
1091 |
|
|
1092 |
<pre> |
<pre> |
1093 |
Your machine's Ethernet address: 10:20:30:40:50:60 |
Your machine's Ethernet address: 10:20:30:00:00:10 |
1094 |
Your machine's IP: 10.0.0.1 |
Your machine's IP: 10.0.0.1 |
1095 |
Subnet mask: 0xff000000 |
Subnet mask: 0xff000000 |
1096 |
Gateway's Ethernet address: 60:50:40:30:20:10 |
Gateway's Ethernet address: 60:50:40:30:20:10 |
1098 |
</pre> |
</pre> |
1099 |
|
|
1100 |
<p> |
<p> |
1101 |
Unfortunately, at the end of <a href="http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite/boot.txt"> |
Unfortunately, at the end of <a href="ftp://ftp.es.embnet.org/pub/misc/TUHS/other_os/Sprite/boot.txt">ftp://ftp.es.embnet.org/pub/misc/TUHS/other_os/Sprite/boot.txt</a>, |
1102 |
http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite/boot.txt</a>, the |
the following sad statement can be found: |
|
following sad statement can be found: |
|
1103 |
<pre> |
<pre> |
1104 |
The bootable Sprite image is meant to be a demonstration of Sprite, not |
The bootable Sprite image is meant to be a demonstration of Sprite, not |
1105 |
a robust Sprite system. There are several missing things, such as |
a robust Sprite system. There are several missing things, such as |
1106 |
floating point and network support. |
floating point and network support. |
1107 |
</pre> |
</pre> |
1108 |
|
|
1109 |
<p> |
<p>Once you are logged in as root, running <b><tt>xinit</tt></b> will |
1110 |
Once you are logged in as root, running <b>xinit</b> will start the X11 |
start the X11 environment. |
1111 |
environment. |
|
1112 |
|
|
1113 |
|
|
1114 |
|
|
1116 |
|
|
1117 |
<p><br> |
<p><br> |
1118 |
<a name="declinux"></a> |
<a name="declinux"></a> |
1119 |
<h3>Installing Debian GNU/Linux for DECstation in GXemul:</h3> |
<h3>Debian GNU/Linux for DECstation:</h3> |
1120 |
|
|
1121 |
<font color="#ef0000">NOTE: This is experimental, and <i>extremely</i> |
<font color="#ef0000">NOTE: This is experimental, and <i>extremely</i> |
1122 |
unstable. During my tests, even pressing the wrong key during the install |
unstable. During my tests, even pressing the wrong key during the install |
1123 |
(for example the wrong cursor key) can cause a kernel Oops. |
(for example the wrong cursor key) can cause a kernel Oops. My success |
1124 |
I <i>think</i> this has to do with interrupts from the serial controller. |
rate is probably around 50%. |
1125 |
|
|
1126 |
|
<p>I <i>think</i> this has to do with interrupts from the serial controller. |
1127 |
Hopefully using the <tt><b>-U</b></tt> command line option will reduce the |
Hopefully using the <tt><b>-U</b></tt> command line option will reduce the |
1128 |
risk for such crashes. (I haven't had time to come up with a clean |
risk for such crashes. (I haven't had time to come up with a clean |
1129 |
solution to this yet; it feels like a buffer overflow in Linux' serial |
solution to this yet; it feels like a buffer overflow in Linux' serial |
1130 |
driver for the 5000/200, but it is also likely that it is a bug in GXemul.) |
driver for the 5000/200, but it is also likely that it is a bug in GXemul.) |
1131 |
</font> |
|
1132 |
|
<p>Everything runs extremely slow. Even if you have a very fast host |
1133 |
|
machine, an install attempt can still take several hours! </font> |
1134 |
|
|
1135 |
<p> |
<p> |
1136 |
|
|
1154 |
|
|
1155 |
</pre> |
</pre> |
1156 |
<li>Download an install kernel:<pre> |
<li>Download an install kernel:<pre> |
1157 |
<a href="http://http.us.debian.org/debian/dists/testing/main/installer-mipsel/current/images/r3k-kn02/boot.img">http://http.us.debian.org/debian/dists/testing/main/</a> |
<a href="http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/r3k-kn02/boot.img">http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/r3k-kn02/boot.img</a> |
|
<a href="http://http.us.debian.org/debian/dists/testing/main/installer-mipsel/current/images/r3k-kn02/boot.img">installer-mipsel/current/images/r3k-kn02/boot.img</a> |
|
|
or |
|
|
<a href="http://http.us.debian.org/debian/dists/unstable/main/installer-mipsel/current/images/r3k-kn02/boot.img">http://http.us.debian.org/debian/dists/unstable/main/</a> |
|
|
<a href="http://http.us.debian.org/debian/dists/unstable/main/installer-mipsel/current/images/r3k-kn02/boot.img">installer-mipsel/current/images/r3k-kn02/boot.img</a> |
|
1158 |
|
|
1159 |
</pre> |
</pre> |
|
depending on whether you want to install Debian "Testing" or |
|
|
"Unstable". |
|
1160 |
<p> |
<p> |
1161 |
<li>For a text-mode installation, start the emulator like this:<pre> |
<li>For a text-mode installation, start the emulator like this:<pre> |
1162 |
$ <b>gxemul -E dec -e 3max -b -U -M64 -o 'console=ttyS3' -d debian.img -O boot.img</b> |
$ <b>gxemul -E dec -e 3max -U -M64 -o 'console=ttyS3' -d debian.img -O boot.img</b> |
1163 |
|
|
1164 |
</pre> |
</pre> |
1165 |
</ol> |
(If you want to, you can try <b><tt>-X</tt></b> instead of |
1166 |
|
<b><tt>-o 'console=ttyS3'</tt></b> on the command line. This will |
1167 |
<p> |
cause Linux to use the graphical framebuffer. Unfortunately, Linux |
1168 |
Debian GNU/Linux on DECstation works reasonably fine with dynamic |
does not seem to have a driver for the DZ11 keyboard controller yet, |
1169 |
binary translation, enabled by the <b><tt>-b</tt></b> command line option. |
so you cannot interact with the system. You will see the penguin in |
1170 |
(Without this option, the emulator might be less buggy, but also too slow |
the upper lefthand corner while booting, and nicely rendered Unicode |
1171 |
to be useful when running Linux as a guest OS.) |
characters, but that's about it.) |
1172 |
|
<p> |
1173 |
<p> |
You need to enter some values during the installation procedure, for |
1174 |
(If you want to, you can try <b>-X</b> instead of <b>-o 'console=ttyS3'</b> on |
example network settings. The following should work:<pre> |
1175 |
the command line. This will cause Linux to use the graphical framebuffer. |
DHCP: No, choose "<b>Configure network manually</b>" |
1176 |
Unfortunately, Linux does not seem to have a driver for the DZ11 keyboard |
IP address: <b>10.0.0.1</b> |
1177 |
controller yet, so you cannot interact with the system. You will see the |
Netmask: <b>255.0.0.0</b> |
1178 |
penguin in the upper lefthand corner while booting, and nicely rendered Unicode |
Gateway: <b>10.0.0.254</b> |
1179 |
characters, but that's about it.) |
Name server addresses: <b>10.0.0.254</b> |
|
|
|
|
<p> |
|
|
You need to enter some values during the installation procedure, for example |
|
|
network settings. The following should work: |
|
|
<p> |
|
|
<pre> |
|
|
DHCP: No, choose "Configure network manually" |
|
|
IP address: 10.0.0.1 |
|
|
Netmask: 255.0.0.0 |
|
|
Gateway: 10.0.0.254 |
|
|
Name server addresses: 10.0.0.254 |
|
1180 |
</pre> |
</pre> |
|
|
|
|
<p> |
|
|
<ol start="4"> |
|
1181 |
<li>Once the first phase of the install has finished, the following command |
<li>Once the first phase of the install has finished, the following command |
1182 |
should let you boot into Debian, and perform post-install |
should let you boot into Debian, and perform post-install |
1183 |
configuration:<pre> |
configuration:<pre> |
1184 |
$ <b>gxemul -E dec -e 3max -U -b -M64 -o 'console=ttyS3' -d debian.img</b> |
$ <b>gxemul -E dec -e 3max -U -M64 -o 'console=ttyS3' -d debian.img</b> |
|
|
|
|
</pre> |
|
|
</ol> |
|
1185 |
|
|
1186 |
<p> |
</pre>Note: All these steps take a lot of time, so you will have plenty |
1187 |
It seems that there's a problem with getting a login prompt on serial |
of time to drink lots of cups of coffee. |
1188 |
console (at least when I've done test installs), so when the installation |
<p> |
1189 |
is finished and you're supposed to get a login prompt, you need to press |
<li>It seems that there's a problem with getting a login prompt on serial |
1190 |
CTRL-C and type <b>quit</b>, and then: |
console (at least when I've done test installs), so when the |
1191 |
|
installation is finished and you're supposed to get a login prompt, |
1192 |
<p> |
you need to press CTRL-C and type <b><tt>quit</tt></b>, and then: |
1193 |
<ol start="5"> |
download a normal kernel (<i>not</i> a RAMDISK kernel):<pre> |
1194 |
<li>Download a normal kernel (<i>not</i> a RAMDISK kernel):<pre> |
<a href="http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02</a> |
|
<a href="http://http.us.debian.org/debian/dists/testing/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">http://http.us.debian.org/debian/dists/testing/main/</a> |
|
|
<a href="http://http.us.debian.org/debian/dists/testing/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02</a> |
|
1195 |
|
|
1196 |
</pre> |
</pre>and boot Debian using the following command line:<pre> |
1197 |
<li>Boot Debian using the following command line:<pre> |
$ <b>gxemul -E dec -e 3max -U -M64 -o \ |
|
$ <b>gxemul -E dec -e 3max -U -b -M64 -o \ |
|
1198 |
'console=ttyS3 root=/dev/sda1 rw init=/bin/sh' \ |
'console=ttyS3 root=/dev/sda1 rw init=/bin/sh' \ |
1199 |
-d debian.img vmlinux-2.4.27-r3k-kn02</b> |
-d debian.img vmlinux-2.4.27-r3k-kn02</b> |
1200 |
|
|
1204 |
sh-2.05b# <b>echo 'T3:23:respawn:/sbin/getty -L ttyS3 9600 vt100' >> /etc/inittab</b> |
sh-2.05b# <b>echo 'T3:23:respawn:/sbin/getty -L ttyS3 9600 vt100' >> /etc/inittab</b> |
1205 |
sh-2.05b# <b>echo 'ttyS3' >> /etc/securetty</b> |
sh-2.05b# <b>echo 'ttyS3' >> /etc/securetty</b> |
1206 |
sh-2.05b# <b>sync; umount /</b> |
sh-2.05b# <b>sync; umount /</b> |
1207 |
|
sh-2.05b# <b>halt</b> |
1208 |
</pre> |
</pre> |
1209 |
</ol> |
</ol> |
1210 |
|
|
1213 |
|
|
1214 |
<p> |
<p> |
1215 |
Use this command to boot from the completely installed disk image:<pre> |
Use this command to boot from the completely installed disk image:<pre> |
1216 |
$ <b>gxemul -E dec -e 3max -U -b -M64 -o 'console=ttyS3' -d debian.img</b> |
$ <b>gxemul -E dec -e 3max -U -M64 -o 'console=ttyS3' -d debian.img</b> |
1217 |
|
|
1218 |
</pre> |
</pre> |
1219 |
|
|
1237 |
|
|
1238 |
<p><br> |
<p><br> |
1239 |
<a name="declinuxredhat"></a> |
<a name="declinuxredhat"></a> |
1240 |
<h3>Running Redhat Linux for DECstation in GXemul:</h3> |
<h3>Redhat Linux for DECstation:</h3> |
1241 |
|
|
1242 |
<font color="#ff0000">NOTE: This is experimental, and <i>extremely</i> |
<font color="#ff0000">NOTE: This is experimental, and <i>extremely</i> |
1243 |
unstable. Read the note about <b><tt>-U</tt></b> in the section on how to |
unstable. Read the note about <b><tt>-U</tt></b> in the section on how to |
1254 |
<p> |
<p> |
1255 |
<ol> |
<ol> |
1256 |
<li>Download a kernel. This is a Debian kernel, but it works fine:<pre> |
<li>Download a kernel. This is a Debian kernel, but it works fine:<pre> |
1257 |
<a href="http://http.us.debian.org/debian/dists/testing/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">http://http.us.debian.org/debian/dists/testing/main/</a> |
<a href="http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02</a> |
|
<a href="http://http.us.debian.org/debian/dists/testing/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02</a> |
|
1258 |
|
|
1259 |
</pre> |
</pre> |
1260 |
<li>Download a root filesystem tree:<pre> |
<li>Download a root filesystem tree:<pre> |
1283 |
</pre>(Note sda1 instead of sdc1.) |
</pre>(Note sda1 instead of sdc1.) |
1284 |
<p> |
<p> |
1285 |
<li>To boot Linux, start the emulator like this:<pre> |
<li>To boot Linux, start the emulator like this:<pre> |
1286 |
$ <b>gxemul -E dec -e 3max -U -b -M128 -o \ |
$ <b>gxemul -E dec -e 3max -U -M128 -o \ |
1287 |
"console=ttyS3 root=/dev/sda1 ro" -d redhat.img vmlinux-2.4.27-r3k-kn02</b> |
"console=ttyS3 root=/dev/sda1 ro" -d redhat.img vmlinux-2.4.27-r3k-kn02</b> |
1288 |
|
|
1289 |
</pre> |
</pre> |
1291 |
|
|
1292 |
<p> |
<p> |
1293 |
If you need to boot into single user mode, try the following:<pre> |
If you need to boot into single user mode, try the following:<pre> |
1294 |
$ <b>gxemul -E dec -e 3max -U -b -o "console=ttyS3 root=/dev/sda1 rw init=/bin/sh" \ |
$ <b>gxemul -E dec -e 3max -U -o "console=ttyS3 root=/dev/sda1 rw init=/bin/sh" \ |
1295 |
-d redhat.img vmlinux-2.4.27-r3k-kn02</b> |
-d redhat.img vmlinux-2.4.27-r3k-kn02</b> |
1296 |
|
|
1297 |
</pre> |
</pre> |
1298 |
|
|
1299 |
<p> |
<p>Redhat Linux on DECstation in R3000 mode should work fine with dynamic |
1300 |
Redhat Linux on DECstation in R3000 mode should work fine with dynamic binary |
binary translation, but if things are buggy, it can be disabled by |
1301 |
translation (enabled by the <b>-b</b> command line option). |
using the <b><tt>-B</tt></b> command line option. |
1302 |
|
|
1303 |
<p> |
<p> |
1304 |
NOTE: You can add <b>-X</b> and remove <b>console=ttyS3</b> from the command |
NOTE: You can add <b>-X</b> and remove <b>console=ttyS3</b> from the command |
1321 |
|
|
1322 |
|
|
1323 |
<p><br> |
<p><br> |
1324 |
|
<hr> |
1325 |
|
|
1326 |
|
|
1327 |
|
|
1328 |
|
|
1329 |
|
|
1330 |
|
|
1331 |
|
|
1332 |
|
<p><br> |
1333 |
<a name="mach"></a> |
<a name="mach"></a> |
1334 |
<h3>Running Mach/PMAX in GXemul:</h3> |
<h3>Mach/PMAX:</h3> |
1335 |
|
|
1336 |
Read the following link if you want to know more about Mach in general: |
Read the following link if you want to know more about Mach in general: |
1337 |
<a href="http://www-2.cs.cmu.edu/afs/cs/project/mach/public/www/mach.html"> |
<a href="http://www-2.cs.cmu.edu/afs/cs/project/mach/public/www/mach.html"> |
1393 |
|
|
1394 |
|
|
1395 |
|
|
1396 |
|
|
1397 |
|
|
1398 |
|
|
1399 |
|
|
1400 |
|
<p><br> |
1401 |
|
<a name="openbsdsgiinstall"></a> |
1402 |
|
<h3>OpenBSD/sgi:</h3> |
1403 |
|
|
1404 |
|
<a href="http://www.openbsd.org/sgi.html">OpenBSD/sgi</a> |
1405 |
|
can (almost) run in GXemul on an emulated O2 (SGI-IP32) with root on nfs. |
1406 |
|
|
1407 |
|
<p> |
1408 |
|
|
1409 |
|
<a href="20050617-openbsd-sgi.png"><img src="20050617-openbsd-sgi_small.png"></a> |
1410 |
|
|
1411 |
|
<p><font color="#ff0000">NOTE: I haven't succeeded all the way with |
1412 |
|
this yet, and this shows/triggers many bugs in the emulator, but some of |
1413 |
|
it works.</font> |
1414 |
|
|
1415 |
|
<p>GXemul does not yet emulate the AHC PCI SCSI controller in the O2. (I have |
1416 |
|
mailed Adaptec several times, asking for documentation, but never received |
1417 |
|
any reply.) OpenBSD/sgi can still run, as long as it doesn't use SCSI. For |
1418 |
|
a simple test with the ramdisk (install) kernel, try dowloading<pre> |
1419 |
|
<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> |
1420 |
|
|
1421 |
|
</pre>and run <b><tt>gxemul -E sgi -e o2 bsd.rd</tt></b>. |
1422 |
|
|
1423 |
|
<p>It might also be possible to netboot. Another emulated machine must |
1424 |
|
then be used as the nfs root server, and the emulated O2 machine must boot |
1425 |
|
as a <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=diskless&manpath=OpenBSD+Current&format=html">diskless</a> |
1426 |
|
client. Performing this setup is quite time consuming, but necessary: |
1427 |
|
|
1428 |
|
<p> |
1429 |
|
<ol> |
1430 |
|
<li>First of all, the "<tt>nfs server</tt>" machine must be set up. |
1431 |
|
This needs to have a 800 MB <tt>/tftpboot</tt> partition. |
1432 |
|
<a href="#netbsdinstall">Install NetBSD/pmax 2.0.2 from CDROM</a> |
1433 |
|
inside the emulator. (Don't forget to add the extra partition!) |
1434 |
|
<p> |
1435 |
|
<li>Configure the nfs server machine to act as an nfs server. |
1436 |
|
Start up the emulated DECstation:<pre> |
1437 |
|
$ <b>gxemul -M64 -Edec -e3max -d nbsd_pmax.img</b> |
1438 |
|
</pre>and enter the following commands as <tt>root</tt> |
1439 |
|
inside the emulator: |
1440 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1441 |
|
<b>echo hostname=server >> /etc/rc.conf |
1442 |
|
echo ifconfig_le0=\"inet 10.0.0.2\" >> /etc/rc.conf |
1443 |
|
echo nameserver 10.0.0.254 >> /etc/resolv.conf |
1444 |
|
echo 10.0.0.254 > /etc/mygate |
1445 |
|
echo /tftpboot -maproot=root 10.0.0.1 > /etc/exports |
1446 |
|
echo rpcbind=YES >> /etc/rc.conf |
1447 |
|
echo nfs_server=YES >> /etc/rc.conf |
1448 |
|
echo mountd=YES >> /etc/rc.conf |
1449 |
|
echo bootparamd=YES >> /etc/rc.conf |
1450 |
|
printf "client root=10.0.0.2:/tftpboot \\\n swap=10.0.0.2:/tftpboot/swap\n" > /etc/bootparams |
1451 |
|
echo "10:20:30:00:00:10 client" > /etc/ethers |
1452 |
|
echo 10.0.0.1 client > /etc/hosts |
1453 |
|
reboot</b> |
1454 |
|
</pre></td></tr></table> |
1455 |
|
<li>Start the DECstation emulation again, and download the |
1456 |
|
OpenBSD/sgi distribution:<br>(NOTE: This |
1457 |
|
takes quite some time, even if you have a fast network connection.) |
1458 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1459 |
|
<b>cd /tftpboot; ftp -i ftp.se.openbsd.org</b> |
1460 |
|
(log in as anonymous...) |
1461 |
|
<b>cd pub/OpenBSD/3.7/sgi |
1462 |
|
mget b* c* e* g* m* |
1463 |
|
quit |
1464 |
|
sh |
1465 |
|
for a in *.tgz; do echo $a; tar zxfp $a; done |
1466 |
|
echo 10.0.0.2:/tftpboot / nfs rw 0 0 > /tftpboot/etc/fstab |
1467 |
|
dd if=/dev/zero of=swap bs=1024 count=32768 |
1468 |
|
halt</b> |
1469 |
|
</pre></td></tr></table> |
1470 |
|
<li>Download the OpenBSD/sgi GENERIC and RAMDISK kernels:<pre> |
1471 |
|
<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> |
1472 |
|
MD5 (bsd) = f16eaf3dcbd51876db7c25f70e6d8a08 |
1473 |
|
<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> |
1474 |
|
MD5 (bsd.rd) = 4843e6139d8dd04b03d5f0e33e9a4f7b |
1475 |
|
|
1476 |
|
</pre> |
1477 |
|
<li>Create a configuration file called <tt>config_client</tt>: |
1478 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1479 |
|
<font color="#2020cf">!!gxemul |
1480 |
|
! |
1481 |
|
! Configuration file for running OpenBSD/sgi diskless with |
1482 |
|
! a NetBSD/pmax machine as the nfs server. |
1483 |
|
! |
1484 |
|
! This config file is for the client.</font> |
1485 |
|
|
1486 |
|
<b>emul( |
1487 |
|
net( |
1488 |
|
add_remote("127.0.0.1:12444") </b>! the server<b> |
1489 |
|
local_port(12445) </b>! the client<b> |
1490 |
|
) |
1491 |
|
|
1492 |
|
machine( |
1493 |
|
name("client machine") |
1494 |
|
serial_nr(1) |
1495 |
|
|
1496 |
|
type("sgi") |
1497 |
|
subtype("o2") |
1498 |
|
|
1499 |
|
</b>! load("bsd")<b> |
1500 |
|
load("bsd.rd") |
1501 |
|
) |
1502 |
|
)</b> |
1503 |
|
</pre></td></tr></table> |
1504 |
|
... and another configuration file for the server, |
1505 |
|
<tt>config_server</tt>: |
1506 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1507 |
|
<font color="#2020cf">!!gxemul</font> |
1508 |
|
<b>emul( |
1509 |
|
net( |
1510 |
|
local_port(12444) </b>! the server<b> |
1511 |
|
add_remote("127.0.0.1:12445") </b>! the client<b> |
1512 |
|
) |
1513 |
|
|
1514 |
|
machine( |
1515 |
|
name("nfs server") |
1516 |
|
serial_nr(2) |
1517 |
|
|
1518 |
|
type("dec") |
1519 |
|
subtype("5000/200") |
1520 |
|
|
1521 |
|
disk("nbsd_pmax.img") |
1522 |
|
) |
1523 |
|
)</b> |
1524 |
|
</pre></td></tr></table> |
1525 |
|
<li>Boot the "<tt>nfs server</tt>" and the OpenBSD/sgi |
1526 |
|
"<tt>client machine</tt>" as two separate emulator instances:<pre> |
1527 |
|
in one xterm: |
1528 |
|
$ <b>gxemul @config_server</b> |
1529 |
|
|
1530 |
|
and then, in another xterm: |
1531 |
|
$ <b>gxemul @config_client</b> |
1532 |
|
|
1533 |
|
</pre> |
1534 |
|
<li>In the OpenBSD/sgi window, choose "S" (for Shell), and type: |
1535 |
|
<table border="0"><tr><td><tt> </tt></td><td><pre> |
1536 |
|
<b>ifconfig mec0 10.0.0.1; route add default 10.0.0.254 |
1537 |
|
mount -v 10.0.0.2:/tftpboot /mnt |
1538 |
|
cd /mnt/dev; ./MAKEDEV all; cd /; umount /mnt |
1539 |
|
halt</b> |
1540 |
|
</pre></td></tr></table> |
1541 |
|
</ol> |
1542 |
|
|
1543 |
|
<p>You might want to log in as <tt>root</tt> on the server machine, and |
1544 |
|
run <tt>tcpdump -lnvv</tt> or similar, to see that what the client machine |
1545 |
|
actually does on the network. The <tt>MAKEDEV</tt> script takes almost |
1546 |
|
forever, so be patient. |
1547 |
|
|
1548 |
|
<p><font color="#ff0000">NOTE: Everything up to this point should work. |
1549 |
|
However, the next step (in gray) doesn't actually work:</font> |
1550 |
|
|
1551 |
|
<p><font color="#888888">Once everything has been set up correctly, change |
1552 |
|
<tt>bsd.rd</tt> in <tt>config_client</tt> to just <tt>bsd</tt> (the GENERIC |
1553 |
|
kernel). It should now be possible to boot OpenBSD/sgi using the NetBSD/pmax |
1554 |
|
nfs server. (When asked for "<tt>root device :</tt>" on the OpenBSD machine, |
1555 |
|
enter <tt><b>mec0</b></tt>.)</font> |
1556 |
|
|
1557 |
|
<p><font color="#ff0000">But it doesn't work. Probably because GXemul's |
1558 |
|
implementation of the mec (ethernet card used in the O2) is too much of |
1559 |
|
a quick hack. For now, use the <tt>bsd.rd</tt> kernel, and (at every |
1560 |
|
boot) type:</font><pre> |
1561 |
|
<b>s</b> (for Shell) |
1562 |
|
<b>ifconfig mec0 10.0.0.1; route add default 10.0.0.254</b> |
1563 |
|
<b>mount -v 10.0.0.2:/tftpboot /mnt</b> |
1564 |
|
<b>cd /mnt; usr/sbin/chroot .</b> |
1565 |
|
<b>sh etc/rc</b> |
1566 |
|
</pre> |
1567 |
|
|
1568 |
|
<p><font color="#ff0000">This will not cause OpenBSD to be booted |
1569 |
|
normally, but at least a few basic things will work. |
1570 |
|
By the way, the emulator performs so poorly, that you will have time to |
1571 |
|
fetch several cups of coffee for each of the steps above.</font> |
1572 |
|
|
1573 |
|
|
1574 |
|
|
1575 |
|
|
1576 |
|
|
1577 |
|
|