/[gxemul]/trunk/doc/guestoses.html
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/doc/guestoses.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 18 by dpavlin, Mon Oct 8 16:19:11 2007 UTC revision 38 by dpavlin, Mon Oct 8 16:21:53 2007 UTC
# Line 4  Line 4 
4  <table border=0 width=100% bgcolor="#d0d0d0"><tr>  <table border=0 width=100% bgcolor="#d0d0d0"><tr>
5  <td width=100% align=center valign=center><table border=0 width=100%><tr>  <td width=100% align=center valign=center><table border=0 width=100%><tr>
6  <td align="left" valign=center bgcolor="#d0efff"><font color="#6060e0" size="6">  <td align="left" valign=center bgcolor="#d0efff"><font color="#6060e0" size="6">
7  <b>Gavare's eXperimental Emulator:&nbsp;&nbsp;&nbsp;</b></font>  <b>Gavare's eXperimental Emulator:</b></font><br>
8  <font color="#000000" size="6"><b>Installing and running "guest OSes"</b>  <font color="#000000" size="6"><b>Installing and running "guest OSes"</b>
9  </font></td></tr></table></td></tr></table><p>  </font></td></tr></table></td></tr></table><p>
10    
11  <!--  <!--
12    
13  $Id: guestoses.html,v 1.96 2005/10/22 17:24:19 debug Exp $  $Id: guestoses.html,v 1.212 2007/04/14 05:38:00 debug Exp $
14    
15  Copyright (C) 2003-2005  Anders Gavare.  All rights reserved.  Copyright (C) 2003-2007  Anders Gavare.  All rights reserved.
16    
17  Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
18  modification, are permitted provided that the following conditions are met:  modification, are permitted provided that the following conditions are met:
# Line 48  SUCH DAMAGE. Line 48  SUCH DAMAGE.
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">NetBSD/pmax</a>    <li><a href="#netbsdpmaxinstall">NetBSD/pmax 3.1 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.1</a>
54    <li><a href="#netbsdcobaltinstall">NetBSD/cobalt</a>    <li><a href="#netbsdcobaltinstall">NetBSD/cobalt 3.1</a>
55    <li><a href="#netbsdevbmipsinstall">NetBSD/evbmips</a>    <li><a href="#netbsdevbmipsinstall">NetBSD/evbmips 3.1</a>
56    <li><a href="#netbsdsgimips">NetBSD/sgimips</a>    <li><a href="#netbsdalgorinstall">NetBSD/algor 3.1</a>
57    <li><a href="#netbsdcatsinstall">NetBSD/cats</a>    <li><a href="#netbsdsgimips">NetBSD/sgimips 3.1</a>
58    <li><a href="#openbsdinstall">OpenBSD/pmax</a>    <li><a href="#netbsdcatsinstall">NetBSD/cats 3.1</a>
59    <li><a href="#openbsdarcinstall">OpenBSD/arc</a>    <li><a href="#netbsdevbarminstall">NetBSD/evbarm 2.1</a>
60    <li><a href="#openbsdcatsinstall">OpenBSD/cats</a>    <li><a href="#netbsdnetwinderinstall">NetBSD/netwinder 3.1</a>
61    <li><a href="#ultrixinstall">Ultrix/RISC</a>    <li><a href="#netbsdprepinstall">NetBSD/prep 2.1</a>
62      <li><a href="#netbsdmacppcinstall">NetBSD/macppc 3.1</a>
63      <li><a href="dreamcast.html#netbsd_generic_md">NetBSD/dreamcast 3.1</a>
64      <li><a href="dreamcast.html#linux_live_cd">Linux/dreamcast</a>
65      <li><a href="#openbsdpmaxinstall">OpenBSD/pmax 2.8-BETA</a>
66      <li><a href="#openbsdcatsinstall">OpenBSD/cats 4.0</a>
67      <li><a href="#ultrixinstall">Ultrix/RISC 4.5</a>
68    <li><a href="#sprite">Sprite for DECstation</a>    <li><a href="#sprite">Sprite for DECstation</a>
69    <li><a href="#declinux">Debian GNU/Linux for DECstation</a>    <li><a href="#declinux">Debian GNU/Linux for DECstation</a>
   <li><a href="#declinuxredhat">Redhat Linux for DECstation</a>  
 </ul>  
   
 <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="#netbsdnetwinderinstall">NetBSD/netwinder</a>  
70  </ul>  </ul>
71    
72    
# Line 82  you might find the following information Line 79  you might find the following information
79  <h3>General notes on running "guest OSes":</h3>  <h3>General notes on running "guest OSes":</h3>
80    
81  The emulator works well enough to run complete operating systems. These  The emulator works well enough to run complete operating systems. These
82  are often refered to as "guest" operating systems.  are often refered to as <i>guest</i> operating systems, in contrast to the
83    <i>host</i> operating system which the emulator is running under.
84    
85  <p>  <p>Although it is possible to let a guest OS access real hardware, such as
86  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
87  harddisks, it is much more flexible and attractive to simulate harddisks  using files residing in the host's filesystem. On Unix-like systems, files
88  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  
89  system, the harddisk image looks and acts like a real disk.  system, the harddisk image looks and acts like a real disk.
90    
91    <p>The version numbers of the various operating systems were the latest
92    versions that worked satisfactory with GXemul at the time this page was
93    updated; if new versions have been released since then, they might work as
94    well.
95    
96    <p>In addition to the "working" guest operating systems listed above,
97    you might find the following information interesting:
98    
99    <ul>
100      <li><a href="#mach">Mach/PMAX</a>
101      <li><a href="#declinuxredhat">Redhat Linux for DECstation</a>
102      <li><a href="#openbsdsgiinstall">OpenBSD/sgi</a>
103      <li><a href="#openbsdarcinstall">OpenBSD/arc 2.3</a>
104      <li><a href="#debiancats">Debian GNU/Linux for CATS</a>
105      <!-- <li><a href="#linux_malta">Linux/Malta</a> -->
106      <li><a href="#linux_qemu_mips">Linux/QEMU_MIPS</a>
107      <li><a href="#windows_nt_mips">Windows NT/MIPS</a>
108      <li><a href="#netbsdbeboxinstall">NetBSD/bebox 19981119</a>
109      <li><a href="#netbsdlandiskinstall">NetBSD/landisk</a>
110      <li><a href="#openbsdlandiskinstall">OpenBSD/landisk</a>
111    </ul>
112    
113    <p><b><font color="#ff0000">NOTE:</b>
114    Some of these sections may not be relevant to this
115    specific release of GXemul,</font> for example some of these
116    modes may be legacy modes that worked before but not any longer,
117    or are not yet working but could be in the future.
118    
119    <p>Some operating systems are listed with a version number <i>less</i>
120    than what was available at the time of this GXemul release (e.g.
121    NetBSD/prep). The reasons for this is because of incompleteness in
122    GXemul's machine, device, and/or processor implementations.
123    
124    
125    
# Line 99  system, the harddisk image looks and act Line 128  system, the harddisk image looks and act
128    
129    
130  <p><br>  <p><br>
131  <a name="netbsdinstall"></a>  <a name="netbsdpmaxinstall"></a>
132  <h3>NetBSD/pmax:</h3>  <h3>NetBSD/pmax:</h3>
133    
134  <p>  <p><a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a> was the
135  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  first guest OS that could be
136    <a href="http://mail-index.netbsd.org/port-pmax/2004/04/18/0000.html">installed</a>
137    onto a disk image in GXemul. The device emulation of the DECstation
138    5000/200 is reasonably complete; it should be enough to emulate a
139    networked X-windows-capable workstation.
140    
141    <p>NetBSD/pmax 1.6.2 works perfectly with X out-of-the-box. Unfortunately,
142    newer NetBSD releases have changed slightly, and X does not work straight
143    away with NetBSD 2.x and 3.x. It seems that this has to do with NetBSD
144    switching console system to "WSCONS" somewhere between 1.6.2 and 2.0.
145    
146    <p>What this means is that if you want to use emulated X11, then you need
147    to run NetBSD 1.6.2. At the time of writing this, 4.0_BETA snapshots work
148    fine too, but 4.0 isn't released yet. If you feel that you only need
149    serial-console emulation, then choose 3.1.
150    
151    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
152  <a href="20050317-example.png"><img src="20050317-example_small.png"></a>  <a href="20050317-example.png"><img src="20050317-example_small.png"></a>
153    
154  <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,
155  onto a harddisk image in the emulator, follow these instructions:  follow these instructions:
156    
157  <p><ol start="1">  <p><ol start="1">
158    <li>Create an empty harddisk image, which will be the root disk    <li>Create an empty harddisk image, which will be the root disk
159          that NetBSD installs itself onto:<pre>          that NetBSD installs itself onto:<pre>
160          <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=3000000</b>
161    
162  </pre>  </pre>
163  </ol>  </ol>
# Line 127  steps: Line 172  steps:
172  <ol start="2">  <ol start="2">
173    
174    <li>Download a NetBSD CD-ROM iso image:<pre>    <li>Download a NetBSD CD-ROM iso image:<pre>
175          <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>
176          or          or
177          <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>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/pmaxcd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/pmaxcd-3.1.iso</a>
178    
179  </pre>  </pre>
180    <li>Start the emulator like this:<pre>    <li>Start the emulator like this:<pre>
181          <b>gxemul -e 3max -A -d nbsd_pmax.img -d bc:pmaxcd.iso</b>          <b>gxemul -e 3max -d nbsd_pmax.img -d bc:pmaxcd-3.1.iso</b>
182            (or <b>pmaxcd.iso</b>)
183  </pre>  </pre>
184          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
185          DECstation. Remember to choose <tt>vt100</tt> as your terminal          DECstation. Remember to choose <tt>vt100</tt> as your terminal
# Line 145  For an ftp install, substitute steps 2 a Line 191  For an ftp install, substitute steps 2 a
191  <ol start="2">  <ol start="2">
192    
193    <li>Download a NetBSD pmax INSTALL kernel:<pre>    <li>Download a NetBSD pmax INSTALL kernel:<pre>
194          <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>
195          or          or
196          <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>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz</a>
197    
198  </pre>  </pre>
199    <li>Start the emulator like this:<pre>    <li>Start the emulator like this:<pre>
200          <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>
201  </pre>  </pre>
202          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
203          DECstation. Remember to choose <tt>vt100</tt> as your terminal          DECstation. Remember to choose <tt>vt100</tt> as your terminal
# Line 181  NetBSD from the harddisk image:<pre> Line 227  NetBSD from the harddisk image:<pre>
227          <b>gxemul -e 3max -d nbsd_pmax.img</b>          <b>gxemul -e 3max -d nbsd_pmax.img</b>
228  </pre>  </pre>
229    
230  <p><font color="#ff0000">NOTE:</font> For some reason, NetBSD 2.0.2  <p>If you installed NetBSD/pmax 1.6.2, or 4.0_BETA, then try the
231  doesn't work with X out-of-the-box on pmax. It seems that this has to do  following to start 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>  
232          <b>gxemul -X -e 3max -d nbsd_pmax.img</b>          <b>gxemul -X -e 3max -d nbsd_pmax.img</b>
233  </pre>  </pre>
234  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.
# Line 202  and log in as <tt>root</tt> and type <tt Line 244  and log in as <tt>root</tt> and type <tt
244  <a name="netbsdarcinstall"></a>  <a name="netbsdarcinstall"></a>
245  <h3>NetBSD/arc:</h3>  <h3>NetBSD/arc:</h3>
246    
247  It is possible to install and run <a  It is possible to install and run an old version of <a
248  href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a>  href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a>
249  on an emulated Acer PICA-61 in the emulator.  on an emulated Acer PICA-61 in the emulator.
250    
# Line 211  on an emulated Acer PICA-61 in the emula Line 253  on an emulated Acer PICA-61 in the emula
253  <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>
254    
255  <p>  <p>
256  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
257  follow these instructions:  harddisk image, follow these instructions:
258    
259  <p>  <p>
260  <ol start="1">  <ol start="1">
261    <li>Create an empty harddisk image, which will be the root disk    <li>Create an empty harddisk image, which will be the root disk
262          that NetBSD installs itself onto:<pre>          that NetBSD installs itself onto:<pre>
263          <b>dd if=/dev/zero of=nbsd_arc.img bs=1024 count=1 seek=900000</b>          <b>dd if=/dev/zero of=nbsd_arc.img bs=1024 count=1 seek=2000000</b>
264    
265  </pre>  </pre>
266    <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
267          kernel:<pre>          kernel:<pre>
268          <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>
269            <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>
270    
         <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>  
271  </pre>  </pre>
272    <li>Start the emulator using this command line:<pre>    <li>Start the emulator using this command line:<pre>
273          <b>gxemul -e pica -x -d nbsd_arc.img -d bc:arccd.iso \          <b>gxemul -e pica -x -d nbsd_arc.img -d bc:arccd.iso -j arc/binary/kernel/netbsd.RAMDISK.gz</b>
           -j arc/binary/kernel/netbsd.RAMDISK.gz</b>  
274    
275  </pre>  </pre>
276          (Try removing <tt>-x</tt> if you have problems with the xterm.)          (Try removing <tt>-x</tt> if you have problems with the xterm.)
277      <p>      <p>
278    <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
279          automatic installation program for NetBSD/arc. Here are some tips          automatic installation program for NetBSD/arc 1.6.2. Here are
280          and hints on how you can proceed with the install:          some tips and hints on how you can proceed with the install:
281  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
282  <b>mount /dev/cd0a /mnt2  <b>mount /dev/cd0a /mnt2
283  disklabel -i -I sd0</b>    (for example 'a', '4.2BSD', '1c',  disklabel -i -I sd0</b>    (for example 'a', '4.2BSD', '1c',
# Line 250  cd ../etc; echo "rc_configured=YES" &gt; Line 291  cd ../etc; echo "rc_configured=YES" &gt;
291  cat > /mnt/etc/fstab  cat > /mnt/etc/fstab
292  /dev/sd0a / ffs rw 1 1  /dev/sd0a / ffs rw 1 1
293  /dev/sd0b none swap sw 0 0  /dev/sd0b none swap sw 0 0
294  </b>(press ctrl-d)<b>  </b>(press ctrl-d)
295  <b>cd /; umount /mnt; umount /mnt2  <b>cd /; umount /mnt; umount /mnt2
296  halt</b>  halt</b>
297  </pre></td></tr></table>  </pre></td></tr></table>
# Line 276  image, using the following command:<pre> Line 317  image, using the following command:<pre>
317    
318  It is possible to install <a  It is possible to install <a
319  href="http://www.netbsd.org/Ports/hpcmips/">NetBSD/hpcmips</a> onto a disk  href="http://www.netbsd.org/Ports/hpcmips/">NetBSD/hpcmips</a> onto a disk
320  image, on an an emulated MobilePro 770, 780, 800, or 880. The emulator  image, on an an emulated MobilePro 770 or 800. (MobilePro 780 and 880 might
321  treats the different machine models as being almost identical; the most  work too, but I don't test those for every release of the emulator. They
322  important difference is regarding the framebuffer.  have unaligned framebuffers, and run a bit slower.)
   
 <p><table border="0">  
         <tr>  
                 <td width="80">&nbsp;</td>  
                 <td><u>Model:</u></td>  
                 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>  
                 <td><u>Framebuffer size/depth:</u></td>  
                 <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>  
                 <td><u>Framebuffer address:</u></td>  
         </tr>  
         <tr>  
                 <td></td>  
                 <td>MobilePro 770 (<super>*2</super>)</td>  
                 <td></td>  
                 <td>640 x 240, 16 bits</td>  
                 <td></td>  
                 <td>0xa000000</td>  
         </tr>  
         <tr>  
                 <td></td>  
                 <td>MobilePro 780</td>  
                 <td></td>  
                 <td>640 x 240, 16 bits</td>  
                 <td></td>  
                 <td>0xa180100 (<super>*</super>)</td>  
         </tr>  
         <tr>  
                 <td></td>  
                 <td>MobilePro 800</td>  
                 <td></td>  
                 <td>800 x 600, 16 bits</td>  
                 <td></td>  
                 <td>0xa000000</td>  
         </tr>  
         <tr>  
                 <td></td>  
                 <td>MobilePro 880</td>  
                 <td></td>  
                 <td>800 x 600, 16 bits</td>  
                 <td></td>  
                 <td>0xa0ea600 (<super>*</super>)</td>  
         </tr>  
 </table>  
   
 <p>  
 (<super>*</super>) = not aligned at a 4 KB boundary, so it will not work  
 efficiently with the current bintrans system. Using this mode will still  
 work, but each load and store will be emulated much more slowly than is  
 possible with an aligned framebuffer.  
   
 <p>  
 (<super>*2</super>) = The MobilePro 770's cursor keys work differently  
 than the other models, for some reason. (This is a known bug.)  
323    
324  <p>  <p>
325  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
# Line 347  NetBSD/hpcmips on an emulated MobilePro Line 335  NetBSD/hpcmips on an emulated MobilePro
335  <ol start="1">  <ol start="1">
336    <li>Create an empty harddisk image, which will be the root disk    <li>Create an empty harddisk image, which will be the root disk
337          that you will install NetBSD/hpcmips onto:<pre>          that you will install NetBSD/hpcmips onto:<pre>
338          <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=3000000</b>
339    
340  </pre>  </pre>
341    <li>Download the NetBSD/hpcmips 2.0.2 ISO image, and a generic kernel:<pre>    <li>Download the NetBSD/hpcmips 3.1 ISO image, and a generic kernel:<pre>
342          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/hpcmipscd.iso">hpcmipscd.iso</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/hpcmipscd-3.1.iso">hpcmipscd-3.1.iso</a>
343            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/hpcmips/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/hpcmips/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/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>  
344    
345  </pre>  </pre>
346    <p>    <p>
347    <li>Start the installation like this:<pre>    <li>Start the installation like this:<pre>
348          <b>gxemul -e mobilepro770 -X -A -d nbsd_hpcmips.img  \          <b>gxemul -e mobilepro770 -X -d nbsd_hpcmips.img -d b:hpcmipscd-3.1.iso -j hpcmips/installation/netbsd.gz</b>
           -d b:hpcmipscd.iso -j hpcmips/installation/netbsd.gz</b>  
349    
350  </pre>  </pre>
351          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
352          MobilePro 770. (Install onto wd0, choose "Use entire disk" when          MobilePro 770. (Install onto wd0, choose "Use entire disk" when
353          doing the MBR partitioning, and choose wd1d (not cd0c) as the          doing the MBR partitioning, and choose to install from CD-ROM.)
         CDROM device to install from.)  
354  </ol>  </ol>
355    
356  <p>  <p>
# Line 375  Use the following command line to boot t Line 360  Use the following command line to boot t
360    
361  </pre>  </pre>
362    
 <p>If you change your mind at this point regarding which machine type to  
 emulate, you might for example prefer a MobilePro 800, then you can change  
 that at any time. NetBSD/hpcmips is designed to be able to boot on many  
 types, without any need to change the kernel.  
   
363  <p>When you have logged in as <tt>root</tt>, you can use <tt>startx</tt> to  <p>When you have logged in as <tt>root</tt>, you can use <tt>startx</tt> to
364  start X Windows, but there is no mouse support yet so only keyboard input  start X Windows, but there is no mouse support yet so only keyboard input
365  is available. This makes it a bit akward to use X.  is available. This makes it a bit akward to use X.
# Line 397  is available. This makes it a bit akward Line 377  is available. This makes it a bit akward
377    
378  <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
379  to install, because the Cobalt machines were designed for Linux, and not  to install, because the Cobalt machines were designed for Linux, and not
380  very flexible. There is no INSTALL kernel for NetBSD/cobalt. One way to  very flexible. There is no traditional INSTALL kernel for NetBSD/cobalt.
381  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
382  another (emulated) machine.  do it from another (emulated) machine.
383    
384  <p>  <p>
385  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
386  <a href="20050413-netbsd-cobalt.png"><img src="20050413-netbsd-cobalt_small.png"></a>  <a href="20060812-netbsd-cobalt-3.0.1.png"><img src="20060812-netbsd-cobalt-3.0.1_small.png"></a>
387    
388  <p>  <p>
389  The following instructions will let you install NetBSD/cobalt onto a disk  The following instructions will let you install NetBSD/cobalt onto a disk
# Line 411  image, from an emulated DECstation 3MAX Line 391  image, from an emulated DECstation 3MAX
391    
392  <p>  <p>
393  <ol>  <ol>
394      <li>Download a NetBSD/pmax (DECstation) install RAMDISK kernel:<pre>
395            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz</a>
396    </pre>
397      <p>
398    <li>Create an empty harddisk image, which will be the disk image    <li>Create an empty harddisk image, which will be the disk image
399          that you will install NetBSD/cobalt onto:<pre>          that you will install NetBSD/cobalt onto:<pre>
400          <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=700000</b>
401    
402  </pre>  </pre>
403    <li>Download the generic kernel for Cobalt and the 2.0.2 ISO image:<pre>    <li>Download the generic kernel for Cobalt and the 3.1 ISO image:<pre>
404          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cobalt/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cobalt/binary/kernel/netbsd-GENERIC.gz</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cobalt/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cobalt/binary/kernel/netbsd-GENERIC.gz</a>
405          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/cobaltcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/cobaltcd.iso</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/cobaltcd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/cobaltcd-3.1.iso</a>
406    
407  </pre>  </pre>
408    <p>    <li>Start the emulated DECstation machine like this:<pre>
409    <li>Install NetBSD/pmax 2.0.2 according to instructions          <b>gxemul -e 3max -d nbsd_cobalt.img -d cobaltcd-3.1.iso netbsd-INSTALL.gz</b>
         <a href="#netbsdinstall">further up on this page</a>.  
   <p>  
   <li>Start NetBSD/pmax like this:<pre>  
         <b>gxemul -e3max -A -d nbsd_pmax.img -d cobaltcd.iso -d nbsd_cobalt.img</b>  
410    
411  </pre>  </pre>
412    <li>Log in as root (on the emulated 3MAX machine), and execute the    <li>At the <tt>Terminal type? [rcons]</tt> prompt, type <b>CTRL-B</b>
413          following commands: (adjust according to taste)  to simulate a CTRL-C sent to NetBSD/pmax. Then execute the following commands:
414  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
415  <b>newfs /dev/sd1c  <b>newfs /dev/sd0c
416  mount /dev/cd0c /mnt  mount /dev/cd0c /mnt
417  mkdir /mnt2; mount /dev/sd1c /mnt2  mkdir /mnt2; mount /dev/sd0c /mnt2
418  cd /mnt2; sh  cd /mnt2; sh
419  for a in /mnt/cobalt/binary/sets/*.tgz; do echo $a; tar zxfp $a; done  for a in /mnt/*/binary/sets/[bcekmt]*.tgz; do echo $a; tar zxfp $a; done
420  exit  exit
421  cd dev; sh ./MAKEDEV all; cd ../etc  cd dev; sh ./MAKEDEV all; cd ../etc
422  echo rc_configured=YES &gt;&gt; rc.conf  echo rc_configured=YES >> rc.conf
423  echo "/dev/wd0d / ffs rw 1 1" > fstab  echo "/dev/wd0d / ffs rw 1 1" > fstab
424  cd /; umount /mnt; umount /mnt2; halt</b>  cd /; umount /mnt; umount /mnt2; halt</b>
425  </pre></td></tr></table>  </pre></td></tr></table>
# Line 447  cd /; umount /mnt; umount /mnt2; halt</b Line 427  cd /; umount /mnt; umount /mnt2; halt</b
427    
428  <p>  <p>
429  You should now be able to boot NetBSD/cobalt like this:<pre>  You should now be able to boot NetBSD/cobalt like this:<pre>
430          <b>gxemul -M128 -E cobalt -d nbsd_cobalt.img netbsd-GENERIC.gz</b>          <b>gxemul -E cobalt -d nbsd_cobalt.img netbsd-GENERIC.gz</b>
431  </pre>  </pre>
432    
433  Note that the installation instructions above create a filesystem  Note that the installation instructions above create a filesystem
# Line 470  generic kernel:<pre> Line 450  generic kernel:<pre>
450  <a name="netbsdevbmipsinstall"></a>  <a name="netbsdevbmipsinstall"></a>
451  <h3>NetBSD/evbmips:</h3>  <h3>NetBSD/evbmips:</h3>
452    
453  <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
454  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
455    4Kc (MIPS32) processor. 5Kc is the default.
456    
457  <p>  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
458  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <a href="20060812-netbsd-malta-3.0.1.png"><img src="20060812-netbsd-malta-3.0.1_small.png"></a>
 <a href="20050622-netbsd-evbmips-malta.png"><img src="20050622-netbsd-evbmips-malta_small.png"></a>  
459    
460  <p>It is tricky to install, because there is (as far as I know) no INSTALL  <p>One way to install the NetBSD/evbmips distribution onto a disk
 kernel. One way to install the NetBSD/evbmips distribution onto a disk  
461  image is to install the files using another (emulated) machine.  image is to install the files using another (emulated) machine.
462    
463  <p>  <p>
# Line 487  image, from an emulated DECstation 3MAX Line 466  image, from an emulated DECstation 3MAX
466    
467  <p>  <p>
468  <ol>  <ol>
469    <li>Install NetBSD/pmax 2.0.2 according to instructions    <li>Download a NetBSD/pmax (DECstation) install RAMDISK kernel:<pre>
470          <a href="#netbsdinstall">further up on this page</a>.          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz</a>
471    </pre>
472    <p>    <p>
473    <li>Create an empty harddisk image, which will be the disk image    <li>Create an empty harddisk image, which will be the disk image
474          that you will install NetBSD onto:<pre>          that you will install NetBSD onto:<pre>
475          <b>dd if=/dev/zero of=nbsd_malta.img bs=1024 count=1 seek=999000</b>          <b>dd if=/dev/zero of=nbsd_malta.img bs=1024 count=1 seek=700000</b>
476    
477  </pre>  </pre>
478    <li>Download the generic kernel and the 2.0.2 ISO image:<pre>    <li>Download the Malta kernel and the 3.1 ISO image:<pre>
479          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipsel/binary/kernel/netbsd-MALTA.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipsel/binary/kernel/netbsd-MALTA.gz</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/evbmips-mipsel/binary/kernel/netbsd-MALTA.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/evbmips-mipsel/binary/kernel/netbsd-MALTA.gz</a>
480          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/evbmips-mipselcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/evbmips-mipselcd.iso</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/evbmips-mipselcd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/evbmips-mipselcd-3.1.iso</a>
481    
482  </pre>  </pre>
483    <p>    <p>
484    <li>Start NetBSD/pmax like this:<pre>    <li>Start the emulated DECstation machine like this:<pre>
485          <b>gxemul -e 3max -A -d nbsd_pmax.img -d nbsd_malta.img -d evbmips-mipselcd.iso</b>          <b>gxemul -e 3max -d nbsd_malta.img -d evbmips-mipselcd-3.1.iso netbsd-INSTALL.gz</b>
486    
487  </pre>and execute the following commands as <tt>root</tt>:  </pre>
488      <li>At the <tt>Terminal type? [rcons]</tt> prompt, type <b>CTRL-B</b>
489    to simulate a CTRL-C sent to NetBSD/pmax. Then execute the following commands:
490  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
491  <b>newfs /dev/sd1c  <b>newfs /dev/sd0c
492  mount /dev/cd0c /mnt  mount /dev/cd0c /mnt
493  mkdir /mnt2; mount /dev/sd1c /mnt2  mkdir /mnt2; mount /dev/sd0c /mnt2
494  cd /mnt2; sh  cd /mnt2; sh
495  for a in /mnt/evbmips-mipsel/binary/sets/*.tgz; do echo $a; tar zxfp $a; done  for a in /mnt/*/binary/sets/[bcemt]*.tgz; do echo $a; tar zxfp $a; done
496  exit  exit
497  cd dev; sh ./MAKEDEV all; cd ../etc  cd dev; sh ./MAKEDEV all; cd ../etc
498  echo rc_configured=YES >> rc.conf  echo rc_configured=YES >> rc.conf
# Line 523  cd /; umount /mnt; umount /mnt2; halt</b Line 505  cd /; umount /mnt; umount /mnt2; halt</b
505          <b>gxemul -e malta -d nbsd_malta.img netbsd-MALTA.gz</b>          <b>gxemul -e malta -d nbsd_malta.img netbsd-MALTA.gz</b>
506  </pre>  </pre>
507    
508  <p>Note 1: NetBSD detects a very fast CPU although the emulation isn't  <p>NOTE: To select a 4Kc (MIPS32) CPU instead of the default 5Kc
 really that fast, so emulated delays are very slow. Even on a multi-GHz  
 host, you will need a lot of patience.  
   
 <p>Note 2: To select a 4Kc (MIPS32) CPU instead of the default 5Kc  
509  (MIPS64) CPU, add <tt><b>-C 4Kc</b></tt> to the command line. With NetBSD  (MIPS64) CPU, add <tt><b>-C 4Kc</b></tt> to the command line. With NetBSD
510  2.0.2, however, there will be little or no difference in functionality, as  3.1, however, there will be little or no difference in functionality, as
511  NetBSD still runs in 32-bit mode on 64-bit MIPS CPUs. The only difference  NetBSD still runs in 32-bit mode on 64-bit MIPS CPUs. There are two things
512  it makes in practice is that GXemul's binary translation subsystem might  that differ:<ol>
513  run a bit faster (because there are some optimizations for 32-bit    <li>The dynamic translation core runs faster when emulating 32-bit
514  emulation that don't work with 64-bit emulation).          processors, so <tt><b>-C 4Kc</b></tt> might make things go faster.
515      <li>4Kc only has 16 TLB entries, whereas 5Kc has 48. This makes 4Kc
516            emulation slower in general, because there are more TLB misses.
517    </ol>
518    
519  <p>Note 3: The installation instructions above create a filesystem  <p>The installation instructions above create a filesystem
520  <i>without</i> a disklabel, so there is only one ffs partition and no  <i>without</i> a disklabel, so there is only one ffs partition and no
521  swap. You will need to enter the following things when booting with the  swap. You will need to enter the following things when booting with the
522  generic kernel:<pre>  generic kernel:<pre>
523          root device (default wd0a): <b>wd0c</b>          root device (default wd0a): <b>wd0c</b>
524          dump device (default wd0b): <b>none</b>          dump device (default wd0b):             <i>(just press enter)</i>
525          file system (default generic): <b>ffs</b>          file system (default generic):          <i>(just press enter)</i>
526          init path (default /sbin/init):     <i>(just press enter here)</i>          init path (default /sbin/init):         <i>(just press enter)</i>
527    </pre>
528    
529    
530    
531    
532    
533    
534    
535    
536    
537    
538    
539    
540    
541    
542    <p><br>
543    <a name="netbsdalgorinstall"></a>
544    <h3>NetBSD/algor:</h3>
545    
546    <a href="http://www.netbsd.org/Ports/algor/">NetBSD/algor</a> can
547    run in GXemul on an emulated Algorithmics P5064 evaluation board.
548    
549    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
550    <a href="20060814-netbsd-algor-3.0.1.png"><img src="20060814-netbsd-algor-3.0.1_small.png"></a>
551    
552    <p>One way to install the NetBSD/algor distribution onto a disk
553    image is to install the files using another (emulated) machine.
554    
555    <p>The following instructions will let you install NetBSD/algor onto a disk
556    image, from an emulated DECstation 3MAX machine:
557    
558    <p>
559    <ol>
560      <li>Download a NetBSD/pmax (DECstation) install RAMDISK kernel:<pre>
561            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz</a>
562    </pre>
563      <p>
564      <li>Create an empty harddisk image, which will be the disk image
565            that you will install NetBSD/algor onto:<pre>
566            <b>dd if=/dev/zero of=nbsd_algor.img bs=1024 count=1 seek=700000</b>
567    
568    </pre>
569      <li>Download the P5064 Algor kernel and the 3.1 ISO image:<pre>
570            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/algor/binary/kernel/netbsd-P5064.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/algor/binary/kernel/netbsd-P5064.gz</a>
571            <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/algorcd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/algorcd-3.1.iso</a>
572    
573    </pre>
574      <p>
575      <li>Start the emulated DECstation machine like this:<pre>
576            <b>gxemul -e 3max -d nbsd_algor.img -d algorcd-3.1.iso netbsd-INSTALL.gz</b>
577    
578    </pre>
579      <li>At the <tt>Terminal type? [rcons]</tt> prompt, type <b>CTRL-B</b>
580    to simulate a CTRL-C sent to NetBSD/pmax. Then execute the following commands:
581    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
582    <b>newfs /dev/sd0c
583    mount /dev/cd0c /mnt
584    mkdir /mnt2; mount /dev/sd0c /mnt2
585    cd /mnt2; sh
586    for a in /mnt/*/binary/sets/[bcekmt]*.tgz; do echo $a; tar zxfp $a; done
587    exit
588    cd dev; sh ./MAKEDEV all; cd ../etc
589    echo rc_configured=YES >> rc.conf
590    echo "/dev/wd0c / ffs rw 1 1" > fstab
591    cd /; umount /mnt; umount /mnt2; halt</b>
592    </pre></td></tr></table>
593    </ol>
594    
595    <p>You should now be able to boot NetBSD/algor using this command:<pre>
596            <b>gxemul -x -e p5064 -d nbsd_algor.img netbsd-P5064.gz</b>
597    </pre>
598    
599    <p>The installation instructions above create a filesystem
600    <i>without</i> a disklabel, so there is only one ffs partition and no
601    swap. You will need to enter the following things when booting with the
602    generic kernel:<pre>
603            root device (default wd0a): <b>wd0c</b>
604            dump device (default wd0b):             <i>(just press enter)</i>
605            file system (default generic):          <i>(just press enter)</i>
606            init path (default /sbin/init):         <i>(just press enter)</i>
607  </pre>  </pre>
608    
609    
# Line 551  generic kernel:<pre> Line 612  generic kernel:<pre>
612    
613    
614    
615    
616    
617    
618    
619    
620  <p><br>  <p><br>
621  <a name="netbsdsgimips"></a>  <a name="netbsdsgimips"></a>
622  <h3>NetBSD/sgimips:</h3>  <h3>NetBSD/sgimips:</h3>
623    
624  <p>  <p>
625  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
626  <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>
627    
628  <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
629  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
# Line 565  emulate the AHC PCI SCSI controller in t Line 631  emulate the AHC PCI SCSI controller in t
631  several times, asking for documentation, but never received any reply.)  several times, asking for documentation, but never received any reply.)
632  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.
633    
634  <p>For a simple test with the 2.0.2 ramdisk (install) kernel, try  <p>For a simple test with the ramdisk/install kernel, try
635  dowloading<pre>  dowloading<pre>
636          <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>          <a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a>
637    
638  </pre>and run&nbsp;&nbsp;<b><tt>gxemul -e o2 netbsd-INSTALL32_IP3x.gz</tt></b>.  </pre>and run&nbsp;&nbsp;<b><tt>gxemul -x -e o2 netbsd-INSTALL32_IP3x.gz</tt></b>.
639    
640  <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
641  machine off of another emulated machine. Performing this setup is quite  machine off of another emulated machine. Performing this setup is quite
# Line 579  time consuming, but necessary: Line 645  time consuming, but necessary:
645  <ol>  <ol>
646    <li>First of all, the "<tt>nfs server</tt>" machine must be set up.    <li>First of all, the "<tt>nfs server</tt>" machine must be set up.
647          This needs to have a 750 MB <tt>/tftpboot</tt> partition.          This needs to have a 750 MB <tt>/tftpboot</tt> partition.
648          <a href="#netbsdinstall">Install NetBSD/pmax 2.0.2 from CDROM</a>.          <a href="#netbsdpmaxinstall">Install NetBSD/pmax 3.1 from CDROM</a>.
649          (Don't forget to add the extra partition!)          (Don't forget to add the extra partition!)
650    <p>    <p>
651    <li>Configure the nfs server machine to act as an nfs server.    <li>Configure the nfs server machine to act as an nfs server.
652          Start up the emulated DECstation:<pre>          Start up the emulated DECstation:<pre>
653          <b>gxemul -e 3max -A -d nbsd_pmax.img</b>          <b>gxemul -e 3max -d nbsd_pmax.img</b>
654  </pre>and enter the following commands as <tt>root</tt>  </pre>and enter the following commands as <tt>root</tt>
655          inside the emulator:          inside the emulator:
656  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
657  <b>echo hostname=server &gt;&gt; /etc/rc.conf  <b>echo hostname=server &gt;&gt; /etc/rc.conf
658  echo ifconfig_le0=\"inet 10.0.0.2\" &gt;&gt; /etc/rc.conf  echo ifconfig_le0=\"inet 10.0.0.2\" &gt;&gt; /etc/rc.conf
659  echo nameserver 10.0.0.254 &gt;&gt; /etc/resolv.conf  echo nameserver 10.0.0.254 &gt;&gt; /etc/resolv.conf
# Line 612  client:\ Line 678  client:\
678  echo 10.0.0.1 client &gt; /etc/hosts  echo 10.0.0.1 client &gt; /etc/hosts
679  reboot</b>  reboot</b>
680  </pre></td></tr></table>  </pre></td></tr></table>
681    <li>Start the DECstation emulation again, and download the    <p>
682          NetBSD/sgimips distribution sets:<br>(NOTE: This    <li>Download the NetBSD/sgimips CD-ROM iso image, and the
683          takes quite some time, even if you have a fast network connection.)          GENERIC and INSTALL kernels:<pre>
684  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/sgimipscd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/sgimipscd-3.1.iso</a>
685  <b>cd /tftpboot; ftp -i ftp.uk.netbsd.org</b>          <a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/sgimips/binary/kernel/netbsd-GENERIC32_IP3x.gz</a>
686  (log in as anonymous...)          <a href="ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-3.1/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a>
687  <b>cd /pub/NetBSD/NetBSD-2.0.2/sgimips/binary/sets  
688  mget base.tgz comp.tgz etc.tgz games.tgz man.tgz misc.tgz text.tgz  </pre>
689  quit    <li>Start the DECstation emulation again:<pre>
690  sh          <b>gxemul -e 3max -d nbsd_pmax.img -d sgimipscd-3.1.iso</b>
691  for a in *.tgz; do echo $a; tar zxfp $a; rm -f $a; done  
692    </pre>and extract the files from the sgimips CD-ROM image to the
693            DECstation disk image:
694    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
695    <b>cd /tftpboot; mount /dev/cd0a /mnt
696    for a in /mnt/sgimips/binary/sets/[bcegmt]*; do echo $a; tar zxfp $a; done
697  echo 10.0.0.2:/tftpboot / nfs rw 0 0 &gt; /tftpboot/etc/fstab  echo 10.0.0.2:/tftpboot / nfs rw 0 0 &gt; /tftpboot/etc/fstab
698  echo rc_configured=YES &gt;&gt; /tftpboot/etc/rc.conf  echo rc_configured=YES &gt;&gt; /tftpboot/etc/rc.conf
699  dd if=/dev/zero of=swap bs=1024 count=32768  echo 10.0.0.254 &gt;&gt; /tftpboot/etc/mygate
700  halt</b>  echo nameserver 10.0.0.254 &gt;&gt; /tftpboot/etc/resolv.conf
701    echo rc_configured=YES &gt;&gt; /tftpboot/etc/rc.conf
702    dd if=/dev/zero of=swap bs=1024 count=65536
703    cd /; umount /mnt; halt</b>
704  </pre></td></tr></table>  </pre></td></tr></table>
705    <li>Download the NetBSD/sgimips GENERIC and INSTALL kernels:<pre>    <p>
         <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>  
         <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>  
   
 </pre>  
706    <li>Create a configuration file called <tt>config_client</tt>:    <li>Create a configuration file called <tt>config_client</tt>:
707  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
708  <font color="#2020cf">!!gxemul  <font color="#2020cf">!  Configuration file for running NetBSD/sgimips diskless with
 !  
 !  Configuration file for running NetBSD/sgimips diskless with  
709  !  a NetBSD/pmax machine as the nfs server.</font>  !  a NetBSD/pmax machine as the nfs server.</font>
710    
711  <b>emul(  <b>    net(
     net(  
712          add_remote("localhost:12444")   </b>! the server<b>          add_remote("localhost:12444")   </b>! the server<b>
713          local_port(12445)               </b>! the client<b>          local_port(12445)               </b>! the client<b>
714      )      )
# Line 656  halt</b> Line 723  halt</b>
723          load("netbsd-INSTALL32_IP3x.gz")</b>          load("netbsd-INSTALL32_IP3x.gz")</b>
724          ! load("netbsd-GENERIC32_IP3x.gz")<b>          ! load("netbsd-GENERIC32_IP3x.gz")<b>
725      )      )
726  )</b>  </b>
727  </pre></td></tr></table>  </pre></td></tr></table>
728          ... and another configuration file for the server,          ... and another configuration file for the server,
729          <tt>config_server</tt>:          <tt>config_server</tt>:
730  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
731  <font color="#2020cf">!!gxemul</font>  <b>    net(
 <b>emul(  
     net(  
732          local_port(12444)               </b>! the server<b>          local_port(12444)               </b>! the server<b>
733          add_remote("localhost:12445")   </b>! the client<b>          add_remote("localhost:12445")   </b>! the client<b>
734      )      )
# Line 677  halt</b> Line 742  halt</b>
742    
743          disk("nbsd_pmax.img")          disk("nbsd_pmax.img")
744      )      )
745  )</b>  </b>
746  </pre></td></tr></table>  </pre></td></tr></table>
747    <li>Boot the "<tt>nfs server</tt>" and the NetBSD/sgimips    <li>Boot the "<tt>nfs server</tt>" and the NetBSD/sgimips
748          "<tt>client machine</tt>" as two separate emulator instances:<pre>          "<tt>client machine</tt>" as two separate emulator instances:<pre>
# Line 745  to IPv4. Line 810  to IPv4.
810  It is possible to install and run  It is possible to install and run
811  <a href="http://www.netbsd.org/Ports/cats/">NetBSD/cats</a> in GXemul.  <a href="http://www.netbsd.org/Ports/cats/">NetBSD/cats</a> in GXemul.
812    
813  <p>  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  
814  <a href="20051007-netbsd-cats-installed.png"><img src="20051007-netbsd-cats-installed_small.png"></a>  <a href="20051007-netbsd-cats-installed.png"><img src="20051007-netbsd-cats-installed_small.png"></a>
815    
816  <p>  <p>
# Line 756  To install NetBSD/cats onto a disk image Line 820  To install NetBSD/cats onto a disk image
820  <ol start="1">  <ol start="1">
821    <li>Create an empty harddisk image, which will be the root disk    <li>Create an empty harddisk image, which will be the root disk
822          that you will install NetBSD/cats onto:<pre>          that you will install NetBSD/cats onto:<pre>
823          <b>dd if=/dev/zero of=nbsd_cats.img bs=1024 count=1 seek=1990000</b>          <b>dd if=/dev/zero of=nbsd_cats.img bs=1024 count=1 seek=3000000</b>
824    
825  </pre>  </pre>
826    <li>Download the NetBSD/cats 2.0.2 ISO image and generic + install kernels:<pre>    <li>Download the NetBSD/cats 3.1 ISO image and the generic and install kernels:<pre>
827          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/catscd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/catscd.iso</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/catscd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/catscd-3.1.iso</a>
828          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cats/binary/kernel/netbsd.aout-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cats/binary/kernel/netbsd.aout-GENERIC.gz</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-GENERIC.gz</a>
829          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cats/binary/kernel/netbsd.aout-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/cats/binary/kernel/netbsd.aout-INSTALL.gz</a>          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-INSTALL.gz</a>
830    
831  </pre>  </pre>
832    <p>    <p>
833    <li>Start the installation like this:<pre>    <li>Start the installation like this:<pre>
834          <b>gxemul -XEcats -d nbsd_cats.img -d catscd.iso netbsd.aout-INSTALL.gz</b>          <b>gxemul -XEcats -d nbsd_cats.img -d catscd-3.1.iso netbsd.aout-INSTALL.gz</b>
835    
836  </pre>  </pre>
837          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
838          CATS from CDROM. (Install onto wd0, and choose wd1c (not cd0c) as the          CATS from CDROM.
         CDROM device to install from.)  
839  </ol>  </ol>
840    
841    <p>Alternatively, to install from FTP, you can skip downloading the ISO,
842    and start the install without <tt>-d catscd-3.1.iso</tt>. Suitable network
843    settings are IP 10.0.0.1, gateway/default route 10.0.0.254, netmask
844    255.0.0.0, nameserver 10.0.0.254.
845    
846  <p>If everything worked, NetBSD should now be installed on the disk image.  <p>If everything worked, NetBSD should now be installed on the disk image.
847  Use the following command line to boot the emulated CATS machine:<pre>  Use the following command line to boot the emulated CATS machine:<pre>
848          <b>gxemul -XEcats -d nbsd_cats.img netbsd.aout-GENERIC.gz</b>          <b>gxemul -XEcats -d nbsd_cats.img netbsd.aout-GENERIC.gz</b>
849    
850  </pre>  </pre>
851    
 <p>When asked for root device, enter <tt>wd0</tt>.  
852    
853    
854    
# Line 789  Use the following command line to boot t Line 856  Use the following command line to boot t
856    
857    
858  <p><br>  <p><br>
859  <a name="openbsdinstall"></a>  <a name="netbsdevbarminstall"></a>
860    <h3>NetBSD/evbarm:</h3>
861    
862    <a href="http://www.netbsd.org/Ports/evbarm/">NetBSD/evbarm</a> can
863    run in GXemul on an emulated IQ80321 evaluation board.
864    
865    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
866    <a href="20060218-netbsd-evbarm.png"><img src="20060218-netbsd-evbarm_small.png"></a>
867    
868    <p>It is tricky to install, because there is (as far as I know) no INSTALL
869    kernel. One way to install the NetBSD/evbarm distribution onto a disk
870    image is to install the files using another (emulated) machine.
871    
872    <p>The following instructions will let you install NetBSD/evbarm onto a disk
873    image, from an emulated CATS machine:
874    
875    <p>
876    <ol>
877      <li>Install NetBSD/cats 3.1 according to instructions
878            <a href="#netbsdcatsinstall">further up on this page</a>.
879      <p>
880      <li>Create an empty harddisk image, which will be the disk image
881            that you will install NetBSD onto:<pre>
882            <b>dd if=/dev/zero of=nbsd_iq80321.img bs=1024 count=1 seek=999000</b>
883    
884    </pre>
885      <li>Download an IQ80321 kernel with wdc support, and the 2.1 ISO image:<pre>
886            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/evbarm/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/evbarm/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/evbarm/binary/kernel/netbsd-wd0-IQ80321.gz">netbsd-wd0-IQ80321.gz</a>
887            <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.1/evbarmcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.1/evbarmcd.iso</a>
888    
889    </pre>
890      <p>
891      <li>The first step is to copy the distribution .tgz files onto the CATS
892            machine's harddisk. Start the CATS machine like this:<pre>
893            <b>gxemul -XEcats -d nbsd_cats.img -d evbarmcd.iso netbsd.aout-GENERIC.gz</b>
894    
895    </pre>and execute the following commands as <tt>root</tt>:
896    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
897    <b>mount /dev/cd0a /mnt; cd /root; cp /mnt/evbarm/binary/sets/[bcegmt]* .
898    sync; halt</b>
899    </pre></td></tr></table>
900      <p>
901      <li>Now let's extract the files onto the IQ80321's disk image. Start the
902            CATS machine again, with the following command line:<pre>
903            <b>gxemul -XEcats -d nbsd_cats.img -d nbsd_iq80321.img netbsd.aout-GENERIC.gz</b>
904    
905    </pre>and execute the following commands as <tt>root</tt>:
906    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
907    <b>disklabel -I -i wd1</b>
908        (enter suitable commands, e.g. <i>a, 4.2BSD, 1c, 750M, b,
909         swap, a, 200M, P, W, y, Q</i>)
910    <b>newfs /dev/wd1a; mount /dev/wd1a /mnt; cd /mnt; sh
911    for a in /root/[bcegmt]*.tgz; do echo $a; tar zxfp $a; done
912    exit
913    cd dev; sh ./MAKEDEV all; cd ../etc
914    echo rc_configured=YES &gt;&gt; rc.conf
915    echo "/dev/wd0a / ffs rw 1 1" &gt; fstab
916    echo "/dev/wd0b none swap sw 0 0" &gt;&gt; fstab
917    cd /; umount /mnt; sync; halt</b>
918    </pre></td></tr></table>
919    </ol>
920    
921    <p>You should now be able to boot NetBSD/evbarm using this command:<pre>
922            <b>gxemul -xEiq80321 -d nbsd_iq80321.img netbsd-wd0-IQ80321.gz</b>
923    </pre>
924    
925    
926    
927    
928    
929    
930    
931    
932    
933    <p><br>
934    <a name="netbsdnetwinderinstall"></a>
935    <h3>NetBSD/netwinder:</h3>
936    
937    It is possible to run <a
938    href="http://www.netbsd.org/Ports/netwinder/">NetBSD/netwinder</a>
939    in GXemul.
940    
941    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
942    <a href="20060724-netbsd-netwinder-1.png"><img src="20060724-netbsd-netwinder-1_small.png"></a>
943    &nbsp;&nbsp;&nbsp;<a href="20060724-netbsd-netwinder-2.png"><img src="20060724-netbsd-netwinder-2_small.png"></a>
944    
945    <p>There is no INSTALL ramdisk kernel, so one way to install the
946    NetBSD/netwinder distribution onto a disk image is to install the files
947    using another (emulated) machine. The following instructions will let you
948    install the NetBSD/netwinder distribution onto a disk image, from an
949    emulated DECstation 3MAX machine:
950    
951    <p>
952    <ol>
953      <li>Download a NetBSD/pmax (DECstation) install RAMDISK kernel:<pre>
954            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/pmax/binary/kernel/netbsd-INSTALL.gz</a>
955    </pre>
956      <p>
957      <li>Create an empty harddisk image, which will be the disk image
958            that you will install NetBSD onto:<pre>
959            <b>dd if=/dev/zero of=nbsd_netwinder.img bs=1024 count=1 seek=999000</b>
960    
961    </pre>
962      <li>Download the generic kernel and the 3.1 ISO image:<pre>
963            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/netwinder/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/netwinder/binary/kernel/netbsd-GENERIC.gz</a>
964            <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/netwindercd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/netwindercd-3.1.iso</a>
965    
966    </pre>
967      <p>
968      <li>Start the emulated DECstation machine like this:<pre>
969            <b>gxemul -e 3max -d nbsd_netwinder.img -d netwindercd-3.1.iso netbsd-INSTALL.gz</b>
970    
971    </pre>
972      <li>At the <tt>Terminal type? [rcons]</tt> prompt, type <b>CTRL-B</b>
973    to simulate a CTRL-C sent to NetBSD/pmax. Then execute the following commands:
974    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
975    <b>newfs /dev/sd0c
976    mount /dev/cd0c /mnt
977    mkdir /mnt2; mount /dev/sd0c /mnt2
978    cd /mnt2; sh
979    for a in /mnt/*/binary/sets/*.tgz; do echo $a; tar zxfp $a; done
980    exit
981    cd dev; sh ./MAKEDEV all; cd ../etc
982    echo rc_configured=YES >> rc.conf
983    echo "/dev/wd0c / ffs rw 1 1" > fstab
984    cd /; umount /mnt; umount /mnt2; halt</b>
985    </pre></td></tr></table>
986    </ol>
987    
988    <p>NetBSD/netwinder is now installed on the disk image. The following command
989    line can be used to start NetBSD/netwinder:<pre>
990            <b>gxemul -X -E netwinder -d nbsd_netwinder.img netbsd-GENERIC.gz</b>
991    </pre>
992    
993    <p>This will result in a 1024x768 framebuffer. Add <tt>-Y2</tt> to the
994    command line if you want to scale it down to 512x384.
995    
996    <p>Note: The installation instructions above create a filesystem
997    <i>without</i> a disklabel, so there is only one ffs partition and no
998    swap. You will need to enter the following things when booting with the
999    generic kernel:<pre>
1000            root device (default wd0a): <b>wd0c</b>
1001            dump device (default wd0b): <i>(just press enter)</i>
1002            file system (default generic):    <i>(just press enter)</i>
1003            init path (default /sbin/init):   <i>(just press enter)</i>
1004    </pre>
1005    
1006    <p>Known bugs/problems:
1007    
1008    <ul>
1009            <li>There is a long delay when starting up NetBSD/netwinder
1010                    (several seconds even on a very fast host machine),
1011                    so you need to be patient.
1012            <li>There is a minor bug in the keyboard device, so you need to
1013                    press a key (any key) before typing wd0c.
1014            <li>When halting/rebooting NetBSD/netwinder, the emulator
1015                    prints a message saying something about an internal
1016                    error. This doesn't matter; ignore the message.
1017    </ul>
1018    
1019    
1020    
1021    
1022    
1023    
1024    
1025    
1026    
1027    
1028    
1029    
1030    <p><br>
1031    <a name="netbsdprepinstall"></a>
1032    <h3>NetBSD/prep:</h3>
1033    
1034    It is possible to install and run <a
1035    href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a> 2.1 in GXemul on
1036    an emulated IBM 6050 (PowerPC) machine. (Newer versions of NetBSD/prep use
1037    the wdc controller in a way which isn't implemented in GXemul yet, or
1038    there are bugs in GXemul's PowerPC CPU emulation.)
1039    
1040    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1041    <a href="20051123-netbsd-prep.png"><img src="20051123-netbsd-prep_small.png"></a>
1042    
1043    <p>To install NetBSD/prep onto a disk image, follow these instructions:
1044    
1045    <p>
1046    <ol start="1">
1047      <li>Create an empty harddisk image, which will be the root disk
1048            that you will install NetBSD/prep onto:<pre>
1049        <b>dd if=/dev/zero of=nbsd_prep.img bs=1024 count=1 seek=1000000</b>
1050    
1051    </pre>
1052      <li>Download the NetBSD/prep 2.1 ISO image and the generic kernel:<pre>
1053        <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.1/prepcd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.1/prepcd.iso</a>
1054        <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/prep/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/prep/binary/kernel/netbsd-GENERIC.gz</a>
1055    
1056    </pre>
1057      <p>
1058      <li>Start the installation like this:<pre>
1059        <b>gxemul -X -e ibm6050 -d nbsd_prep.img -d rdb:prepcd.iso -j prep/binary/kernel/netbsd-INSTALL.gz</b>
1060    
1061    </pre>
1062      <p>
1063      <li>Installation is a bit unsmooth, possibly due to bugs in GXemul,
1064            possibly due to bugs in NetBSD itself; others have been having
1065            problems on real hardware: <a href="http://mail-index.NetBSD.org/port-prep/2005/11/25/0004.html">http://mail-index.NetBSD.org/port-prep/2005/11/25/0004.html</a>.
1066            Creating an MBR slice and a disklabel with sysinst bugs out, so
1067            some things have to be done manually:<p>
1068            At "<tt>(I)nstall, (S)hell, or (H)alt</tt>", choose
1069                    <tt><b><u>s</u></b></tt>.
1070            <br><tt># <b><u>fdisk -u wd0</u></b></tt>
1071            <br><tt>Do you want to change our idea of what BIOS thinks? [n]</tt>
1072                    (just press <b>ENTER</b>)
1073            <br><tt>Which partition do you want to change?: [none] <b><u>0</u></b></tt>
1074            <br><tt>sysid: ... </tt> (just press <B>ENTER</b>)
1075            <br><tt>start: ... <b><u>1cyl</u></b></tt>
1076            <br><tt>size: ... </tt> (just press <B>ENTER</b>)
1077            <br><tt>Which partition do you want to change?: [none]</tt> (press <b>ENTER</b>)
1078            <br><tt>Should we write new partition table? [n] <b><u>y</u></b></tt>
1079            <br><tt># <b><u>disklabel -I -i wd0</u></b></tt>
1080            <br><tt>partition&gt; <b><u>a</u></b></tt>
1081            <br><tt>Filesystem type [?] [unused]: <b><u>4.2BSD</u></b></tt>
1082            <br><tt>Start offset ('x' to start after partition 'x') [0c, 0s, 0M]: <b><u>1c</u></b></tt>
1083            <br><tt>Partition size ('$' for all remaining) [0c, 0s, 0M]: <b><u>900M</u></b></tt>
1084            <br><tt>partition&gt; <b><u>b</u></b></tt>
1085            <br><tt>Filesystem type [?] [unused]: <b><u>swap</u></b></tt>
1086            <br><tt>Start offset ('x' to start after partition 'x') [0c, 0s, 0M]: <b><u>a</u></b></tt>
1087            <br><tt>Partition size ('$' for all remaining) [0c, 0s, 0M]: <b><u>$</u></b></tt>
1088            <br><tt>partition&gt; <b><u>W</u></b></tt>
1089            <br><tt>Label disk [n]? <b><u>y</u></b></tt>
1090            <br><tt>partition&gt; <b><u>Q</u></b></tt>
1091            <br><tt># <b><u>newfs wd0a</u></b></tt>
1092            <br><tt># <b><u>sysinst</u></b></tt>
1093            <br>Choose to install onto <b>wd0</b>. Choose
1094                    "<tt>a: Edit the MBR partition table</tt>"
1095                    when presented with that option.
1096            <br>Choose the 'a' partition/slice,
1097                    set the 'e' ("active") and 'f' ("install") fields to <b>Yes</b>,
1098                    and then choose "<tt>x: Partition table OK</tt>".
1099            <br>Choose "<tt>b: Use existing partition sizes</tt>" in the next
1100                    menu.
1101            <br>Select partition 'a' and press ENTER. Set field 'k' (mount point)
1102                    to '<tt><b>/</b></tt>'.
1103            <br>Get out of the partitioner by selecting
1104                    "<tt>x: Partition sizes ok</tt>" twice.
1105            <br>At "<tt>Write outside MBR partition? [n]:</tt>", just press
1106                    <b>ENTER</b>.
1107            <br>Install from CD-ROM, device <b>wd1c</b>.
1108    </ol>
1109    
1110    <p>If everything worked, NetBSD should now be installed on the disk image.
1111    Use the following command line to boot the emulated machine:<pre>
1112            <b>gxemul -X -e ibm6050 -d nbsd_prep.img netbsd-GENERIC.gz</b>
1113    
1114    </pre>
1115    
1116    <p>When asked which the root device is, type <tt><b>wd0</b></tt> and
1117    just press ENTER to select the default values for dump device, file
1118    system type, and init path.
1119    
1120    
1121    
1122    
1123    
1124    
1125    
1126    
1127    
1128    
1129    
1130    
1131    <p><br>
1132    <a name="netbsdmacppcinstall"></a>
1133    <h3>NetBSD/macppc:</h3>
1134    
1135    It is possible to install and run <a
1136    href="http://www.netbsd.org/Ports/macppc/">NetBSD/macppc</a> in GXemul on
1137    an emulated generic PowerPC machine. No specific Machintosh model is
1138    emulated, but it is enough to for NetBSD to recognize it.
1139    
1140    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1141    <a href="20070318-netbsd-macppc.png"><img src="20070318-netbsd-macppc_small.png"></a>
1142    
1143    <p>To install NetBSD/macppc onto a disk image, follow these instructions:
1144    
1145    <p>
1146    <ol start="1">
1147      <li>Create an empty harddisk image, which will be the root disk
1148            that you will install NetBSD/macppc onto:<pre>
1149        <b>dd if=/dev/zero of=nbsd_macppc.img bs=1024 count=1 seek=3000000</b>
1150    
1151    </pre>
1152      <li>Download the NetBSD/macppc 3.1 ISO image and a generic kernel:<pre>
1153        <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/macppccd-3.1.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/3.1/macppccd-3.1.iso</a>
1154        <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/macppc/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/macppc/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/macppc/binary/kernel/netbsd-GENERIC.MP.gz">netbsd-GENERIC.MP.gz</a>
1155    
1156    </pre>
1157      <p>
1158      <li>Start the installation like this:<pre>
1159        <b>gxemul -x -e g4 -d nbsd_macppc.img -d b:macppccd-3.1.iso -j macppc/binary/kernel/netbsd-INSTALL.gz</b>
1160    
1161    </pre>
1162            and continue as you would do when installing NetBSD on a real
1163            machine.
1164      <p>
1165      <li>Before turning the emulated machine off, quit the NetBSD installer
1166            and execute the following commands:<pre>
1167            <b>cd /; mount /dev/wd0a /mnt
1168            echo 'console "/usr/libexec/getty std.38400" vt100 on secure' > /mnt/etc/ttys
1169            echo 'rc_configured=YES' >> /mnt/etc/rc.conf
1170            umount /mnt; sync
1171            reboot</b>
1172    
1173    </pre>
1174    </ol>
1175    
1176    <p>If everything worked, NetBSD/macppc should now be installed on
1177    the disk image.
1178    
1179    <p>Use the following command line to boot the emulated machine:<pre>
1180            <b>gxemul -x -e g4 -d nbsd_macppc.img netbsd-GENERIC.MP.gz</b>
1181    
1182    </pre>
1183    
1184    <p>If asked about <tt>root device</tt>, enter <tt><b>wd0</b></tt>.
1185    
1186    
1187    
1188    
1189    
1190    
1191    
1192    
1193    
1194    
1195    
1196    
1197    
1198    <p><br>
1199    <a name="netbsddreamcast"></a>
1200    <h3>NetBSD/dreamcast:</h3>
1201    
1202    Moved <a href="dreamcast.html#netbsd_generic_md">here</a>.
1203    
1204    
1205    
1206    
1207    
1208    
1209    
1210    
1211    
1212    
1213    
1214    
1215    
1216    
1217    <p><br>
1218    <a name="openbsdpmaxinstall"></a>
1219  <h3>OpenBSD/pmax:</h3>  <h3>OpenBSD/pmax:</h3>
1220    
1221  Installing <a href="http://www.openbsd.org/pmax.html">OpenBSD/pmax</a> is  Installing <a href="http://www.openbsd.org/pmax.html">OpenBSD/pmax</a> is
1222  a bit harder than installing NetBSD/pmax. You should first read the <a  a bit harder than installing NetBSD/pmax. You should first read the <a
1223  href="#netbsdinstall">section above</a> on how to install NetBSD/pmax,  href="#netbsdpmaxinstall">section above</a> on how to install NetBSD/pmax,
1224  before continuing here. If you have never installed OpenBSD on any  before continuing here. If you have never installed OpenBSD on any
1225  architecture, then you need a great deal of patience to do this. If, on  architecture, then you need a great deal of patience to do this. If, on
1226  the other hand you are used to installing OpenBSD, then this should be no  the other hand you are used to installing OpenBSD, then this should be no
# Line 838  chmod +w simpleroot28.fs</b>           &lt;--- ma Line 1264  chmod +w simpleroot28.fs</b>           &lt;--- ma
1264          already have <tt>mkisofs</tt> installed on your system, you need          already have <tt>mkisofs</tt> installed on your system, you need
1265          to install it in order to do this.)<pre>          to install it in order to do this.)<pre>
1266          <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>
1267            <b>rm -rf ftp.se.openbsd.org</b>      <i>(this directory is not needed anymore)</i>
1268    
1269  </pre>  </pre>
1270    <li>Start the emulator with all three (!) disk images:<pre>    <li>Start the emulator with all three (!) disk images:<pre>
1271          <b>gxemul -e 3max -A -M64 -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>
1272    
1273  </pre>  </pre>
1274          (If you add <tt>-X</tt>, you will run with the graphical          (If you add <tt>-X</tt>, you will run with the graphical
# Line 860  chmod +w simpleroot28.fs</b>           &lt;--- ma Line 1287  chmod +w simpleroot28.fs</b>           &lt;--- ma
1287            <li>At the # prompt, do the following:<pre>            <li>At the # prompt, do the following:<pre>
1288          <b>fsck /dev/rz1a</b>        (and mark the filesystem as clean)          <b>fsck /dev/rz1a</b>        (and mark the filesystem as clean)
1289          <b>mount /dev/rz1a /</b>          <b>mount /dev/rz1a /</b>
1290            <b>mkdir /kern</b>
1291            <b>mkdir /mnt2</b>
1292          <b>mount -t kernfs kern kern</b>          <b>mount -t kernfs kern kern</b>
1293          <b>./install</b>          <b>./install</b>
1294    
# Line 876  chmod +w simpleroot28.fs</b>           &lt;--- ma Line 1305  chmod +w simpleroot28.fs</b>           &lt;--- ma
1305          password! The first time you boot up OpenBSD after the install, you          password! The first time you boot up OpenBSD after the install, you
1306          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
1307          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>
1308          <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>
1309  </pre>  </pre>
1310  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
1311  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
# Line 910  root password, and so on. Line 1339  root password, and so on.
1339  Once you have completed the installation procedure, the following command  Once you have completed the installation procedure, the following command
1340  will let you boot from the new rootdisk image:  will let you boot from the new rootdisk image:
1341  <pre>  <pre>
1342          <b>gxemul -e 3max -X -M64 -o '-aN' -d obsd_pmax.img -j bsd</b>          <b>gxemul -e 3max -X -o '-aN' -d obsd_pmax.img -j bsd</b>
1343  </pre>  </pre>
1344    
1345  <p>  <p>
# Line 929  enter <b><tt>rcons</tt></b> if you are u Line 1358  enter <b><tt>rcons</tt></b> if you are u
1358    
1359    
1360    
 <p><br>  
 <a name="openbsdarcinstall"></a>  
 <h3>OpenBSD/arc:</h3>  
   
 It is possible to install and run OpenBSD/arc on an emulated Acer PICA-61  
 in the emulator.  
   
 <p>  
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  
 <a href="20041024-openbsd-arc-installed.gif"><img src="20041024-openbsd-arc-installed_small.gif"></a>  
   
 <p>  
 (You should be aware of the fact that OpenBSD for the ARC platform died at  
 release 2.3, so this will not give you an up-to-date OpenBSD system.  
 See  
 <a href="http://www.openbsd.org/arc.html">http://www.openbsd.org/arc.html</a>  
 for more information.)  
   
 <p>  
 To install OpenBSD/arc onto an emulated harddisk image, follow these  
 instructions:  
   
 <p>  
 <ol>  
   <li>Create an empty harddisk image, which will be the root disk  
         that OpenBSD installs itself onto:<pre>  
         <b>dd if=/dev/zero of=obsd_arc.img bs=1024 count=1 seek=700000</b>  
   
 </pre>  
   <li>Download the entire arc directory from the ftp server: (approx. 75 MB)<pre>  
         <b>wget -np -l 0 -r <a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/">ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/</a></b>  
   
 </pre>  
   
   <li>You now need to make an ISO image of the entire directory you downloaded.  
         (I recommend using <tt>mkisofs</tt> for that purpose. If you don't  
         already have <tt>mkisofs</tt> installed on your system, you need  
         to install it in order to do this.)<pre>  
         <b>mkisofs -o openbsd_arc_2.3.iso ftp.se.openbsd.org/pub/OpenBSD/</b>  
   
 </pre>  
   <li>Start the emulator using this command line:<pre>  
         <b>gxemul -e pica -X -A -d obsd_arc.img -d b:openbsd_arc_2.3.iso -j 2.3/arc/bsd.rd</b>  
   
 </pre>  
         and proceed like you would do if you were installing OpenBSD  
         on a real Acer PICA-61. (Answer 'no' when asked if you want to  
         configure networking, and then install from CD-ROM.)  
 </ol>  
   
 <p>  
 Once the install has finished, the following command should let you  
 boot from the harddisk image:  
 <p>  
 <pre>  
         <b>gxemul -X -e pica -d obsd_arc.img ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd</b>  
   
 </pre>  
   
   
   
   
   
   
1361    
1362    
1363  <p><br>  <p><br>
# Line 1001  boot from the harddisk image: Line 1366  boot from the harddisk image:
1366    
1367  It is possible to install and run  It is possible to install and run
1368  <a href="http://www.openbsd.org/cats.html">OpenBSD/cats</a>  <a href="http://www.openbsd.org/cats.html">OpenBSD/cats</a>
1369  in GXemul.  in GXemul. Unfortunately, "The OpenBSD/cats port has been discontinued
1370    after the 4.0 release." according to
1371    <a href="http://www.openbsd.org/cats.html">http://www.openbsd.org/cats.html</a>,
1372    but 4.0 should run fine.
1373    
1374  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1375  <a href="20051007-openbsd-cats-installed.png"><img src="20051007-openbsd-cats-installed_small.png"></a>  <a href="20051007-openbsd-cats-installed.png"><img src="20051007-openbsd-cats-installed_small.png"></a>
# Line 1017  follow these instructions: Line 1385  follow these instructions:
1385    
1386  </pre>  </pre>
1387    <li>Download the entire cats directory from the ftp server:<pre>    <li>Download the entire cats directory from the ftp server:<pre>
1388          <b>wget -np -l 0 -r <a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.7/cats/">ftp://ftp.openbsd.org/pub/OpenBSD/3.7/cats/</a></b>          <b>wget -np -l 0 -r <a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/4.0/cats/">ftp://ftp.se.openbsd.org/pub/OpenBSD/4.0/cats/</a></b>
1389          <b>cp ftp.openbsd.org/pub/OpenBSD/3.7/cats/bsd .</b>          <b>cp ftp.se.openbsd.org/pub/OpenBSD/4.0/cats/bsd .</b>
1390          <b>cp ftp.openbsd.org/pub/OpenBSD/3.7/cats/bsd.rd .</b>          <b>cp ftp.se.openbsd.org/pub/OpenBSD/4.0/cats/bsd.rd .</b>
1391    
1392  </pre>  </pre>
1393            (Replace ftp.se.openbsd.org with a server closer to you, for
1394            increased download speed.)
1395      <p>
1396    <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.
1397          (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
1398          already have <tt>mkisofs</tt> installed on your system, you need          already have <tt>mkisofs</tt> installed on your system, you need
1399          to install it in order to do this.)<pre>          to install it in order to do this.)<pre>
1400          <b>mkisofs -allow-lowercase -o openbsd_cats_3.7.iso ftp.openbsd.org/pub/OpenBSD/3.7/cats</b>          <b>mkisofs -allow-lowercase -o openbsd_cats_4.0.iso ftp.se.openbsd.org/pub/OpenBSD/</b>
1401            <b>rm -rf ftp.se.openbsd.org</b>      <i>(this directory is not needed anymore)</i>
1402    
1403  </pre>  </pre>
1404    <li>Start the emulator using this command line:<pre>    <li>Start the emulator using this command line:<pre>
1405          <b>gxemul -XEcats -d obsd_cats.img -d openbsd_cats_3.7.iso bsd.rd</b>          <b>gxemul -XEcats -d obsd_cats.img -d openbsd_cats_4.0.iso bsd.rd</b>
1406    
1407  </pre>  </pre>
1408          and proceed like you would do if you were installing OpenBSD          and proceed like you would do if you were installing OpenBSD
1409          on a real CATS. (Install onto <tt>wd0</tt>, don't configure the          on a real CATS. (Install onto <tt>wd0</tt>, don't configure the
1410          network, choose to install distribution sets from <i>disk</i>          network, install from CD.)
         <tt>wd1</tt> (i.e. not CDROM) partition '<tt>a</tt>',  
         relative path '<tt>/</tt>'.)  
1411  </ol>  </ol>
1412    
1413    <p>(Although it <i>is</i> possible to configure the network, IPv4 address
1414    10.0.0.1, netmask 255.0.0.0, gateway/default route 10.0.0.254, and
1415    nameserver 10.0.0.254, the userland NAT-like networking layer is not
1416    stable enough yet to support a full install via ftp.)
1417    
1418  <p><b>NOTE:</b> Make sure that you <tt>sync</tt> and <tt>reboot</tt>  <p><b>NOTE:</b> Make sure that you <tt>sync</tt> and <tt>reboot</tt>
1419  correctly once the installation is finished, or the <tt>/dev</tt> nodes  correctly once the installation is finished, or the <tt>/dev</tt> nodes
1420  may not have been written correctly to disk.  may not have been written correctly to disk.
# Line 1064  boot from the harddisk image: Line 1438  boot from the harddisk image:
1438  <h3>Ultrix/RISC:</h3>  <h3>Ultrix/RISC:</h3>
1439    
1440  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.
1441  (Ultrix was the native OS for these machines, but NetBSD/pmax is  (Ultrix was the native OS for these machines, but
1442  also usable.)  <a href="#netbsdpmaxinstall">NetBSD/pmax</a> is also usable.)
1443    
1444  <p>  <p>
1445  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1446  <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>
1447  &nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;
1448  <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>
1449    
1450  <p>  <p>
1451  The following instructions should let you install Ultrix onto a disk image:  The following instructions should let you install Ultrix onto a disk image:
# Line 1086  The following instructions should let yo Line 1460  The following instructions should let yo
1460          (On FreeBSD and similar systems, it is called <tt>/dev/cd0c</tt>.          (On FreeBSD and similar systems, it is called <tt>/dev/cd0c</tt>.
1461          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
1462          .iso image file.) Then, start the emulator like this:<pre>          .iso image file.) Then, start the emulator like this:<pre>
1463          <b>gxemul -X -A -M64 -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>
1464    
1465  </pre>  </pre>
1466    <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
# Line 1094  The following instructions should let yo Line 1468  The following instructions should let yo
1468          new rootdisk, to continue the installation process.          new rootdisk, to continue the installation process.
1469          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
1470          diskimage argument:<pre>          diskimage argument:<pre>
1471          <b>gxemul -X -A -M64 -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>
1472    
1473  </pre>  </pre>
1474  </ol>  </ol>
# Line 1102  The following instructions should let yo Line 1476  The following instructions should let yo
1476  <p>  <p>
1477  When the installation is completed, the following command should start    When the installation is completed, the following command should start  
1478  Ultrix from the harddisk image:<pre>  Ultrix from the harddisk image:<pre>
1479          <b>gxemul -X -A -M64 -e 3max -j vmunix -d rootdisk.img</b>          <b>gxemul -X -e 3max -j vmunix -d rootdisk.img</b>
1480  </pre>  </pre>
1481    
1482  <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  
1483  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
1484  triggered when the emulation goes faster than any real DECstation machine  triggered when the emulation goes faster than any real DECstation machine
1485  was capable of running. A temporary workaround is to add  was capable of running. A temporary workaround is to add
1486  <b><tt>-I33000000</tt></b> to fix the emulated clock speed to 33 million  <b><tt>-I33000000</tt></b> to fix the emulated clock speed to 33 million
1487  instructions per emulated second. (When using <tt><b>-CR4400</b></tt>,  instructions per emulated second.
 <b><tt>-I16000000</tt></b> should be used instead.)  
1488    
1489  <p>  <p>If the workaround above doesn't work, you can also start up other
1490  You can experiment with adding <b><tt>-Z2</tt></b> (for emulating a  processes on the host, apart from the emulator, so that the emulator runs
1491    more slowly. This is an ugly workaround, but seems to work. Once you have
1492    logged in into Ultrix, you can kill the extra processes.
1493    
1494    <p>You can experiment with adding <b><tt>-Z2</tt></b> (for emulating a
1495  dual-headed workstation) or even <b><tt>-Z3</tt></b> (tripple-headed), and  dual-headed workstation) or even <b><tt>-Z3</tt></b> (tripple-headed), and
1496  also the <b><tt>-Y2</tt></b> option for scaling down the framebuffer  also the <b><tt>-Y2</tt></b> option for scaling down the framebuffer
1497  windows by a factor 2x2.  windows by a factor 2x2.
# Line 1124  There is also a <b><tt>-z</tt></b> optio Line 1499  There is also a <b><tt>-z</tt></b> optio
1499  displays to use. The following example starts Ultrix on an emulated  displays to use. The following example starts Ultrix on an emulated
1500  tripple-headed workstation, on three different displays (<tt>remote1:0.0</tt>,  tripple-headed workstation, on three different displays (<tt>remote1:0.0</tt>,
1501  <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>
1502          <b>gxemul -M64 -N -e 3max -jgenvmunix -d rootdisk.img \          <b>gxemul -N -e 3max -jgenvmunix -d rootdisk.img \
1503              -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>
1504  </pre>  </pre>
1505    
1506  <p>  <p>The photo below shows a single Ultrix session running tripple-headed in
 The photo below shows a single Ultrix session running tripple-headed in  
1507  GXemul on an Alpha 21164PC, with displays on a Sun Ultra1 (to the left),  GXemul on an Alpha 21164PC, with displays on a Sun Ultra1 (to the left),
1508  on the Alpha itself (in the middle), and on an HP700/RX X-terminal (8-bit  on the Alpha itself (in the middle), and on an HP700/RX X-terminal (8-bit
1509  color depth, running off the Alpha) to the right.  color depth, running off the Alpha) to the right.
1510    
1511  <p>  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  
1512  <a href="20041209-ultrix-tripplehead.jpg"><img src="20041209-ultrix-tripplehead_small.jpg"></a>  <a href="20041209-ultrix-tripplehead.jpg"><img src="20041209-ultrix-tripplehead_small.jpg"></a>
1513    
1514  <p>  <p>The X11 displays may differ in bit depth and endianness. Unfortunately,
 The X11 displays may differ in bit depth and endianness. Unfortunately,  
1515  there is no way yet to set the scaledown factor on a per-window basis, so  there is no way yet to set the scaledown factor on a per-window basis, so
1516  the scaledown factor affects all windows.  the scaledown factor affects all windows.
1517    
1518  <p>  <p>(If you didn't use <tt><b>-Z<i>n</i></b></tt> during the installation, and
 (If you didn't use <tt><b>-Z<i>n</i></b></tt> during the installation, and  
1519  compiled your own <tt>/vmunix</tt>, then it will not contain support for  compiled your own <tt>/vmunix</tt>, then it will not contain support for
1520  multiple graphics cards. To overcome this problem, use the generic kernel,  multiple graphics cards. To overcome this problem, use the generic kernel,
1521  <tt><b>-j genvmunix</b></tt>, whenever you are running the emulator with a  <tt><b>-j genvmunix</b></tt>, whenever you are running the emulator with a
1522  different setup than the one you used when Ultrix was installed.)  different setup than the one you used when Ultrix was installed.)
1523    
1524  <p>  <p>A note for the historically interested: OSF/1 for MIPS was quite similar
 A note for the historically interested: OSF/1 for MIPS was quite similar  
1525  to Ultrix, so that is possible to run as well.  If you are unsuccessful  to Ultrix, so that is possible to run as well.  If you are unsuccessful
1526  in installing Ultrix or OSF/1 directly in the emulator, you can always  in installing Ultrix or OSF/1 directly in the emulator, you can always
1527  install it on your real machine onto a real SCSI disk, and then copy the  install it on your real machine onto a real SCSI disk, and then copy the
# Line 1231  start the X11 environment. Line 1601  start the X11 environment.
1601  <a name="declinux"></a>  <a name="declinux"></a>
1602  <h3>Debian GNU/Linux for DECstation:</h3>  <h3>Debian GNU/Linux for DECstation:</h3>
1603    
1604  <font color="#ef0000">NOTE: This is experimental, and <i>extremely</i>  It is possible to run Debian GNU/Linux for DECstation in the emulator,
1605  unstable. During my tests, even pressing the wrong key during the install  on an emulated 5000/200 ("3max"). However, just choosing any
1606  (for example the wrong cursor key) can cause a kernel Oops. My success  Linux/DECstation kernel at random for the installation will not work.
1607  rate is probably around 50%.</font>  
1608    <p><ul>
1609  <p><font color="#ef0000">I <i>think</i> this has to do with interrupts    <li>Linux 2.4/DECstation DZ serial console output doesn't work too well in
1610  from the serial controller. Hopefully using the <tt><b>-U</b></tt> command          GXemul. Linux oopses randomly, which may be due to bugs in GXemul,
1611  line option will reduce the risk for such crashes. (I haven't had time to          but may also be due to bugs in the serial controller code in Linux.
1612  come up with a clean solution to this yet; it feels like a buffer overflow          (The speed at which serial interrupts are generated can be
1613  in Linux' serial driver for the 5000/200, but it is also likely that it is          lowered with the <tt>-U</tt> command line option, but it only
1614  a bug in GXemul.)</font>          reduces the risk, it doesn't take away the oopses completely.)
1615      <li>The Linux 2.6/DECstation DZ serial console driver doesn't work at
1616            all in the emulator, and I'm not really sure it would work on a
1617            real 5000/200 either. Hopefully this will be fixed in Linux in
1618            the future.
1619      <li>To get around the serial console problem, the obvious solution is to
1620            use a graphical framebuffer instead. Old Debian install kernels
1621            supported the graphical framebuffer on the 3max, but not the
1622            keyboard. (This has been fixed now, it seems.)
1623      <li>For quite some time, the MIPS linux cvs tree has had support for the
1624            framebuffer and keyboard, but it did not include Debian's
1625            patches for networking, which made it unusable for network
1626            installs. (Possibly fixed now.)
1627      <li>The kernel has to be for 5000/200. This rules out using
1628            the default kernel on netinst ISO images provided by Debian.
1629            These ISO images boot directly into a kernel which is meant
1630            for a different DECstation model.
1631      <li>The kernel has to have an initrd which more or less matches the
1632            version of Debian that will be installed.
1633    </ul>
1634    
1635  <p><font color="#ef0000">Everything runs extremely slow. Even if you have  <p>Luckily, a precompiled install kernel has been made available by David
1636  a very fast host machine, an install attempt can still take several hours!  Muse, for Debian for R3000 DECstations, which has support for framebuffer,
1637  </font>  keyboard, and networking, which works pretty well. Thanks David. :-)
1638    
1639  <p>  <p>The following steps should let you install Debian GNU/Linux for
1640  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  DECstation onto a harddisk image in the emulator:
 <a href="20041212-debian_1.png"><img src="20041212-debian_1_small.gif"></a>  
 &nbsp;&nbsp;&nbsp;  
 <a href="20041212-debian_2.png"><img src="20041212-debian_2_small.gif"></a>  
 &nbsp;&nbsp;&nbsp;  
 <a href="20041213-debian_3.png"><img src="20041213-debian_3_small.gif"></a>  
 &nbsp;&nbsp;&nbsp;  
 <a href="20041213-debian_4.png"><img src="20041213-debian_4_small.gif"></a>  
   
 <p>  
 The following steps should let you install Debian GNU/Linux for DECstation  
 onto a harddisk image:  
1641    
1642  <p>  <p>
1643  <ol>  <ol>
1644    <li>Create an empty harddisk image, which will be the root disk    <li>Create an empty harddisk image, which will be the root disk
1645          that Debian installs itself onto:<pre>          that Debian installs itself onto:<pre>
1646          <b>dd if=/dev/zero of=debian.img bs=1024 count=1 seek=3000000</b>          <b>dd if=/dev/zero of=debian_pmax.img bs=1024 count=1 seek=6000000</b>
1647    
1648  </pre>  </pre>
1649    <li>Download an install kernel:<pre>    <li>Download David Muse' install kernel, and a Debian Netinstall CD-ROM:<pre>
1650          <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/</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>
1651              <a href="http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/r3k-kn02/boot.img">installer-mipsel/current/images/r3k-kn02/boot.img</a>          <a href="http://cdimage.debian.org/debian-cd/3.1_r0a/mipsel/iso-cd/debian-31r0a-mipsel-netinst.iso">http://cdimage.debian.org/debian-cd/3.1_r0a/mipsel/iso-cd/debian-31r0a-mipsel-netinst.iso</a>
1652    
1653  </pre>  </pre>
1654            <font color="#ff0000">NOTE 2007-04-14: It seems that the ISO image
1655            has been removed from the cdimage site. You may need to search
1656            for it elsewhere. :-/ Alternatively, you can follow
1657            Michel Lespinasse's instructions at
1658            <a href="http://people.zoy.org/~walken/gxemul-etch/HOWTO.html">http://people.zoy.org/~walken/gxemul-etch/HOWTO.html</a>.</font>
1659    <p>    <p>
1660    <li>For a text-mode installation, start the emulator like this:<pre>    <li>Start the installation like this:<pre>
1661          <b>gxemul -e 3max -U -M64 -o 'console=ttyS3' -d debian.img -O boot.img</b>          <b>gxemul -X -e3max -d debian_pmax.img -d debian-31r0a-mipsel-netinst.iso vmlinux-2.4.31</b>
   
 </pre>  
         (If you want to, you can try <b><tt>-X</tt></b> instead of  
         <b><tt>-o 'console=ttyS3'</tt></b> on the command line. This will  
         cause Linux to use the graphical framebuffer. Unfortunately, Linux  
         does not seem to have a driver for the DZ11 keyboard controller yet,  
         so you cannot interact with the system. You will see the penguin in  
         the upper lefthand corner while booting, and nicely rendered Unicode  
         characters, but that's about it.)  
         <p>  
         You need to enter some values during the installation procedure, for  
         example network settings. The following should work:<pre>  
         DHCP:                       No, choose "<b>Configure network manually</b>"  
         IP address:                 <b>10.0.0.1</b>  
         Netmask:                    <b>255.0.0.0</b>  
         Gateway:                    <b>10.0.0.254</b>  
         Name server addresses:      <b>10.0.0.254</b>  
1662  </pre>  </pre>
   <li>Once the first phase of the install has finished, the following command  
         should let you boot into Debian, and perform post-install  
         configuration:<pre>  
         <b>gxemul -e 3max -U -M64 -o 'console=ttyS3' -d debian.img</b>  
1663    
1664  </pre>Note: All these steps take a lot of time, so you will have plenty          <p>If everything goes well, you will see Linux' boot messages, and then
1665          of time to drink lots of cups of coffee.          arrive at the language chooser.
   <p>  
   <li>It seems that there's a problem with getting a login prompt on serial  
         console (at least when I've done test installs), so when the  
         installation is finished and you're supposed to get a login prompt,  
         you need to press CTRL-C and type <b><tt>quit</tt></b>, and then:  
         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/</a>  
             <a href="http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">current/images/cdrom/vmlinux-2.4.27-r3k-kn02</a>  
1666    
1667  </pre>and boot Debian using the following command line:<pre>  <p>
1668          <b>gxemul -e 3max -U -M64 -o \  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-1.png"><img src="debian-1-small.png"></a>
1669              'console=ttyS3 root=/dev/sda1 rw init=/bin/sh' \  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-2.png"><img src="debian-2-small.png"></a>
1670              -d debian.img vmlinux-2.4.27-r3k-kn02</b>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-3.png"><img src="debian-3-small.png"></a>
1671    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-4.png"><img src="debian-4-small.png"></a>
1672    
1673  </pre>          <p>There will be a warning about the keyboard
1674          You'll enter single-user mode. You need to add a line to          layout. Don't mind this. Continue, and then select <b>Detect
1675          /etc/inittab, to enable logins via serial console.<pre>          and mount CD-ROM</b> in the next menu.
         sh-2.05b# <b>echo 'T3:23:respawn:/sbin/getty -L ttyS3 9600 vt100' >> /etc/inittab</b>  
         sh-2.05b# <b>echo 'ttyS3' >> /etc/securetty</b>  
         sh-2.05b# <b>sync; umount /</b>  
         sh-2.05b# <b>halt</b>  
 </pre>  
 </ol>  
1676    
1677  <p>  <p>
1678  The system should now be ready for everyday use.  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-5.png"><img src="debian-5-small.png"></a>
1679    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-6.png"><img src="debian-6-small.png"></a>
1680    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-7.png"><img src="debian-7-small.png"></a>
1681    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-8.png"><img src="debian-8-small.png"></a>
1682    
1683  <p>          <p>
1684  Use this command to boot from the completely installed disk image:<pre>          There will also be a warning about lack of loadable modules. Don't
1685          <b>gxemul -e 3max -U -M64 -o 'console=ttyS3' -d debian.img</b>          mind this either, continue anyway by choosing <b>Yes</b>.
1686            <p>
1687            When you reach the network configuration part of the install, choose
1688            <b>Configure network manually</b> and enter the following values:<pre>
1689            IP address:                 <b>10.0.0.1</b>
1690            Netmask:                    <b>255.0.0.0</b>
1691            Gateway:                    <b>10.0.0.254</b>
1692            Name server addresses:      <b>10.0.0.254</b>
1693    
1694  </pre>  </pre>
1695            <p>Choose <b>Erase entire disk</b> in the partitioner.
1696    
1697  <p>          <p>Wait for the base system to be installed. This takes almost forever,
1698  [&nbsp;<font color="#ff0000">UPDATE 2005-01-19:</font>&nbsp;          so you can go fetch several <a href="http://en.wikipedia.org/wiki/Jolt_Cola">Jolts</a>
1699  Kaj-Michael Lang noticed that the current CVS-version of          or cups of coffee in the meanwhile.
 <a href="http://www.linux-mips.org/">linux-mips</a> has  
 support for keyboards now, on DECstation 5000/200, so it is  
 possible to run Debian GNU/Linux with framebuffer/keyboard.  
 (Add <b><tt>-X</tt></b> (or <b><tt>-XY2</tt></b>) and remove the  
 <b><tt>console=ttyS3</tt></b> option.) He has made a kernel available here:  
 <a href="http://home.tal.org/~milang/o2/kernels/">http://home.tal.org/~milang/o2/kernels</a>/<a href="http://home.tal.org/~milang/o2/kernels/vmlinux-2.4.29-rc2-r3k-mipsel-decstation">vmlinux-2.4.29-rc2-r3k-mipsel-decstation</a>  
 It has other problems (ethernet doesn't seem to work, for  
 example), but at least it doesn't Oops that often.&nbsp;]  
   
   
1700    
1701    <p>
1702    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-9.png"><img src="debian-9-small.png"></a>
1703    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-10.png"><img src="debian-10-small.png"></a>
1704    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-11.png"><img src="debian-11-small.png"></a>
1705    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-12.png"><img src="debian-12-small.png"></a>
1706    
1707            <p>Congratulations! The first phase of the installation is now completed.
1708            Reboot using the following command line:<pre>
1709            <b>gxemul -X -e3max -o 'root=/dev/sda1' -d debian_pmax.img vmlinux-2.4.31</b>
1710    
1711    </pre>
1712            <p>The post-install step takes quite some time as well. A perfect opportunity
1713            for more coffee.
1714    
1715  <p><br>          <p>When asked about whether the hardware clock is set to GMT or
1716  <a name="declinuxredhat"></a>          not, answer Yes.
 <h3>Redhat Linux for DECstation:</h3>  
1717    
1718  <font color="#ff0000">NOTE: This is experimental, and <i>extremely</i>          <p>When asked about "Apt configuration", choose <b>http</b> as the method
1719  unstable. Read the note about <b><tt>-U</tt></b> in the section on how to          to use for accessing the Debian archive.
 install Debian.  
 </font>  
1720    
1721  <p>  <p>
1722  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-13.png"><img src="debian-13-small.png"></a>
1723  <a href="20041129-redhat_mips.png"><img src="20041129-redhat_mips_small.png"></a>  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-14.png"><img src="debian-14-small.png"></a>
1724    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="debian-15.png"><img src="debian-15-small.png"></a>
1725    
1726  <p>          <p>Downloading the packages takes almost forever. Be patient.
 The following steps should let you run Redhat Linux for DECstation in GXemul:  
1727    
1728  <p>          <p>Congratulations (again)! You are now fully done with the installation.
 <ol>  
   <li>Download a kernel. This is a Debian kernel, but it works fine:<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/</a>  
             <a href="http://ftp.egr.msu.edu/debian/dists/stable/main/installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02">installer-mipsel/current/images/cdrom/vmlinux-2.4.27-r3k-kn02</a>  
   
 </pre>  
   <li>Download a root filesystem tree:<pre>  
         <a href="ftp://ftp.uni-wuppertal.de/pub/linux/mips/mipsel-linux/root/mipsel-root-20011216.tgz">ftp://ftp.uni-wuppertal.de/pub/linux/mips/</a>  
          <a href="ftp://ftp.uni-wuppertal.de/pub/linux/mips/mipsel-linux/root/mipsel-root-20011216.tgz">mipsel-linux/root/mipsel-root-20011216.tgz</a>  
         19486676 bytes, md5 = 5bcb725c90209479cd7ead8ad0c4a414  
   
 </pre>  
   <li>This is the tricky part: Create an ext2 filesystem image called redhat.img using  
         the filesystem tree you just downloaded. The disk image should have a MS-DOS  
         partition table (!), and then one or more ext2 partitions.  
         (Use loopback mount, or similar. This is probably easiest to do on a Linux host.)  
         However, in order to actually boot the system you need to modify /etc/fstab.  
         Change<pre>  
         /dev/root               /               nfs     defaults        1 1  
         #/dev/sdc1              /               ext2    defaults        1 1  
         none                    /proc           proc    defaults        0 0  
         none                    /dev/pts        devpts  mode=0622       0 0  
1729    
 </pre>to<pre>  
         #/dev/root              /               nfs     defaults        1 1  
         /dev/sda1               /               ext2    defaults        1 1  
         none                    /proc           proc    defaults        0 0  
         none                    /dev/pts        devpts  mode=0622       0 0  
   
 </pre>(Note sda1 instead of sdc1.)  
   <p>  
   <li>To boot Linux, start the emulator like this:<pre>  
         <b>gxemul -e 3max -U -M128 -o \  
             "console=ttyS3 root=/dev/sda1 ro" -d redhat.img vmlinux-2.4.27-r3k-kn02</b>  
   
 </pre>  
1730  </ol>  </ol>
1731    
1732  <p>  <p><br>Debian GNU/Linux for DECstation is now installed and ready to be used.
1733  If you need to boot into single user mode, try the following:<pre>  Use this command to boot from the installed disk image:<pre>
1734          <b>gxemul -e 3max -U -o "console=ttyS3 root=/dev/sda1 rw init=/bin/sh" \          <b>gxemul -X -e3max -o 'root=/dev/sda1' -d debian_pmax.img vmlinux-2.4.31</b>
             -d redhat.img vmlinux-2.4.27-r3k-kn02</b>  
1735    
1736  </pre>  </pre>
1737    
 <p>Redhat Linux on DECstation in R3000 mode should work fine with dynamic  
 binary translation, but if things are buggy, it can be disabled by  
 using the <b><tt>-B</tt></b> command line option.  
   
 <p>  
 NOTE: You can add <b>-X</b> and remove <b>console=ttyS3</b> from the command  
 line, if you want to use a graphical framebuffer. Unfortunately, Linux  
 doesn't have support for keyboards on DECstation 5000/200 yet, so you cannot  
 actually interact with the sytem. :-(  
   
 <p>  
 [&nbsp;<font color="#ff0000">UPDATE 2005-01-22:</font>&nbsp;  
 Read the 2005-01-19 update in the Debian section above, and then, if  
 you do not need ethernet support, try Kaj-Michael Lang's kernel compiled  
 from <a href="http://www.linux-mips.org/">linux-mips</a>' CVS.  
 <a href="http://home.tal.org/~milang/o2/kernels/">http://home.tal.org/~milang/o2/kernels</a>/<a href="http://home.tal.org/~milang/o2/kernels/vmlinux-2.4.29-rc2-r3k-mipsel-decstation">vmlinux-2.4.29-rc2-r3k-mipsel-decstation</a>  
 It should work with framebuffer/keyboard.&nbsp;]  
1738    
1739    
1740    
# Line 1470  for DECstation in the emulator: Line 1775  for DECstation in the emulator:
1775    
1776  <p>  <p>
1777  <ol>  <ol>
   <li>Compile gxemul with cache emulation: (<b>NOTE: --enable-caches</b>)<pre>  
         <b>./configure --enable-caches; make</b>  
   
 </pre>  
1778    <li>Download the pmax binary distribution for Mach 3.0:<pre>    <li>Download the pmax binary distribution for Mach 3.0:<pre>
1779          <a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">http://lost-contact.mit.edu/afs/athena/user/d/a/</a>          <a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">http://lost-contact.mit.edu/afs/athena/user/d/a/</a>
1780              <a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">daveg/Info/Links/Mach/src/release/pmax.tar.Z</a>              <a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">daveg/Info/Links/Mach/src/release/pmax.tar.Z</a>
# Line 1502  for DECstation in the emulator: Line 1803  for DECstation in the emulator:
1803          cd /; sync; umount /mnt</i>)          cd /; sync; umount /mnt</i>)
1804          <p>          <p>
1805    <li>Start the emulator with the following command:<pre>    <li>Start the emulator with the following command:<pre>
1806          <b>gxemul -e 3max -X -d disk.img \          <b>gxemul -c 'put w 0x800990e0, 0' -c 'put w 0x80099144, 0' \
1807                -c 'put w 0x8004aae8, 0' -e 3max -X -d disk.img \
1808              pmax_mach/special/mach.boot.MK83.STD+ANY</b>              pmax_mach/special/mach.boot.MK83.STD+ANY</b>
1809    
1810  </pre>  </pre>
1811  </ol>  </ol>
1812    
1813    <p>Earlier versions of GXemul had a configure option to enable better
1814    R3000 cache emulation, but since Mach was more or less the only thing that
1815    used it, I removed it. Today's version of GXemul can thus not boot
1816    mach.boot.MK83.STD+ANY straight off, it has to be patched to skip the
1817    cache detection.
1818    
1819    <p>The -c commands above patch the kernel to get past the cache detection.
1820    Thanks to Artur Bujdoso for these values.
1821    
1822    <p>TODO: Better instructions on how to create the old-style UFS disk
1823    image.
1824    
1825    
1826    
1827    
1828    
1829    
1830    
1831    <p><br>
1832    <a name="declinuxredhat"></a>
1833    <h3>Redhat Linux for DECstation:</h3>
1834    
1835    
1836    <p>
1837    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1838    <a href="20041129-redhat_mips.png"><img src="20041129-redhat_mips_small.png"></a>
1839    
1840    <p>
1841    The following steps should let you run Redhat Linux for DECstation in GXemul:
1842    
1843    <p>
1844    <ol>
1845      <li>Download a kernel. David Muse' Debian-install kernel works fine:<pre>
1846            <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>
1847    
1848    </pre>
1849      <li>Download a root filesystem tree:<pre>
1850            <a href="ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/root/mipsel-root-20011216.tgz">ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/root/mipsel-root-20011216.tgz</a>
1851            19486676 bytes, md5 = 5bcb725c90209479cd7ead8ad0c4a414
1852    
1853    </pre>
1854      <li>Create a disk image which will contain the Redhat filesystem:<pre>
1855            <b>dd if=/dev/zero of=redhat_mips.img bs=1024 count=1 seek=2000000</b>
1856    
1857    </pre>
1858      <li>This is the tricky part: on redhat_mips.img, you need to create an MS-DOS
1859            (!) partition table, and then an ext2 partition. This is what Linux
1860            will then see as /dev/sda1.
1861            <p>I recommend you run fdisk and mke2fs and untar the archive from within
1862            Debian/DECstation or <a href="#debiancats">Debian/CATS</a> running
1863            inside the emulator. (Alternatively, if you are on a Linux host,
1864            you could use a loopback mount, or similar. This might require
1865            root access. See e.g.
1866            <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>.)
1867            <p>
1868            In order to actually boot the system you need to modify /etc/fstab.
1869            Change<pre>
1870            /dev/root               /               nfs     defaults        1 1
1871            #/dev/sdc1              /               ext2    defaults        1 1
1872            none                    /proc           proc    defaults        0 0
1873            none                    /dev/pts        devpts  mode=0622       0 0
1874    
1875    </pre>to<pre>
1876            #/dev/root              /               nfs     defaults        1 1
1877            /dev/sda1               /               ext2    defaults        1 1
1878            none                    /proc           proc    defaults        0 0
1879            none                    /dev/pts        devpts  mode=0622       0 0
1880    
1881    </pre>(Note sda1 instead of sdc1.)
1882    </ol>
1883    
1884    <p>To boot Redhat linux from the disk image, use the following command line:<pre>
1885            <b>gxemul -X -e3max -o "root=/dev/sda1 ro" -d redhat_mips.img vmlinux-2.4.31</b>
1886    
1887    </pre>
1888    If you need to boot into single user mode, change options to
1889    <tt><b>-o "root=/dev/sda1 rw init=/bin/sh"</b></tt>.
1890    
1891    
1892    
1893    
1894    
1895    
1896    
# Line 1533  it works.</font> Line 1916  it works.</font>
1916  mailed Adaptec several times, asking for documentation, but never received  mailed Adaptec several times, asking for documentation, but never received
1917  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
1918  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>
1919          <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>
1920    
1921  </pre>and run <b><tt>gxemul -e o2 bsd.rd</tt></b>.  </pre>and run <b><tt>gxemul -xeo2 bsd.rd</tt></b>.
1922    
1923  <p>It might also be possible to netboot. Another emulated machine must  <p>It might also be possible to netboot. Another emulated machine must
1924  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
# Line 1546  client. Performing this setup is quite t Line 1929  client. Performing this setup is quite t
1929  <ol>  <ol>
1930    <li>First of all, the "<tt>nfs server</tt>" machine must be set up.    <li>First of all, the "<tt>nfs server</tt>" machine must be set up.
1931          This needs to have a 800 MB <tt>/tftpboot</tt> partition.          This needs to have a 800 MB <tt>/tftpboot</tt> partition.
1932          <a href="#netbsdinstall">Install NetBSD/pmax 2.0.2 from CDROM</a>.          <a href="#netbsdpmaxinstall">Install NetBSD/pmax 3.1 from CDROM</a>.
1933          (Don't forget to add the extra partition!)          (Don't forget to add the extra partition!)
1934    <p>    <p>
1935    <li>Configure the nfs server machine to act as an nfs server.    <li>Configure the nfs server machine to act as an nfs server.
1936          Start up the emulated DECstation:<pre>          Start up the emulated DECstation:<pre>
1937          <b>gxemul -e 3max -A -d nbsd_pmax.img</b>          <b>gxemul -e 3max -d nbsd_pmax.img</b>
1938  </pre>and enter the following commands as <tt>root</tt>  </pre>and enter the following commands as <tt>root</tt>
1939          inside the emulator:          inside the emulator:
1940  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
# Line 1575  reboot</b> Line 1958  reboot</b>
1958  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
1959  <b>cd /tftpboot; ftp -i ftp.se.openbsd.org</b>  <b>cd /tftpboot; ftp -i ftp.se.openbsd.org</b>
1960  (log in as anonymous...)  (log in as anonymous...)
1961  <b>cd pub/OpenBSD/3.7/sgi  <b>cd pub/OpenBSD/3.9/sgi
1962  mget b*tgz c* e* g* m*  mget b*tgz c*tgz e* g* m*
1963  quit  quit
1964  sh  sh
1965  for a in *.tgz; do echo $a; tar zxfp $a; done  for a in *.tgz; do echo $a; tar zxfp $a; done
# Line 1586  dd if=/dev/zero of=swap bs=1024 count=32 Line 1969  dd if=/dev/zero of=swap bs=1024 count=32
1969  halt</b>  halt</b>
1970  </pre></td></tr></table>  </pre></td></tr></table>
1971    <li>Download the OpenBSD/sgi GENERIC and RAMDISK kernels:<pre>    <li>Download the OpenBSD/sgi GENERIC and RAMDISK kernels:<pre>
1972          <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>
1973          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  
1974    
1975  </pre>  </pre>
1976    <li>Create a configuration file called <tt>config_client</tt>:    <li>Create a configuration file called <tt>config_client</tt>:
1977  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
1978  <font color="#2020cf">!!gxemul  <font color="#2020cf">!  Configuration file for running OpenBSD/sgi diskless with
 !  
 !  Configuration file for running OpenBSD/sgi diskless with  
1979  !  a NetBSD/pmax machine as the nfs server.  !  a NetBSD/pmax machine as the nfs server.
1980  !  !
1981  !  This config file is for the client.</font>  !  This config file is for the client.</font>
1982    
1983  <b>emul(  <b>    net(
     net(  
1984          add_remote("localhost:12444")   </b>! the server<b>          add_remote("localhost:12444")   </b>! the server<b>
1985          local_port(12445)               </b>! the client<b>          local_port(12445)               </b>! the client<b>
1986      )      )
# Line 1617  halt</b> Line 1995  halt</b>
1995          </b>! load("bsd")<b>          </b>! load("bsd")<b>
1996          load("bsd.rd")          load("bsd.rd")
1997      )      )
1998  )</b>  </b>
1999  </pre></td></tr></table>  </pre></td></tr></table>
2000          ... and another configuration file for the server,          ... and another configuration file for the server,
2001          <tt>config_server</tt>:          <tt>config_server</tt>:
2002  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
2003  <font color="#2020cf">!!gxemul</font>  <b>    net(
 <b>emul(  
     net(  
2004          local_port(12444)               </b>! the server<b>          local_port(12444)               </b>! the server<b>
2005          add_remote("localhost:12445")   </b>! the client<b>          add_remote("localhost:12445")   </b>! the client<b>
2006      )      )
# Line 1638  halt</b> Line 2014  halt</b>
2014    
2015          disk("nbsd_pmax.img")          disk("nbsd_pmax.img")
2016      )      )
2017  )</b>  </b>
2018  </pre></td></tr></table>  </pre></td></tr></table>
2019    <li>Boot the "<tt>nfs server</tt>" and the OpenBSD/sgi    <li>Boot the "<tt>nfs server</tt>" and the OpenBSD/sgi
2020          "<tt>client machine</tt>" as two separate emulator instances:<pre>          "<tt>client machine</tt>" as two separate emulator instances:<pre>
# Line 1695  fetch several cups of coffee for each of Line 2071  fetch several cups of coffee for each of
2071    
2072    
2073    
2074    
2075  <p><br>  <p><br>
2076  <a name="netbsdnetwinderinstall"></a>  <a name="openbsdarcinstall"></a>
2077  <h3>NetBSD/netwinder:</h3>  <h3>OpenBSD/arc:</h3>
2078    
2079    It is (almost) possible to install and run OpenBSD/arc on an emulated Acer
2080    PICA-61 in the emulator.
2081    
2082    <p><font color="#e00000">Earlier, I had this guest OS listed as
2083    officially working in the emulator, but for several reasons, it has
2084    been moved down here to the "informative-but-not-really-working"
2085    section.</font>
2086    
2087    <p>
2088    <ul>
2089      <li>The last OpenBSD/arc release was 2.3. This means that it is very
2090            old, it would not give a fair picture of what OpenBSD is (if you
2091            are just looking to find out what it is like), and it is not
2092            worth experimenting with it. See
2093            <a href="http://www.openbsd.org/arc.html">http://www.openbsd.org/arc.html</a>
2094            for more information.
2095      <li>OpenBSD/arc was (if I understood things correctly) never really
2096            stable, even on real hardare. Problems with too small an interrupt
2097            stack. Bugs are triggered in the emulator that have to do with
2098            issues such as this.
2099    </ul>
2100    
2101    <p>
2102    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2103    <a href="20041024-openbsd-arc-installed.gif"><img src="20041024-openbsd-arc-installed_small.gif"></a>
2104    
2105    <p>
2106    <font color="#e00000">Currently, I don't test for every release whether
2107    or not OpenBSD/arc can be installed. Releases prior to 0.3.7
2108    (but probably <i>not</i> 0.3.7) should work. Anyway, here are the
2109    old installation instructions:</font>
2110    
2111    <p>To install OpenBSD/arc onto an emulated harddisk image, follow these
2112    instructions:
2113    
2114    <p>
2115    <ol>
2116      <li>Create an empty harddisk image, which will be the root disk
2117            that OpenBSD installs itself onto:<pre>
2118            <b>dd if=/dev/zero of=obsd_arc.img bs=1024 count=1 seek=700000</b>
2119    
2120    </pre>
2121      <li>Download the entire arc directory from the ftp server: (approx. 75 MB)<pre>
2122            <b>wget -np -l 0 -r <a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/">ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/</a></b>
2123    
2124    </pre>
2125    
2126      <li>You now need to make an ISO image of the entire directory you downloaded.
2127            (I recommend using <tt>mkisofs</tt> for that purpose. If you don't
2128            already have <tt>mkisofs</tt> installed on your system, you need
2129            to install it in order to do this.)<pre>
2130            <b>mkisofs -o openbsd_arc_2.3.iso ftp.se.openbsd.org/pub/OpenBSD/</b>
2131    
2132    </pre>
2133      <li>Start the emulator using this command line:<pre>
2134            <b>gxemul -e pica -X -d obsd_arc.img -d b:openbsd_arc_2.3.iso -j 2.3/arc/bsd.rd</b>
2135    
2136    </pre>
2137            and proceed like you would do if you were installing OpenBSD
2138            on a real Acer PICA-61. (Answer 'no' when asked if you want to
2139            configure networking, and then install from CD-ROM.)
2140    </ol>
2141    
2142    <p>
2143    Once the install has finished, the following command should let you
2144    boot from the harddisk image:
2145    <p>
2146    <pre>
2147            <b>gxemul -X -e pica -d obsd_arc.img ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd</b>
2148    
2149    </pre>
2150    
2151    The system is very sensitive to (I think) kernel stack overflow, so it
2152    crashes easily. If I remember correctly from mailing lists, this also
2153    happened on real hardware.
2154    
2155    
2156    
 <a href="http://www.netbsd.org/Ports/netwinder/">NetBSD/netwinder</a>  
 could possibly run in GXemul. <font color="#ff0000">IT DOES <b>NOT</b> WORK YET!</font>  
2157    
2158  <p>It is tricky to install, because there is (as far as I know) no INSTALL  
2159  kernel. One way to install the NetBSD/netwinder distribution onto a disk  
2160  image is to install the files using another (emulated) machine.  
2161    
2162    
2163    
2164    
2165    <p><br>
2166    <a name="debiancats"></a>
2167    <h3>Debian GNU/Linux for CATS:</h3>
2168    
2169    Debian GNU/Linux for CATS (ARM) could <i>theoretically</i> run in GXemul,
2170    however:
2171    
2172    <ul>
2173      <li>The DEC 21143 NIC is not emulated well enough for Linux to accept it.
2174      <li>Development of Debian for CATS seems to have died? The latest
2175            install kernel is quite old.
2176    </ul>
2177    
2178    <p><font color="#ff0000">IT DOES <b>NOT</b> WORK YET!</font>
2179    
2180    <p>The following installation instructions would theoretically work:
2181    
2182  <p>  <p>
2183  The following instructions will let you install the NetBSD/netwinder  <ol>
2184  distribution onto a disk image, from an emulated DECstation 3MAX machine:    <li>Create an empty harddisk image, which will be the root disk
2185            that Debian installs itself onto:<pre>
2186            <b>dd if=/dev/zero of=debian_cats.img bs=1024 count=1 seek=3300000</b>
2187    
2188    </pre>
2189      <li>Download the tftpboot install kernel:<pre>
2190            <a href="http://ftp.debian.org/debian/dists/oldstable/main/disks-arm/current/cats/tftpboot.img">http://ftp.debian.org/debian/dists/oldstable/main/disks-arm/current/cats/tftpboot.img</a>
2191    
2192    </pre>
2193      <li>Start the installation using the following command line:<pre>
2194            <b>gxemul -XEcats -d debian_cats.img tftpboot.img</b>
2195    
2196    </pre>
2197    </ol>
2198    
2199    <p>It doesn't work, though, because the NIC isn't working well enough.
2200    
2201    <p>The only use of Debian/CATS in the emulator right now is as a way to
2202    manipulate Linux disk images, if you are on a non-Linux host. By choosing
2203    "Execute a shell" in the installer's menu, you can have access to tools such as
2204    fdisk and mke2fs, which are useful for creating Linux paritions on disk images.
2205    
2206    
2207    
2208    
2209    
2210    
2211    
2212    <!--
2213    <p><br>
2214    <a name="linux_malta"></a>
2215    <h3>Linux/Malta:</h3>
2216    
2217    <p>The Malta emulation mode is best suited for running <a
2218    href="#netbsdevbmipsinstall">NetBSD/evbmips</a>, however, it is possible
2219    to experiment with Linux/Malta as well.
2220    
2221    <p>The general idea behind Linux/Malta seems to be that the end user
2222    always compiles his/her own kernel, applies patches, downloads
2223    userland separately, etc. For that reason, Linux/Malta support in the
2224    emulator is not tested for every release (sometimes it works, sometimes it
2225    doesn't work), and these instructions are kind of "fuzzy".
2226    
2227    <p><ol start="1">
2228      <li>Create an empty harddisk image, which will be the root disk
2229            that Linux/Malta will be installed onto:<pre>
2230            <b>dd if=/dev/zero of=linux.img bs=1024 count=1 seek=5000000</b>
2231    
2232    </pre>
2233      <li>Download a MIPS root filesystem tree:<pre>
2234            <a href="ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/root/mipsel-root-20011216.tgz">ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/root/mipsel-root-20011216.tgz</a>
2235            19486676 bytes, md5 = 5bcb725c90209479cd7ead8ad0c4a414
2236    
2237    </pre>
2238            This is an old Redhat tree from 2001, but it seems to almost work.
2239      <p>
2240      <li>Download one precompiled Malta kernel, with ramdisk,
2241            and one without ramdisk (which will be used later on
2242            when booting from disk):<pre>
2243            TODO
2244    
2245    </pre>
2246      <li>Start the emulator with the ramdisk kernel, create a MS-DOS style
2247            MBR on the disk, create the filesystem, and extract the
2248            userland files:<pre>
2249            <b>gunzip vmlinux_2.*
2250            gunzip mipsel-root-20011216.tar
2251            gxemul -xemalta -d linux.img -d mipsel-root-20011216.tar vmlinux_2.4.33.2-ide-pci-ramdisk.elf</b>
2252            Inside GXemul: Log in as root and execute the following commands:
2253            <b>fdisk /dev/hda</b>
2254            (enter suitable commands, e.g. <b>n, p, 1, 1, 9921, w</b>)
2255            <b>mkfs /dev/hda1
2256            mount /dev/hda1 /mnt
2257            cd /mnt; tar -xf /dev/hdb; cd ..
2258            umount /mnt; sync; reboot</b>
2259    
2260    </pre>
2261    </ol>
2262    
2263    <p>It should now be possible to boot from the disk image, using the
2264    following command:
2265    
2266    <p><pre>
2267    <b>     gxemul -xemalta -d linux.img -o "root=/dev/hda1 rw" vmlinux_2.6.18-rc4-ide-pci-novty.elf</b>
2268    </pre>
2269    
2270    <p>There's a slight problem with this specific Redhat tree, so when you
2271    see the message "Configuring kernel parameters:  [  OK  ]", press CTRL-C
2272    once.
2273    -->
2274    
2275    
2276    
2277    
2278    
2279    
2280    <p><br>
2281    <a name="linux_qemu_mips"></a>
2282    <h3>Linux/QEMU_MIPS:</h3>
2283    
2284    I've added a semi-bogus machine mode which tries to
2285    mimic the MIPS machine mode used in Fabrice Bellard's
2286    <a href="http://fabrice.bellard.free.fr/qemu/">QEMU</a>.
2287    
2288    <p>Download <a href="http://fabrice.bellard.free.fr/qemu/mips-test-0.1.tar.gz">mips-test-0.1.tar.gz</a>
2289    from <a href="http://fabrice.bellard.free.fr/qemu/download.html">http://fabrice.bellard.free.fr/qemu/download.html</a>,
2290    and extract its contents (<tt>tar zxvf mips-test-0.1.tar.gz</tt>).
2291    
2292    <p>Test it in GXemul using the following command line:<pre>
2293            <b>gxemul -E qemu_mips -o 'console=ttyS0 root=/dev/ram
2294                    rd_start=0x80800000 rd_size=10000000 init=/bin/sh'
2295                    0x80800000:mips-test/initrd mips-test/vmlinux-r1</b>
2296    
2297    </pre>
2298    </ol>
2299    
2300    
2301    
2302    
2303    
2304    
2305    
2306    
2307    <p><br>
2308    <a name="windows_nt_mips"></a>
2309    <h3>Windows NT/MIPS:</h3>
2310    
2311    Old versions of Windows NT could run on MIPS hardware, e.g.
2312    the PICA 61. It is theoretically possible that the emulation provided by
2313    GXemul some day could be stable/complete enough to emulate
2314    such hardware well enough to fool Windows NT into thinking
2315    that it is running on a real machine.
2316    <font color="#ff0000">IT DOES <b>NOT</b> WORK YET!</font>
2317    
2318    <p>Installation steps similar to these would be required to install
2319    Windows NT onto a disk image:
2320    
2321    <ol>
2322            <li>Put a "Windows NT 4.0 for MIPS" CDROM (or similar) into
2323                    your CDROM drive. (On FreeBSD systems, it is
2324                    usually called <tt>/dev/cd0c</tt> or similar. Change
2325                    that to whatever the CDROM is called on your system,
2326                    or the name of a raw .iso image. I have tried this
2327                    with the Swedish version, but it might work with
2328                    other versions too.)
2329            <p>
2330            <li>Create an empty harddisk image, which will be the disk image
2331                    that you will install Windows NT onto:<pre>
2332            $ <b><tt>dd if=/dev/zero of=winnt_test.img bs=1024 count=1 seek=999000</tt></b>
2333    
2334    </pre>
2335            <li>Run the ARC installer, to partition the disk image:<pre>
2336            $ <b><tt>gxemul -X -e pica -d winnt_test.img -d bc6:/dev/cd0c -j MIPS\\ARCINST</tt></b>
2337    </pre>
2338            Note that <tt>ARCINST</tt> <i>almost</i> works, but not quite.
2339            <p>
2340            <li>Run the SETUP program:<pre>
2341            $ <b><tt>gxemul -X -e pica -d winnt_test.img -d bc6:/dev/cd0c -j MIPS\\SETUPLDR</tt></b>
2342    </pre>
2343    </ol>
2344    
2345    <p><tt>SETUPLDR</tt> manages to load some drivers from the cdrom,
2346    but then it crashes because of incomplete emulation of some hardware devices.
2347    
2348    
2349    
2350    
2351    
2352    
2353    
2354    
2355    <p><br>
2356    <a name="netbsdbeboxinstall"></a>
2357    <h3>NetBSD/bebox:</h3>
2358    
2359    There is an old snapshot of
2360    <a href="http://www.netbsd.org/Ports/bebox/">NetBSD/bebox</a>
2361    from 1998-11-19 available at NetBSD's ftp server. NetBSD/bebox
2362    could theoretically run in GXemul.
2363    <font color="#ff0000">IT DOES <b>NOT</b> WORK RIGHT NOW!</font>
2364    
2365    <p>The following instructions will let you install NetBSD/bebox onto a
2366    disk image, using a NetBSD/prep kernel temporarily during the install:
2367    
2368  <p>  <p>
2369  <ol>  <ol>
2370    <li>Install NetBSD/pmax 2.0.2 according to instructions    <li>Download a NetBSD/prep 2.1 install ramdisk kernel:<pre>
2371          <a href="#netbsdinstall">further up on this page</a>.          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/prep/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/prep/binary/kernel/netbsd-INSTALL.gz</a>
2372    </pre>
2373    <p>    <p>
2374    <li>Create an empty harddisk image, which will be the disk image    <li>Create an empty harddisk image, which will be the disk image
2375          that you will install NetBSD onto:<pre>          that you will install NetBSD onto:<pre>
2376          <b>dd if=/dev/zero of=nbsd_netwinder.img bs=1024 count=1 seek=999000</b>          <b>dd if=/dev/zero of=nbsd_bebox.img bs=1024 count=1 seek=999000</b>
2377    </pre>
2378      <p>
2379      <li>Download the NetBSD/bebox snapshot, and create a suitable .iso
2380            image of the files:
2381    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
2382    <b>wget -np -l 0 -r <a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/">ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/</a>
2383    mv ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/kern.tgz .
2384    tar zxvf kern.tgz
2385    rm -f kern.tgz
2386    mkisofs -o netbsd-bebox-19981119.iso ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119</b>
2387    </pre></td></tr></table>
2388      <p>
2389      <li>Now let's extract the files onto the Bebox disk image. Start NetBSD/prep
2390            with the following command line:<pre>
2391            <b>gxemul -x -e ibm6050 -d d:netbsd-bebox-19981119.iso -d nbsd_bebox.img netbsd-INSTALL.gz</b>
2392    
2393    </pre>Choose (S) for Shell, and execute the following commands:
2394    <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
2395    <b>disklabel -I -i wd1
2396    a
2397    4.2BSD
2398    1c
2399    750M
2400    b
2401    swap
2402    a
2403    200M
2404    W
2405    y
2406    Q
2407    newfs /dev/wd1a
2408    mount_cd9660 /dev/wd0c /mnt
2409    mount /dev/wd1a /mnt2
2410    cd mnt2
2411    for a in /mnt/*.tgz; do echo $a; tar zxfp $a; done
2412    cd dev; sh ./MAKEDEV all; cd ../etc
2413    echo rc_configured=YES &gt;&gt; rc.conf
2414    echo "/dev/wd0a / ffs rw 1 1" &gt; fstab
2415    echo "/dev/wd0b none swap sw 0 0" &gt;&gt; fstab
2416    cd /; umount /mnt; umount /mnt2
2417    sync; halt</b>
2418    </pre></td></tr></table>
2419    </ol>
2420    
2421    <p>You should now be able to boot NetBSD/bebox using this command:<pre>
2422            <b>gxemul -X -E bebox -d nbsd_bebox.img netbsd</b>
2423    </pre>
2424    
2425    <p>When asked for the root device, enter <b><tt>wd0a</tt></b>.
2426    
2427    <p><font color="#ff0000">IT DOES <b>NOT</b> WORK YET</font>, there are
2428    errors while uncompressing the tgz files, and the machine crashes when
2429    trying to run /sbin/init.
2430    
2431    
2432    
2433    
2434    
2435    
2436    
2437    
2438    
2439    
2440    <p><br>
2441    <a name="netbsdlandiskinstall"></a>
2442    <h3>NetBSD/landisk:</h3>
2443    
2444    <a href="http://www.netbsd.org/Ports/landisk/">NetBSD/landisk</a> can
2445    run in GXemul.
2446    
2447    <p><font color="#ff0000">NOTE: This is still too
2448    unstable to be considered really working!</font>
2449    
2450    <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2451    <a href="20070224-netbsd-landisk.png"><img src="20070224-netbsd-landisk_small.png"></a>
2452    
2453    <p>At the time of writing this, there are not yet any formal releases
2454    of NetBSD/landisk, only daily snapshot builds.
2455    
2456    <p>The NetBSD/landisk distribution does not include any INSTALL kernel,
2457    so it must be installed using another (emulated) machine.
2458    
2459    <p>The following instructions will let you install NetBSD/landisk onto a disk
2460    image, using an emulated CATS machine:
2461    
2462    <p>
2463    <ol>
2464      <li>Download a NetBSD/cats install kernel:<pre>
2465            <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-INSTALL.gz</a>
2466  </pre>  </pre>
2467    <li>Download the generic kernel and the 2.0.2 ISO image:<pre>    <p>
2468          <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/netwinder/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/netwinder/binary/kernel/netbsd-GENERIC.gz</a>    <li>Create an empty harddisk image, which will be the disk image
2469          <a href="ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/netwindercd.iso">ftp://ftp.netbsd.org/pub/NetBSD/iso/2.0.2/netwindercd.iso</a>          that you will install NetBSD/landisk onto:<pre>
2470            <b>dd if=/dev/zero of=nbsd_landisk.img bs=1024 count=1 seek=900000</b>
2471    
2472  </pre>  </pre>
2473    <p>    <p>
2474    <li>Start NetBSD/pmax like this:<pre>    <li>Download the latest netbsd-4 (pre-release) snapshot, and make an iso image
2475          <b>gxemul -e 3max -A -d nbsd_pmax.img -d nbsd_netwinder.img -d netwinder.iso</b>          of it: (replace 200704110002Z with whatever is the latest one)<pre>
2476            <b>wget -np -l 0 -r ftp://ftp.netbsd.org/pub/NetBSD-daily/netbsd-4/200704110002Z/landisk
2477            mkisofs -U -o landisk.iso ftp.netbsd.org/pub/NetBSD-daily/netbsd-4/*</b>
2478    </pre>
2479    
2480  </pre>and execute the following commands as <tt>root</tt>:    <p>
2481      <li>Start the emulated CATS machine like this:<pre>
2482            <b>gxemul -XEcats -d nbsd_landisk.img -d landisk.iso netbsd.aout-INSTALL.gz</b>
2483    
2484    </pre>
2485      <li>Exit the installer, then execute the following commands:
2486  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>  <p><table border="0"><tr><td><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td><pre>
2487  <b>newfs /dev/sd1c  <b>disklabel -i -I wd0</b>    (for example 'a', '4.2BSD', '1c',
2488        '700M', 'b', 'swap', '701M', '$', 'P', 'W', 'y', and 'Q')
2489    <b>newfs /dev/wd0a
2490  mount /dev/cd0c /mnt  mount /dev/cd0c /mnt
2491  mkdir /mnt2; mount /dev/sd1c /mnt2  mkdir /mnt2; mount /dev/wd0a /mnt2
2492  cd /mnt2; sh  cd /mnt2; sh
2493  for a in /mnt/netwinder/binary/sets/*.tgz; do echo $a; tar zxfp $a; done  for a in /mnt/*/binary/sets/[bcekmt]*.tgz; do echo $a; tar zxfp $a; done
2494  exit  exit
2495  cd dev; sh ./MAKEDEV all; cd ../etc  cd dev; sh ./MAKEDEV all; cd ../etc
2496  echo rc_configured=YES >> rc.conf  echo rc_configured=YES >> rc.conf
2497  echo "/dev/wd0c / ffs rw 1 1" > fstab  echo "/dev/wd0a / ffs rw 1 1" > fstab
2498    echo "/dev/wd0b none swap sw 0 0" >> fstab
2499  cd /; umount /mnt; umount /mnt2; halt</b>  cd /; umount /mnt; umount /mnt2; halt</b>
2500  </pre></td></tr></table>  </pre></td></tr></table>
2501  </ol>  </ol>
2502    
2503  <p>You should now be able to boot NetBSD/evbmips using this command:<pre>  <p>You should now be able to boot NetBSD/landisk using this command:<pre>
2504          <b>gxemul -E netwinder -d nbsd_netwinder.img netbsd-GENERIC.gz</b>          <b>gxemul -x -E landisk -d nbsd_landisk.img netbsd-GENERIC.gz</b>
2505  </pre>  </pre>
2506    
2507  <p>Note: The installation instructions above create a filesystem  
2508  <i>without</i> a disklabel, so there is only one ffs partition and no  
2509  swap. You will need to enter the following things when booting with the  
2510  generic kernel:<pre>  
2511          root device (default wd0a): <b>wd0c</b>  
2512          dump device (default wd0b): <b>none</b>  
2513          file system (default generic):    <i>(just press enter)</i>  
2514          init path (default /sbin/init):   <i>(just press enter)</i>  
2515    <p><br>
2516    <a name="openbsdlandiskinstall"></a>
2517    <h3>OpenBSD/landisk:</h3>
2518    
2519    It is possible to install and run
2520    <a href="http://www.openbsd.org/landisk.html">OpenBSD/landisk</a>
2521    in GXemul. There is at the time of writing this no stable release
2522    yet of OpenBSD/landisk, but there are snapshots available on the
2523    OpenBSD ftp site.
2524    
2525    <p><font color="#ff0000">NOTE: This is still too
2526    unstable to be considered really working!</font>
2527    
2528    <p>To install OpenBSD/landisk onto an emulated harddisk image,
2529    follow these instructions:
2530    
2531    <p>
2532    <ol>
2533      <li>Create an empty harddisk image, which will be the root disk
2534            that OpenBSD installs itself onto:<pre>
2535            <b>dd if=/dev/zero of=obsd_landisk.img bs=1024 count=1 seek=900000</b>
2536    
2537    </pre>
2538      <li>Download the entire landisk directory from the ftp server:<pre>
2539            <b>wget -np -l 0 -r <a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/snapshots/landisk/">ftp://ftp.se.openbsd.org/pub/OpenBSD/snapshots/landisk/</a></b>
2540            <b>cp ftp.se.openbsd.org/pub/OpenBSD/snapshots/landisk/bsd .</b>
2541            <b>cp ftp.se.openbsd.org/pub/OpenBSD/snapshots/landisk/bsd.rd .</b>
2542    
2543    </pre>
2544            (Replace ftp.se.openbsd.org with a server closer to you, for
2545            increased download speed.)
2546      <p>
2547      <li>You now need to make an ISO image of the entire directory you downloaded.
2548            (I recommend using <tt>mkisofs</tt> for that purpose. If you don't
2549            already have <tt>mkisofs</tt> installed on your system, you need
2550            to install it in order to do this.)<pre>
2551            <b>mkisofs -allow-lowercase -o openbsd_landisk_snapshot.iso ftp.se.openbsd.org/pub/OpenBSD/</b>
2552            <b>rm -rf ftp.se.openbsd.org</b>      <i>(this directory is not needed anymore)</i>
2553    
2554  </pre>  </pre>
2555      <li>Start the emulator using this command line:<pre>
2556            <b>gxemul -x -Elandisk -d obsd_landisk.img -d d:openbsd_landisk_snapshot.iso bsd.rd</b>
2557    
2558    </pre>
2559            and proceed like you would do if you were installing OpenBSD
2560            on a real landisk. The following hints are useful to get you
2561            through the installation:
2562            <ul>
2563              <li>Terminal type = <b>xterm</b>
2564              <li>root disk = <b>wd0</b> (the disk to install onto)
2565              <li>Use the entire disk for OpenBSD = <b>yes</b>
2566              <li>Create one big root partition (a) and a small swap partition (b). c is the entire disk.
2567              <li>Do <b>not</b> configure the network.
2568              <li>Location of sets = <b>disk</b>
2569              <li>Is the disk partition already mounted = <b>no</b>
2570              <li>Disk containing the install media = <b>wd1</b>
2571              <li>Pathname to the sets = <b>snapshot/landisk</b>
2572            </ul>
2573    </ol>
2574    
2575    <p>Once the install has finished, the following command should let you
2576    boot from the disk image:
2577    
2578    <p><pre>
2579            <b>gxemul -x -E landisk -d obsd_landisk.img bsd</b>
2580    
2581    </pre>
2582    
2583    
2584    

Legend:
Removed from v.18  
changed lines
  Added in v.38

  ViewVC Help
Powered by ViewVC 1.1.26