1 |
<html> |
<html> |
2 |
<head><title>GXemul documentation: Experimenting with GXemul</title> |
<head><title>GXemul documentation: Experimenting with GXemul</title> |
3 |
|
<meta name="robots" content="noarchive,nofollow,noindex"> |
4 |
</head> |
</head> |
5 |
<body bgcolor="#f8f8f8" text="#000000" link="#4040f0" vlink="#404040" alink="#ff0000"> |
<body bgcolor="#f8f8f8" text="#000000" link="#4040f0" vlink="#404040" alink="#ff0000"> |
6 |
<table border=0 width=100% bgcolor="#d0d0d0"><tr> |
<table border=0 width=100% bgcolor="#d0d0d0"><tr> |
9 |
<b>GXemul documentation:</b></font> |
<b>GXemul documentation:</b></font> |
10 |
<font color="#000000" size="6"><b>Experimenting with GXemul</b> |
<font color="#000000" size="6"><b>Experimenting with GXemul</b> |
11 |
</font></td></tr></table></td></tr></table><p> |
</font></td></tr></table></td></tr></table><p> |
|
<!-- The first 10 lines are cut away by the homepage updating script. --> |
|
|
|
|
12 |
|
|
13 |
<!-- |
<!-- |
14 |
|
|
15 |
$Id: experiments.html,v 1.60 2005/04/16 00:29:45 debug Exp $ |
$Id: experiments.html,v 1.76 2005/06/24 09:33:32 debug Exp $ |
16 |
|
|
17 |
Copyright (C) 2003-2005 Anders Gavare. All rights reserved. |
Copyright (C) 2003-2005 Anders Gavare. All rights reserved. |
18 |
|
|
73 |
</ul> |
</ul> |
74 |
|
|
75 |
<p> |
<p> |
|
The emulator has several modes where it doesn't emulate any real machine. |
|
|
It can either run in "bare" mode, where no devices are included by default |
|
|
(just the CPU), or in a "test" mode where some simple devices are |
|
|
emulated. |
|
|
|
|
|
<p> |
|
76 |
<table border="0"><tr><td width="40"> </td><td> |
<table border="0"><tr><td width="40"> </td><td> |
77 |
<pre> |
<pre> |
78 |
<font color=#f00000>/* Hello world for GXemul */ |
<font color=#f00000>/* Hello world for GXemul */ |
106 |
</font></pre> |
</font></pre> |
107 |
</td></tr></table> |
</td></tr></table> |
108 |
|
|
109 |
This hello world program is available here as well: |
<p>(This hello world program is available here as well: |
110 |
<a href="hello_mips.c">hello_mips.c</a> |
<a href="hello_mips.c"><tt>hello_mips.c</tt></a>) |
111 |
<p> |
|
112 |
I recommend that you build a GCC cross compiler for the |
<p>I recommend that you build a GCC cross compiler for the |
113 |
<b>mips64-unknown-elf</b> target, and install it. Other compilers could |
<b>mips64-unknown-elf</b> target, and install it. Other compilers could |
114 |
work too, but GCC is good because of its portability. Then try to compile |
work too, but GCC is good because of its portability. Then try to compile |
115 |
the hello world program: |
and link the hello world program: |
116 |
<pre> |
<pre> |
117 |
$ <b>mips64-unknown-elf-gcc -O2 hello_mips.c -mips4 -mabi=64 -c</b> |
$ <b>mips64-unknown-elf-gcc -O2 hello_mips.c -mips4 -mabi=64 -c</b> |
118 |
$ <b>mips64-unknown-elf-ld -Ttext 0xa800000000030000 -e f hello_mips.o -o hello_mips --oformat=elf64-bigmips</b> |
$ <b>mips64-unknown-elf-ld -Ttext 0xa800000000030000 -e f hello_mips.o -o hello_mips --oformat=elf64-bigmips</b> |
185 |
<h4>Hello World for GXemul's PPC mode</h4> |
<h4>Hello World for GXemul's PPC mode</h4> |
186 |
|
|
187 |
GXemul also has an experimental PowerPC emulation mode. |
GXemul also has an experimental PowerPC emulation mode. |
188 |
<a href="hello_ppc.c">hello_ppc.c</a> is similar to hello_mips.c, but |
<a href="hello_ppc.c"><tt>hello_ppc.c</tt></a> is similar to |
189 |
should be compiled and run as follows: |
<tt>hello_mips.c</tt>, but should be compiled and run as follows: |
190 |
<p> |
<p> |
191 |
<pre> |
<pre> |
192 |
$ <b>ppc-unknown-elf-gcc -O2 hello_ppc.c -c</b> |
$ <b>ppc-unknown-elf-gcc -O2 hello_ppc.c -c</b> |
212 |
<a name="expdevices"></a> |
<a name="expdevices"></a> |
213 |
<h3>Experimental devices:</h3> |
<h3>Experimental devices:</h3> |
214 |
|
|
215 |
The "test" MIPS machine has the following experimental devices: |
The emulator has several modes where it doesn't emulate any real machine. |
216 |
|
It can either run in "bare" mode, where no devices are included by default |
217 |
|
(just the CPU), or in a "test" mode where some simple devices are |
218 |
|
emulated. |
219 |
|
|
220 |
|
<p> |
221 |
|
The <tt>testmips</tt> machine has the following experimental devices: |
222 |
|
|
223 |
<p> |
<p> |
224 |
<center><table border="0" width="80%"> |
<center><table border="0" width="80%"> |
225 |
|
|
226 |
<tr> |
<tr> |
227 |
<td align="left" valign="top" width="200"> |
<td align="left" valign="top" width="200"> |
228 |
<b>cons:</b> |
<b><tt>cons</tt>:</b> |
229 |
<p>This is a simple console device, for writing |
<p>This is a simple console device, for writing |
230 |
characters to the controlling terminal. |
characters to the controlling terminal. |
231 |
<p>Source code: <font color="#0000f0">devices/dev_cons.c</font> |
<p>Source code: <font color="#0000f0"><tt>src/devices/dev_cons.c</tt></font> |
232 |
<br>Default physical address:  <font color="#0000f0">0x10000000</font> |
<br>Default physical address:  <font color="#0000f0">0x10000000</font> |
233 |
</td> |
</td> |
234 |
<td align="left" valign="top" width="25"> </td> |
<td align="left" valign="top" width="25"> </td> |
241 |
<tr> |
<tr> |
242 |
<td align="left" valign="top">0x0000</td> |
<td align="left" valign="top">0x0000</td> |
243 |
<td align="left" valign="top"> |
<td align="left" valign="top"> |
244 |
Read: <b>getchar()</b> (non-blocking)<br> |
Read: <b><tt>getchar()</tt></b> (non-blocking)<br> |
245 |
Write: <b>putchar(ch)</b></td> |
Write: <b><tt>putchar(ch)</tt></b></td> |
246 |
</tr> |
</tr> |
247 |
<tr> |
<tr> |
248 |
<td align="left" valign="top">0x0010</td> |
<td align="left" valign="top">0x0010</td> |
249 |
<td align="left" valign="top">Read or write: <b>halt()</b><br> |
<td align="left" valign="top">Read or write: <b><tt>halt()</tt></b><br> |
250 |
(Useful for exiting the emulator.)</td> |
(Useful for exiting the emulator.)</td> |
251 |
</tr> |
</tr> |
252 |
</table> |
</table> |
259 |
|
|
260 |
<tr> |
<tr> |
261 |
<td align="left" valign="top"> |
<td align="left" valign="top"> |
262 |
<b>mp:</b> |
<b><tt>mp</tt>:</b> |
263 |
<p>This device controls the behaviour of CPUs in an emulated |
<p>This device controls the behaviour of CPUs in an emulated |
264 |
multi-processor system. |
multi-processor system. |
265 |
<p>Source code: <font color="#0000f0">devices/dev_mp.c</font> |
<p>Source code: <font color="#0000f0"><tt>src/devices/dev_mp.c</tt></font> |
266 |
<br>Default physical address:  <font color="#0000f0">0x11000000</font> |
<br>Default physical address:  <font color="#0000f0">0x11000000</font> |
267 |
</td> |
</td> |
268 |
<td></td> |
<td></td> |
274 |
</tr> |
</tr> |
275 |
<tr> |
<tr> |
276 |
<td align="left" valign="top">0x0000</td> |
<td align="left" valign="top">0x0000</td> |
277 |
<td align="left" valign="top">Read: <b>whoami()</b>. |
<td align="left" valign="top">Read: <b><tt>whoami()</tt></b>. |
278 |
Returns the id of the CPU doing the read.</td> |
Returns the id of the CPU doing the read.</td> |
279 |
</tr> |
</tr> |
280 |
<tr> |
<tr> |
281 |
<td align="left" valign="top">0x0010</td> |
<td align="left" valign="top">0x0010</td> |
282 |
<td align="left" valign="top">Read: <b>ncpus()</b>. |
<td align="left" valign="top">Read: <b><tt>ncpus()</tt></b>. |
283 |
Returns the number of CPUs in the system.</td> |
Returns the number of CPUs in the system.</td> |
284 |
</tr> |
</tr> |
285 |
<tr> |
<tr> |
286 |
<td align="left" valign="top">0x0020</td> |
<td align="left" valign="top">0x0020</td> |
287 |
<td align="left" valign="top">Write: <b>startupcpu(i)</b>. |
<td align="left" valign="top">Write: <b><tt>startupcpu(i)</tt></b>. |
288 |
Starts CPU i. It begins execution at the address |
Starts CPU i. It begins execution at the address |
289 |
set by a write to startupaddr (see below).</td> |
set by a write to startupaddr (see below).</td> |
290 |
</tr> |
</tr> |
291 |
<tr> |
<tr> |
292 |
<td align="left" valign="top">0x0030</td> |
<td align="left" valign="top">0x0030</td> |
293 |
<td align="left" valign="top">Write: <b>startupaddr(addr)</b>. |
<td align="left" valign="top">Write: <b><tt>startupaddr(addr)</tt></b>. |
294 |
Sets the starting address for CPUs.</td> |
Sets the starting address for CPUs.</td> |
295 |
</tr> |
</tr> |
296 |
<tr> |
<tr> |
297 |
<td align="left" valign="top">0x0040</td> |
<td align="left" valign="top">0x0040</td> |
298 |
<td align="left" valign="top">Write: <b>pause_addr(addr)</b>. |
<td align="left" valign="top">Write: <b><tt>pause_addr(addr)</tt></b>. |
299 |
Sets the pause address. (TODO: This is not |
Sets the pause address. (TODO: This is not |
300 |
used anymore?)</td> |
used anymore?)</td> |
301 |
</tr> |
</tr> |
302 |
<tr> |
<tr> |
303 |
<td align="left" valign="top">0x0050</td> |
<td align="left" valign="top">0x0050</td> |
304 |
<td align="left" valign="top">Write: <b>pause_cpu(i)</b>. |
<td align="left" valign="top">Write: <b><tt>pause_cpu(i)</tt></b>. |
305 |
Stops all CPUs <i>except</i> CPU i.</td> |
Stops all CPUs <i>except</i> CPU i.</td> |
306 |
</tr> |
</tr> |
307 |
<tr> |
<tr> |
308 |
<td align="left" valign="top">0x0060</td> |
<td align="left" valign="top">0x0060</td> |
309 |
<td align="left" valign="top">Write: <b>unpause_cpu(i)</b>. |
<td align="left" valign="top">Write: <b><tt>unpause_cpu(i)</tt></b>. |
310 |
Unpauses all CPUs <i>except</i> CPU i.</td> |
Unpauses all CPUs <i>except</i> CPU i.</td> |
311 |
</tr> |
</tr> |
312 |
<tr> |
<tr> |
313 |
<td align="left" valign="top">0x0070</td> |
<td align="left" valign="top">0x0070</td> |
314 |
<td align="left" valign="top">Write: <b>startupstack(addr)</b>. |
<td align="left" valign="top">Write: <b><tt>startupstack(addr)</tt></b>. |
315 |
Sets the startup stack address. (CPUs started with |
Sets the startup stack address. (CPUs started with |
316 |
startupcpu() above will have their stack pointer |
startupcpu() above will have their stack pointer |
317 |
set to this value.)</td> |
set to this value.)</td> |
318 |
</tr> |
</tr> |
319 |
<tr> |
<tr> |
320 |
<td align="left" valign="top">0x0080</td> |
<td align="left" valign="top">0x0080</td> |
321 |
<td align="left" valign="top">Read: <b>hardware_random()</b>. |
<td align="left" valign="top">Read: <b><tt>hardware_random()</tt></b>. |
322 |
This produces a "random" number.</td> |
This produces a "random" number.</td> |
323 |
</tr> |
</tr> |
324 |
<tr> |
<tr> |
325 |
<td align="left" valign="top">0x0090</td> |
<td align="left" valign="top">0x0090</td> |
326 |
<td align="left" valign="top">Read: <b>memory()</b>. |
<td align="left" valign="top">Read: <b><tt>memory()</tt></b>. |
327 |
Returns the number of bytes of RAM in the system.</td> |
Returns the number of bytes of RAM in the system.</td> |
328 |
</tr> |
</tr> |
329 |
|
<tr> |
330 |
|
<td align="left" valign="top">0x00a0</td> |
331 |
|
<td align="left" valign="top">Write: <b><tt>ipi_one((nr << 16) + cpuid)</tt></b>. |
332 |
|
Sends IPI <tt>nr</tt> to a specific CPU.</td> |
333 |
|
</tr> |
334 |
|
<tr> |
335 |
|
<td align="left" valign="top">0x00b0</td> |
336 |
|
<td align="left" valign="top">Write: <b><tt>ipi_many((nr << 16) + cpuid)</tt></b>. |
337 |
|
Sends IPI <tt>nr</tt> to all CPUs <i>except</i> |
338 |
|
the specified one.</td> |
339 |
|
</tr> |
340 |
|
<tr> |
341 |
|
<td align="left" valign="top">0x00c0</td> |
342 |
|
<td align="left" valign="top">Read: <b><tt>ipi_read()</tt></b>. |
343 |
|
Returns the next pending IPI. 0 is returned if there is no |
344 |
|
pending IPI (so 0 shouldn't be used for valid IPIs). |
345 |
|
Hardware int 6 is deasserted when the IPI queue is empty. |
346 |
|
<br>Write: <b><tt>ipi_flush()</tt></b>. |
347 |
|
Clears the IPI queue, discarding any pending IPIs.</td> |
348 |
|
</tr> |
349 |
</table> |
</table> |
350 |
</td> |
</td> |
351 |
</tr> |
</tr> |
356 |
|
|
357 |
<tr> |
<tr> |
358 |
<td align="left" valign="top"> |
<td align="left" valign="top"> |
359 |
<b>fb:</b> |
<b><tt>fb</tt>:</b> |
360 |
<p>A simple linear framebuffer, for graphics output. |
<p>A simple linear framebuffer, for graphics output. |
361 |
640 x 480 pixels, 3 bytes per pixel (red, green, blue, 8 bits each). |
640 x 480 pixels, 3 bytes per pixel (red, green, blue, 8 bits each). |
362 |
<p>Source code: <font color="#0000f0">devices/dev_fb.c</font> |
<p>Source code: <font color="#0000f0"><tt>src/devices/dev_fb.c</tt></font> |
363 |
<br>Default physical address:  <font color="#0000f0">0x12000000</font> |
<br>Default physical address:  <font color="#0000f0">0x12000000</font> |
364 |
</td> |
</td> |
365 |
<td></td> |
<td></td> |
392 |
in a non-cached manner.) |
in a non-cached manner.) |
393 |
|
|
394 |
<p> |
<p> |
395 |
(When using the PPC test machine, "testppc", the addresses are |
(When using the PPC test machine (<tt>testppc</tt>), the addresses are |
396 |
0x10000000, 0x11000000 etc., so no need to add any virtual displacement.) |
0x10000000, 0x11000000 etc., so no need to add any virtual displacement.) |
397 |
|
|
398 |
<p> |
<p>The <b><tt>mp</tt></b> device is agnostic when it comes to word-length. |
399 |
The <b>mp</b> device is agnostic when it comes to |
For example, when reading offset 0x0000 of the <b><tt>mp</tt></b> device, |
400 |
word-length. For example, when reading offset 0x0000 of the <b>mp</b> |
you may use any kind of read (an 8-bit read will work just as well as a |
401 |
device, you may use any kind of read (an 8-bit read will work just as well |
64-bit read, although the value will be truncated to 8 bits in the first |
402 |
as a 64-bit read, although the value will be truncated to 8 bits in the |
case). |
403 |
first case). |
|
404 |
|
<p>The <b><tt>cons</tt></b> device should be accessed using 8-bit reads |
405 |
<p> |
and writes. Doing a getchar() (ie reading from offset 0x0000) returns 0x00 |
406 |
The <b>cons</b> device should be accessed using 8-bit reads and writes. |
if no character was available. |
407 |
Doing a getchar() (ie reading from offset 0x0000) returns 0x00 if no |
|
408 |
character was available. |
<p>On MIPS, the <b><tt>cons</tt></b> device is hardwired to interrupt 2 |
409 |
|
(the lowest hardware interrupt). Whenever a character is available, the |
410 |
<p> |
interrupt is asserted. When there are no more available characters, the |
411 |
On MIPS, the <b>cons</b> device is hardwired to interrupt 2 (the lowest |
interrupt is deasserted. (Remember that the interrupt has to be enabled in |
412 |
hardware interrupt). Whenever a character is available, the interrupt is |
the status register of the system coprocessor.) |
413 |
asserted. When there are no more available characters, the interrupt is |
|
414 |
deasserted. (Remember that the interrupt has to be enabled in the status |
<p>The IPIs controlled by the <b><tt>mp</tt></b> device are hardwired to |
415 |
register of the system coprocessor.) |
interrupt 6. Whenever an IPI is "sent", interrupt 6 is asserted on the |
416 |
|
target CPU(s), and the IPI number is added last in the IPI queue for that |
417 |
|
CPU. It is then up to that CPU to read from offset 0x00c0, to figure out |
418 |
|
what kind of IPI it was. |
419 |
|
|
420 |
|
|
421 |
|
|
426 |
<h3>Experiments with other kernels and guest OSes:</h3> |
<h3>Experiments with other kernels and guest OSes:</h3> |
427 |
|
|
428 |
<p> |
<p> |
429 |
Operating system kernels and other test programs can be downloaded from |
Free Operating system kernels and other test programs can be |
430 |
various places. Here are links to some of the kernels that I usually |
downloaded from various places on the Internet. Other kinds of software |
431 |
experiment with. |
(non-Free), if obsolete enough (such as Ultrix or Windows NT), can |
432 |
|
sometimes be found in garbage containers, or perhaps be found for a cheap |
433 |
|
price on ebay or at a flea market. |
434 |
|
|
435 |
<p> |
<p> |
436 |
<font color="#ff0000"> |
<font color="#ff0000"> |
451 |
<li><a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a>: |
<li><a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a>: |
452 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.gz</a> |
453 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.symbols.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmax/binary/kernel/netbsd-INSTALL.symbols.gz</a> |
454 |
<br>gunzip the files, and run the emulator with <b>-E dec -e 3max -q -N -XY2</b> |
<br>gunzip the files, and run the emulator with <b><tt>-E dec -e 3max -q -N -XY2</tt></b> |
455 |
for a graphical framebuffer console. Remove <b>-XY2</b> and <b>-N</b> to use serial (stdin/stdout) console. |
for a graphical framebuffer console. Remove <b><tt>-XY2</tt></b> and <b><tt>-N</tt></b> to use serial (stdin/stdout) console. |
456 |
Read <a href="guestoses.html#netbsdinstall">this section</a> about how to install NetBSD/pmax onto a harddisk image. |
Read <a href="guestoses.html#netbsdinstall">this section</a> about how to install NetBSD/pmax onto a harddisk image. |
457 |
<p> |
<p> |
458 |
<li><a href="http://www.openbsd.org/pmax.html">OpenBSD/pmax</a>: |
<li><a href="http://www.openbsd.org/pmax.html">OpenBSD/pmax</a>: |
459 |
<br><a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/2.8/pmax/bsd">ftp://ftp.se.openbsd.org/pub/OpenBSD/2.8/pmax/bsd</a> |
<br><a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/2.8/pmax/bsd">ftp://ftp.se.openbsd.org/pub/OpenBSD/2.8/pmax/bsd</a> |
460 |
<br>This is an old OpenBSD kernel in a.out format. Try <b>-E dec -e 3max</b>. |
<br>This is an old OpenBSD kernel in a.out format. Try <b><tt>-E dec -e 3max</tt></b>. |
461 |
<br>Read <a href="guestoses.html#openbsdinstall">this section</a> about how to install OpenBSD/pmax onto a harddisk image. |
<br>Read <a href="guestoses.html#openbsdinstall">this section</a> about how to install OpenBSD/pmax onto a harddisk image. |
462 |
It's a bit more complicated than installing NetBSD/pmax, but might work. |
It's a bit more complicated than installing NetBSD/pmax, but |
463 |
|
it usually works. |
464 |
<p> |
<p> |
465 |
<li>Linux for DECstation: |
<li>Linux for DECstation: |
|
<br>Here is a Debian package containing a Linux 2.4.26 kernel for |
|
|
DECstation which supports framebuffer! |
|
|
<br><a href="http://ftp.debian.org/debian/pool/main/k/kernel-patch-2.4.26-mips/kernel-image-2.4.26-r3k-kn02_2.4.26-0.040505.1_mipsel.deb">http://ftp.debian.org/debian/pool/main/k/kernel-patch-2.4.26-mips/ |
|
|
<br>kernel-image-2.4.26-r3k-kn02_2.4.26-0.040505.1_mipsel.deb</a> |
|
|
<br>Run the following commands to extract the kernel:<pre> |
|
|
<b>ar x kernel-image-2.4.26-r3k-kn02_2.4.26-0.040505.1_mipsel.deb data.tar.gz</b> |
|
|
<b>tar xfzv data.tar.gz ./boot/vmlinux-2.4.26-r3k-kn02</b> |
|
|
<b>mv boot/vmlinux-* .; rmdir boot</b> |
|
|
</pre> |
|
|
<br>To try with the framebuffer: <b>-E dec -e 3max -X vmlinux-2.4.26-r3k-kn02</b> |
|
|
<br>To try with serial console: <b>-E dec -e 3max -o 'console=ttyS3' vmlinux-2.4.26-r3k-kn02</b> |
|
466 |
<br>Read <a href="guestoses.html#declinux">this section</a> about how to run a Debian Linux install kernel. |
<br>Read <a href="guestoses.html#declinux">this section</a> about how to run a Debian Linux install kernel. |
467 |
<br>Here are some older kernels (these don't support framebuffer, I think): |
<br>Here are some older kernels (these don't support framebuffer, I think): |
468 |
<a href="http://www.xs4all.nl/~vhouten/mipsel/kernels.html">http://www.xs4all.nl/~vhouten/mipsel/kernels.html</a> |
<a href="http://www.xs4all.nl/~vhouten/mipsel/kernels.html">http://www.xs4all.nl/~vhouten/mipsel/kernels.html</a> |
469 |
<br>Note: Make sure you add <b>-CR4400</b> to the command line for |
<br>Note: Make sure you add <b><tt>-CR4400</tt></b> to the command line for |
470 |
R4000 kernels, as Linux doesn't autodetect CPU type at runtime. |
R4000 kernels, as Linux doesn't autodetect CPU type at runtime. |
471 |
|
<br>Linux also doesn't detect automatically whether you are booting |
472 |
|
in graphical or serial console mode, so you need to add |
473 |
|
<tt><b>-o 'console=ttyS3'</b></tt> or similar for serial |
474 |
|
console mode. |
475 |
<p> |
<p> |
476 |
<li>Sprite: |
<li><a href="http://www.cs.berkeley.edu/projects/sprite/retrospective.html">Sprite</a>: |
477 |
<br>The Unix Heritage Society (TUHS, <a href="http://www.tuhs.org">www.tuhs.org</a>) |
<br>The Unix Heritage Society (TUHS, <a href="http://www.tuhs.org">www.tuhs.org</a>) |
478 |
has preserved a copy of a harddisk image for a DECstation 5000/200: |
has preserved a copy of a harddisk image for a DECstation |
479 |
<a href="http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite/">http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite</a>/<a href="http://www.es.embnet.org/Services/ftp/misc/TUHS/other_os/Sprite/ds5000.bt">ds5000.bt</a> |
5000/200 (3MAX). |
|
<br>(MD5 (ds5000.bt) = ec84eeeb20fe77b758370d5e312e4a5e) |
|
480 |
<br>Read <a href="guestoses.html#sprite">this section</a> for more information |
<br>Read <a href="guestoses.html#sprite">this section</a> for more information |
481 |
about running this harddisk image in the emulator. |
about running this harddisk image in the emulator. |
482 |
<p> |
<p> |
483 |
<li><a href="http://www-2.cs.cmu.edu/afs/cs/project/mach/public/www/mach.html">Mach</a>: |
<li><a href="http://www-2.cs.cmu.edu/afs/cs/project/mach/public/www/mach.html">Mach</a>: |
484 |
<br>Important! Run <b>./configure --caches; make</b> |
<br>Important! Run <b><tt>./configure --caches; make</tt></b> |
485 |
|
<br>Also important: This is broken right now. :-( |
486 |
<br>Download <a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/">http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release</a>/<a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">pmax.tar.Z</a> |
<br>Download <a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/">http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release</a>/<a href="http://lost-contact.mit.edu/afs/athena/user/d/a/daveg/Info/Links/Mach/src/release/pmax.tar.Z">pmax.tar.Z</a> |
487 |
<br>tar xfvz pmax.tar.Z pmax_mach/special/mach.boot.MK83.STD+ANY |
<br><tt><b>tar xfvz pmax.tar.Z pmax_mach/special/mach.boot.MK83.STD+ANY</b></tt> |
488 |
<br><b>gxemul -E dec -e 3max -X pmax_mach/special/mach.boot.MK83.STD+ANY</b> |
<br><tt><b>gxemul -E dec -e 3max -X pmax_mach/special/mach.boot.MK83.STD+ANY</b></tt> |
489 |
</ul> |
</ul> |
490 |
</li> |
</li> |
491 |
|
|
496 |
<li><a href="http://www.netbsd.org/Ports/sgimips/">NetBSD/sgimips</a>: |
<li><a href="http://www.netbsd.org/Ports/sgimips/">NetBSD/sgimips</a>: |
497 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.gz</a> |
498 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.symbols.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP3x.symbols.gz</a> |
499 |
<br>gunzip, and try running with <b>-E sgi -e ip32</b>. |
<br>gunzip, and try running with <b><tt>-E sgi -e ip32</tt></b>. |
500 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.gz</a> |
501 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.symbols.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sgimips/binary/kernel/netbsd-INSTALL32_IP2x.symbols.gz</a> |
502 |
<br>gunzip, and try running with <b>-E sgi -e ip22</b> (or <b>-e ip24</b> or <b>-e ip20</b>). |
<br>gunzip, and try running with <b><tt>-E sgi -e ip22</tt></b> (or <b><tt>ip24</tt></b> or <b><tt>ip20</tt></b>). |
503 |
<p> |
<p> |
504 |
<li>Linux/SGI: |
<li>Linux/SGI: |
505 |
<br>Some kernels are available here: <a href="http://www.linux-mips.org/~glaurung/">http://www.linux-mips.org/~glaurung/</a> |
<br>Some kernels are available here: <a href="http://www.linux-mips.org/~glaurung/">http://www.linux-mips.org/~glaurung/</a> |
506 |
<br>Try running with <b>-E sgi -e ip32 -X</b> for a graphical framebuffer, or |
<br>Try running with <b><tt>-E sgi -e ip32 -X</tt></b> for a graphical framebuffer, or |
507 |
<b>-E sgi -e ip32 -o 'console=ttyS0'</b> for serial console. |
<b><tt>-E sgi -e ip32 -o 'console=ttyS0'</tt></b> for serial console. |
508 |
<br>Adding -b (bintrans) might work sometimes. |
<br>Adding <b><tt>-b</tt></b> (bintrans) might work sometimes. |
509 |
<br>(You need to add <b>-CR5000</b> if you're trying to run |
<br>(You need to add <b><tt>-CR5000</tt></b> if you're trying to run |
510 |
a kernel compiled for R5000, because Linux |
a kernel compiled for R5000, because Linux doesn't autodetect |
511 |
doesn't autodetect CPU at runtime.) |
the CPU type at runtime.) |
512 |
<br>Also: <a href="http://www.tal.org/~milang/o2/kernels/">http://www.tal.org/~milang/o2/kernels</a>/<a href="http://home.tal.org/~milang/o2/kernels/vmlinux64-2.6.8.1-IP32">vmlinux64-2.6.8.1-IP32</a> |
<br>Also: <a href="http://www.tal.org/~milang/o2/kernels/">http://www.tal.org/~milang/o2/kernels</a>/<a href="http://home.tal.org/~milang/o2/kernels/vmlinux64-2.6.8.1-IP32">vmlinux64-2.6.8.1-IP32</a> |
513 |
<br>Try <b>-E sgi -e ip32 -b -X -CR5000 vmlinux64-2.6.8.1-IP32</b>. |
<br>Try <b><tt>-E sgi -e ip32 -X -CR5000 vmlinux64-2.6.8.1-IP32</tt></b>. |
514 |
<br>And also some IP27 kernels: |
<br>And also some IP27 kernels: |
515 |
<a href="http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040428">http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040428</a> |
<a href="http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040428">http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040428</a> |
516 |
and |
and |
517 |
<a href="http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040528.bz2">http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040528.bz2</a> |
<a href="http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040528.bz2">http://www.total-knowledge.com/progs/mips/kernels/vmlinux.ip27-20040528.bz2</a> |
518 |
(but unfortunately these lack symbols). |
(but unfortunately these lack symbols). |
519 |
<br>Try the IP27 kernels with <b>-E sgi -e ip27 -t</b>. |
<br>Try the IP27 kernels with <b><tt>-E sgi -e ip27 -t</tt></b>. |
520 |
<p> |
<p> |
521 |
<li><a href="http://www.openbsd.org/sgi.html">OpenBSD/sgi</a>: |
<li><a href="http://www.openbsd.org/sgi.html">OpenBSD/sgi</a>: |
522 |
<br>Snapshots can be found at <a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/sgi/">ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/sgi/</a>. |
<br><a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.7/sgi/bsd.rd">ftp://ftp.openbsd.org/pub/OpenBSD/3.7/sgi/bsd.rd</a> |
523 |
<br>Try <b>gxemul -b -E sgi -e ip32 bsd.rd</b> |
<br>More recent snapshots can be found at <a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/sgi/">ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/sgi/</a>. |
524 |
|
<br>Try <b><tt>gxemul -E sgi -e ip32 bsd.rd</tt></b> |
525 |
<p> |
<p> |
526 |
<li><a href="http://www.freebsd.org/platforms/mips.html">FreeBSD/MIPS</a>: |
<li><a href="http://www.freebsd.org/platforms/mips.html">FreeBSD/MIPS</a>: |
527 |
I don't think public binary snapshots are available yet. |
I don't think public binary snapshots are available yet. |
529 |
<li>arcdiag: |
<li>arcdiag: |
530 |
<br>The NetBSD people have also made available an "arcdiag" for SGI-IP22: |
<br>The NetBSD people have also made available an "arcdiag" for SGI-IP22: |
531 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/sgimips/arcdiag.ip22">ftp://ftp.netbsd.org/pub/NetBSD/arch/sgimips/arcdiag.ip22</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/sgimips/arcdiag.ip22">ftp://ftp.netbsd.org/pub/NetBSD/arch/sgimips/arcdiag.ip22</a> |
532 |
<br>Try running <b>gxemul -E sgi -e ip22 -x arcdiag.ip22</b>. |
<br>Try running <tt><b>gxemul -E sgi -e ip22 -x arcdiag.ip22</b></tt>. |
533 |
</ul> |
</ul> |
534 |
</li> |
</li> |
535 |
|
|
540 |
<li><a href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a>: |
<li><a href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a>: |
541 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.gz</a> |
542 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.symbols.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/arc/binary/kernel/netbsd-RAMDISK.symbols.gz</a> |
543 |
<br>gunzip, and try with <b>-E arc -e rd94</b>. |
<br>gunzip, and try with <b><tt>-E arc -e rd94</tt></b>. |
544 |
<br>(You may also try other ARC models.) |
<br>(You may also try other ARC models.) |
545 |
<br>Read <a href="guestoses.html#netbsdarcinstall">this section</a> about how |
<br>Read <a href="guestoses.html#netbsdarcinstall">this section</a> about how |
546 |
to install NetBSD/arc onto a harddisk image. |
to install NetBSD/arc 1.6.2 onto a harddisk image. |
547 |
|
<br>(NetBSD/arc 2.0 doesn't work with disk images yet in GXemul.) |
548 |
<p> |
<p> |
549 |
<li><a href="http://www.openbsd.org/arc.html">OpenBSD/arc</a>: |
<li><a href="http://www.openbsd.org/arc.html">OpenBSD/arc</a>: |
550 |
<br><a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd.rd.elf">ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd.rd.elf</a> |
<br><a href="ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd.rd.elf">ftp://ftp.se.openbsd.org/pub/OpenBSD/2.3/arc/bsd.rd.elf</a> |
551 |
<br>Try running with <b>-X -E arc -e pica</b> or <b>-X -E arc -e tyne</b>. |
<br>Try running with <b><tt>-X -E arc -e pica</tt></b> or <b><tt>-X -E arc -e tyne</tt></b>. |
552 |
<br>Read <a href="guestoses.html#openbsdarcinstall">this section</a> about how |
<br>Read <a href="guestoses.html#openbsdarcinstall">this section</a> about how |
553 |
to install OpenBSD/arc onto a harddisk image. |
to install OpenBSD/arc onto a harddisk image. |
554 |
<p> |
<p> |
555 |
<li>Linux: |
<li>Linux: |
556 |
<br><a href="ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/boot/vmlinux-m700-2.1.131.gz">ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/boot/vmlinux-m700-2.1.131.gz</a> |
<br><a href="ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/boot/vmlinux-m700-2.1.131.gz">ftp://ftp.linux-mips.org/pub/linux/mips/mipsel-linux/boot/vmlinux-m700-2.1.131.gz</a> |
557 |
<br>gunzip, and run with <b>-v -J -X -N -E arc -e m700</b> (Olivetti M700) |
<br>gunzip, and run with <b><tt>-v -J -X -N -E arc -e m700</tt></b> (Olivetti M700) |
558 |
|
<br>(This probably doesn't work anymore.) |
559 |
<p> |
<p> |
560 |
<li>Pandora: |
<li>Pandora: |
561 |
<br><a href="ftp://ftp.linux-mips.org/pub/linux/mips/ancient/milo/">ftp://ftp.linux-mips.org/pub/linux/mips/ancient/milo</a>/<a href="ftp://ftp.linux-mips.org/pub/linux/mips/ancient/milo/milo-0.27.1.tar.gz">milo-0.27.1.tar.gz</a> |
<br><a href="ftp://ftp.linux-mips.org/pub/linux/mips/ancient/milo/">ftp://ftp.linux-mips.org/pub/linux/mips/ancient/milo</a>/<a href="ftp://ftp.linux-mips.org/pub/linux/mips/ancient/milo/milo-0.27.1.tar.gz">milo-0.27.1.tar.gz</a> |
562 |
<br>A generic test/diagnostics program for ARC-based machines. |
<br>A generic test/diagnostics program for ARC-based machines. |
563 |
<br>Run with <b>-E arc -e r94 milo-0.27.1/pandora</b> |
<br>Run with <b><tt>-E arc -e r94 milo-0.27.1/pandora</tt></b> |
564 |
<p> |
<p> |
565 |
<li>arcdiag: |
<li>arcdiag: |
566 |
<br>Precompiled binary:<a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/arc/arcdiag">ftp://ftp.netbsd.org/pub/NetBSD/arch/arc/arcdiag</a> |
<br>Precompiled binary:<a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/arc/arcdiag">ftp://ftp.netbsd.org/pub/NetBSD/arch/arc/arcdiag</a> |
567 |
<br>(alternative: <a href="http://www.sensi.org/~alec/mips/arcdiag">http://www.sensi.org/~alec/mips/arcdiag</a>) |
<br>(alternative: <a href="http://www.sensi.org/~alec/mips/arcdiag">http://www.sensi.org/~alec/mips/arcdiag</a>) |
568 |
<br>A generic test/diagnostics program for ARC-based machines. |
<br>A generic test/diagnostics program for ARC-based machines. |
569 |
<br>Run with <b>-E arc -e pica arcdiag</b> (or some other ARC mode). |
<br>Run with <b><tt>-E arc -e pica arcdiag</tt></b> (or some other ARC mode). |
570 |
<br>Example arcdiag output (from real machines): |
<br>Example arcdiag output (from real machines): |
571 |
<br><a href="http://mail-index.netbsd.org/port-arc/2000/10/18/0001.html">http://mail-index.netbsd.org/port-arc/2000/10/18/0001.html</a> (Olivetti M700-10) |
<br><a href="http://mail-index.netbsd.org/port-arc/2000/10/18/0001.html">http://mail-index.netbsd.org/port-arc/2000/10/18/0001.html</a> (Olivetti M700-10) |
572 |
<br><a href="http://www.sensi.org/~alec/mips/arcdiag.txt">http://www.sensi.org/~alec/mips/arcdiag.txt</a> (PICA-61) |
<br><a href="http://www.sensi.org/~alec/mips/arcdiag.txt">http://www.sensi.org/~alec/mips/arcdiag.txt</a> (PICA-61) |
573 |
<br><a href="http://mail-index.netbsd.org/port-arc/2000/10/14/0000.html">http://mail-index.netbsd.org/port-arc/2000/10/14/0000.html</a> (Deskstation Tyne) |
<br><a href="http://mail-index.netbsd.org/port-arc/2000/10/14/0000.html">http://mail-index.netbsd.org/port-arc/2000/10/14/0000.html</a> (Deskstation Tyne) |
574 |
<br><a href="http://mail-index.netbsd.org/port-arc/2004/02/01/0001.html">http://mail-index.netbsd.org/port-arc/2004/02/01/0001.html</a> (NEC RISCserver 4200) |
<br><a href="http://mail-index.netbsd.org/port-arc/2004/02/01/0001.html">http://mail-index.netbsd.org/port-arc/2004/02/01/0001.html</a> (NEC RISCserver 4200) |
575 |
<br><a href="http://mirror.aarnet.edu.au/pub/NetBSD/misc/chs/arcdiag.out">http://mirror.aarnet.edu.au/pub/NetBSD/misc/chs/arcdiag.out</a> (NEC-R96) |
<br><a href="http://mirror.aarnet.edu.au/pub/NetBSD/misc/chs/arcdiag.out">http://mirror.aarnet.edu.au/pub/NetBSD/misc/chs/arcdiag.out</a> (NEC-R96) |
576 |
|
<br>For some machines, such as <tt><b>-e pica</b></tt>, you can |
577 |
|
add <b><tt>-X</tt></b> to boot with a graphical VGA-style |
578 |
|
console. This however is probably a bit unstable and/or |
579 |
|
broken right now. |
580 |
|
<p> |
581 |
|
<li>Windows NT: |
582 |
|
<br>Put a "Windows NT 4.0 for MIPS" CDROM (or similar) into |
583 |
|
your CDROM drive. (On FreeBSD systems, it is usually called |
584 |
|
/dev/cd0c or similar. Change that to whatever the CDROM |
585 |
|
is called on your system, or the name of a raw .iso image.) |
586 |
|
<br>I have tried this with the Swedish version, but it might |
587 |
|
work with other versions too.<pre> |
588 |
|
$ <b><tt>dd if=/dev/zero of=winnt_test.img bs=1024 count=1 seek=999000</tt></b> |
589 |
|
$ <b><tt>gxemul -X -Earc -epica -d winnt_test.img -d bc6:/dev/cd0c -j MIPS\\ARCINST</tt></b> |
590 |
|
$ <b><tt>gxemul -X -Earc -epica -d winnt_test.img -d bc6:/dev/cd0c -j MIPS\\SETUPLDR</tt></b> |
591 |
|
</pre> <br><tt>ARCINST</tt> tries to prepare the disk image for installation. (It <i>almost</i> works.) |
592 |
|
<br><tt>SETUPLDR</tt> should load some drivers from the cdrom, but then it crashes with a bluescreen. |
593 |
</ul> |
</ul> |
594 |
</li> |
</li> |
595 |
|
|
599 |
<ul> |
<ul> |
600 |
<li><a href="http://www.netbsd.org/Ports/hpcmips/">NetBSD/hpcmips</a>: |
<li><a href="http://www.netbsd.org/Ports/hpcmips/">NetBSD/hpcmips</a>: |
601 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/installation/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/installation</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/installation/netbsd.gz">netbsd.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/installation/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/installation</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/installation/netbsd.gz">netbsd.gz</a> |
602 |
<br>Try <b>gxemul -X -b -E hpc -e mobilepro770 netbsd</b> |
<br>Try <b><tt>gxemul -X -E hpc -e mobilepro770 netbsd</tt></b> |
603 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel/netbsd-GENERIC.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/hpcmips/binary/kernel/netbsd-GENERIC.gz</a> |
604 |
<br>Try <b>gxemul -X -b -E hpc -e mobilepro770 netbsd-GENERIC</b> |
<br>Try <b><tt>gxemul -X -E hpc -e mobilepro770 netbsd-GENERIC</tt></b> |
605 |
<p> |
<p> |
606 |
<li>Linux for BE300: |
<li>Linux for BE300: |
607 |
<br><a href="http://www.linux4.be/2004/linux4be20040908.zip">http://www.linux4.be/2004/linux4be20040908.zip</a> |
<br><a href="http://www.linux4.be/2004/linux4be20040908.zip">http://www.linux4.be/2004/linux4be20040908.zip</a> |
608 |
<br>Try <b>gxemul -X -b -E hpc -e be300 vmlinux</b> |
<br>Try <b><tt>gxemul -X -E hpc -e be300 vmlinux</tt></b> |
609 |
<p> |
<p> |
610 |
<li>Linux for Agenda VR3: |
<li>Linux for Agenda VR3: |
611 |
<br>Download <a href="http://agenda-snow.sourceforge.net/kernel-old-versions/binary/">http://agenda-snow.sourceforge.net/kernel-old-versions/binary</a>/<a href="http://agenda-snow.sourceforge.net/kernel-old-versions/binary/root1.2.6.kernel-8.00">root1.2.6.kernel-8.00</a> |
<br>Download <a href="http://agenda-snow.sourceforge.net/kernel-old-versions/binary/">http://agenda-snow.sourceforge.net/kernel-old-versions/binary</a>/<a href="http://agenda-snow.sourceforge.net/kernel-old-versions/binary/root1.2.6.kernel-8.00">root1.2.6.kernel-8.00</a> |
612 |
<br>and <a href="http://vr3.uid0.sk/cd/Software/VR3_Distributions/H2O/">http://vr3.uid0.sk/cd/Software/VR3_Distributions/H2O</a>/<a href="http://vr3.uid0.sk/cd/Software/VR3_Distributions/H2O/root1.2.6.cramfs">root1.2.6.cramfs</a>. |
<br>and <a href="http://vr3.uid0.sk/cd/Software/VR3_Distributions/H2O/">http://vr3.uid0.sk/cd/Software/VR3_Distributions/H2O</a>/<a href="http://vr3.uid0.sk/cd/Software/VR3_Distributions/H2O/root1.2.6.cramfs">root1.2.6.cramfs</a>. |
613 |
<br>(or <a href="http://www.ipsec.info/~www/agenda/dream-1-noxip.cramfs">http://www.ipsec.info/~www/agenda/dream-1-noxip.cramfs</a>) |
<br>(or <a href="http://www.ipsec.info/~www/agenda/dream-1-noxip.cramfs">http://www.ipsec.info/~www/agenda/dream-1-noxip.cramfs</a>) |
614 |
<br>Try <b>gxemul -b -X -E hpc -e vr3 -x 0xbf200000:root1.2.6.cramfs 0xbf000000:0:0xbf0005e0:root1.2.6.kernel-8.00</b> |
<br>Try <b><tt>gxemul -X -E hpc -e vr3 -x 0xbf200000:root1.2.6.cramfs 0xbf000000:0:0xbf0005e0:root1.2.6.kernel-8.00</tt></b> |
615 |
<br>(or replace root1.2.6.cramfs with dream-1-noxip.cramfs) |
<br>(or replace root1.2.6.cramfs with dream-1-noxip.cramfs) |
616 |
<br>Remove <b>-X</b> to try with serial console instead of X, and |
<br>Remove <b><tt>-X</tt></b> to try with serial console instead of X, and |
617 |
remove <b>-b</b> to try without (old) bintrans. |
remove <b><tt>-b</tt></b> to try without (old) bintrans. |
618 |
<br>Add <b>-o 'init=/bin/sh'</b> to boot into a single-user shell. |
<br>Add <b><tt>-o 'init=/bin/sh'</tt></b> to boot into a single-user shell. |
619 |
<br>Add <b>-o 'init=/sbin/restore_defaults'</b> to run |
<br>Add <b><tt>-o 'init=/sbin/restore_defaults'</tt></b> to run |
620 |
a /sbin/restore_defaults (attempt to initialize the flash |
a <tt>/sbin/restore_defaults</tt> (attempt to initialize the |
621 |
memory). |
flash memory). |
622 |
<p> |
<p> |
623 |
<li>Linux for MobilePro etc.: |
<li>Linux for MobilePro etc.: |
624 |
<br><a href="http://pc1.peanuts.gr.jp/~kei/Hard-Float/Kernels/">http://pc1.peanuts.gr.jp/~kei/Hard-Float/Kernels/</a> |
<br><a href="http://pc1.peanuts.gr.jp/~kei/Hard-Float/Kernels/">http://pc1.peanuts.gr.jp/~kei/Hard-Float/Kernels/</a> |
625 |
<br>Uncompress the archive to get a kernel, vmlinux-800 for example. |
<br>Uncompress the archive to get a kernel, vmlinux-800 for example. |
626 |
<br>Try <b>./gxemul -b -X -o 'root=/dev/hda1' -d r:disk.img -d r:disk.img -Ehpc -e mobilepro800 vmlinux-800</b> |
<br>Try <b><tt>./gxemul -X -o 'root=/dev/hda1' -d r:disk.img -d r:disk.img -Ehpc -e mobilepro800 vmlinux-800</tt></b> |
627 |
<br>where disk.img is an ext2fs filesystem with contents from |
<br>where disk.img is an ext2fs filesystem with contents from |
628 |
<a href="http://pc1.peanuts.gr.jp/~kei/Hard-Float/Miniroots/miniroot-20010330.tar.bz2">http://pc1.peanuts.gr.jp/~kei/Hard-Float/Miniroots/miniroot-20010330.tar.bz2</a> |
<a href="http://pc1.peanuts.gr.jp/~kei/Hard-Float/Miniroots/miniroot-20010330.tar.bz2">http://pc1.peanuts.gr.jp/~kei/Hard-Float/Miniroots/miniroot-20010330.tar.bz2</a> |
629 |
<br>(Note the double disk arguments.) |
<br>(Note the double disk arguments.) |
631 |
<p> |
<p> |
632 |
<li><a href="http://www.disorder.ru/openbsd/be300/">OpenBSD/be300</a>: |
<li><a href="http://www.disorder.ru/openbsd/be300/">OpenBSD/be300</a>: |
633 |
<br><a href="http://www.disorder.ru/openbsd/be300/bsd.rd">http://www.disorder.ru/openbsd/be300/bsd.rd</a> |
<br><a href="http://www.disorder.ru/openbsd/be300/bsd.rd">http://www.disorder.ru/openbsd/be300/bsd.rd</a> |
634 |
<br>Try <b>gxemul -X -b -E hpc -e be300 bsd.rd</b> |
<br>Try <b><tt>gxemul -X -E hpc -e be300 bsd.rd</tt></b> |
635 |
<br>Note: -b might be buggy, so you can try without that if you want to. |
<br>Note: bintrans might be buggy, so you can try with -B if you want to. |
636 |
|
</ul> |
637 |
|
</li> |
638 |
|
|
639 |
|
<p> |
640 |
|
|
641 |
|
<li>Cobalt: |
642 |
|
<ul> |
643 |
|
<li><a href="http://www.netbsd.org/Ports/cobalt/">NetBSD/cobalt</a>: |
644 |
|
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/cobalt/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/cobalt/binary/kernel/netbsd-GENERIC.gz</a> |
645 |
|
<br>gunzip, and run with <b><tt>-E cobalt</tt></b> |
646 |
|
<br>(Or read <a href="guestoses.html#netbsdcobaltinstall">this |
647 |
|
section</a> on how to install NetBSD/cobalt onto a harddisk image.) |
648 |
|
<p> |
649 |
|
<li>Linux: |
650 |
|
<br><a href="http://people.debian.org/~pm/mips-cobalt/nfsroot/vmlinux_raq-2800.gz">http://people.debian.org/~pm/mips-cobalt/nfsroot/vmlinux_raq-2800.gz</a> |
651 |
|
<br>gunzip, and run with <b><tt>-E cobalt</tt></b> |
652 |
|
<p> |
653 |
|
<li>CoLo: |
654 |
|
<br><a href="http://www.colonel-panic.org/cobalt-mips/colo/colo-1.19.tar.gz">http://www.colonel-panic.org/cobalt-mips/colo/colo-1.19.tar.gz</a> |
655 |
|
<br><tt><b>tar zxvf colo-1.19.tar.gz colo-1.19/binaries/colo-rom-image.bin</b></tt> |
656 |
|
<br><tt><b>gxemul -Q -Ecobalt -v 0xbfc00000:colo-1.19/binaries/colo-rom-image.bin</b></tt> |
657 |
|
<br>(This doesn't work yet.) |
658 |
</ul> |
</ul> |
659 |
</li> |
</li> |
660 |
|
|
666 |
<br>NetBSD/playstation2 snapshot kernels are available here: (RAMDISK and GENERIC) |
<br>NetBSD/playstation2 snapshot kernels are available here: (RAMDISK and GENERIC) |
667 |
<br><a href="ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/installation/netbsd.gz">ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/installation/netbsd.gz</a> |
<br><a href="ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/installation/netbsd.gz">ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/installation/netbsd.gz</a> |
668 |
<br><a href="ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/binary/kernel/netbsd-GENERIC.gz</a> |
<br><a href="ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.NetBSD.org/pub/NetBSD/arch/playstation2/snapshot/20020327/binary/kernel/netbsd-GENERIC.gz</a> |
669 |
<br>Try running with <b>-X -E playstation2</b> (<b>-X</b> is required, for the framebuffer). |
<br>Try running with <b><tt>-X -E playstation2</tt></b> (<b><tt>-X</tt></b> is required, for the framebuffer). |
670 |
|
|
671 |
<p> |
<p> |
672 |
<li>Linux: |
<li>Linux: |
673 |
<br>A Linux kernel (2.2.21-pre1-xr7) is available from |
<br>A Linux kernel (2.2.21-pre1-xr7) is available from |
674 |
<a href="http://playstation2-linux.com/projects/xrhino-kernel/">http://playstation2-linux.com/projects/xrhino-kernel/</a> |
<a href="http://playstation2-linux.com/projects/xrhino-kernel/">http://playstation2-linux.com/projects/xrhino-kernel/</a> |
675 |
<br>Try running with <b>-X -E playstation2</b> (<b>-X</b> is required, for the framebuffer). |
<br>Try running with <b><tt>-X -E playstation2</tt></b> (<b><tt>-X</tt></b> is required, for the framebuffer). |
676 |
</ul> |
</ul> |
677 |
</li> |
</li> |
678 |
|
|
679 |
</ul> |
<p> |
|
|
|
|
<p> |
|
|
The following work even less than the ones listed above: |
|
680 |
|
|
681 |
<p> |
<li>EVBMIPS: |
|
<ul> |
|
|
<li>Cobalt: |
|
682 |
<ul> |
<ul> |
683 |
<li><a href="http://www.netbsd.org/Ports/cobalt/">NetBSD/cobalt</a>: |
<li><a href="http://www.netbsd.org/Ports/evbmips/">NetBSD/evbmips</a>: |
684 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/cobalt/binary/kernel/netbsd-GENERIC.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6.2/cobalt/binary/kernel/netbsd-GENERIC.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipseb/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipseb/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipseb/binary/kernel/netbsd-MALTA.gz">netbsd-MALTA.gz</a> |
685 |
<br>gunzip, and run with <b>-E cobalt</b> |
<br><b><tt>gxemul -E evbmips -e malta netbsd-MALTA</tt></b> |
686 |
<p> |
<br>The default CPU is a 5Kc (MIPS64). Add |
687 |
<li>Linux: |
<tt>-C 4Kc</tt> to use a MIPS32 CPU instead. |
688 |
<br><a href="http://people.debian.org/~pm/mips-cobalt/nfsroot/vmlinux_raq-2800.gz">http://people.debian.org/~pm/mips-cobalt/nfsroot/vmlinux_raq-2800.gz</a> |
<br>(NetBSD/evbmips runs in 32-bit mode on MIPS64 anyway...) |
689 |
<br>gunzip, and run with <b>-E cobalt</b> |
<br>Read <a href="guestoses.html#netbsdevbmipsinstall">this |
690 |
|
section</a> on how to install NetBSD/evbmips onto a harddisk image. |
691 |
|
<br>or |
692 |
|
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipseb/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipseb/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0.2/evbmips-mipseb/binary/kernel/netbsd-PB1000.gz">netbsd-PB1000.gz</a> |
693 |
|
<br><b><tt>gxemul -E evbmips -e pb1000 netbsd-PB1000</tt></b> |
694 |
</ul> |
</ul> |
695 |
</li> |
</li> |
696 |
|
|
697 |
<p> |
</ul> |
698 |
|
|
699 |
|
<p> |
700 |
|
The following don't work at all, or just very very little. |
701 |
|
|
702 |
|
<p> |
703 |
|
<ul> |
704 |
<li>Sony NeWS: |
<li>Sony NeWS: |
705 |
<ul> |
<ul> |
706 |
<li><a href="http://www.netbsd.org/Ports/newsmips/">NetBSD/newsmips</a>: |
<li><a href="http://www.netbsd.org/Ports/newsmips/">NetBSD/newsmips</a>: |
708 |
available here: |
available here: |
709 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.gz</a> |
710 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.symbols.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.symbols.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/newsmips/binary/kernel/netbsd-INSTALL.symbols.gz</a> |
711 |
<br>Try running with <b>-E sonynews</b>. |
<br>Try running with <b><tt>-E sonynews</tt></b>. |
712 |
<br>There's also a boot floppy available, but the emulator currently |
<br>There's also a boot floppy available, but the emulator currently |
713 |
doesn't support booting from it: |
doesn't support booting from it: |
714 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6/newsmips/installation/floppy/boot.fs">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6/newsmips/installation/floppy/boot.fs</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6/newsmips/installation/floppy/boot.fs">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.6/newsmips/installation/floppy/boot.fs</a> |
722 |
<li>Linux: |
<li>Linux: |
723 |
<br>A Linux kernel is available from |
<br>A Linux kernel is available from |
724 |
<a href="http://www.meshcube.org/feed/stable/">http://www.meshcube.org/feed/stable</a>/<a href="http://www.meshcube.org/feed/stable/kernel-image-mtx_2.4.24-3_mipsel.ipk">kernel-image-mtx_2.4.24-3_mipsel.ipk</a> |
<a href="http://www.meshcube.org/feed/stable/">http://www.meshcube.org/feed/stable</a>/<a href="http://www.meshcube.org/feed/stable/kernel-image-mtx_2.4.24-3_mipsel.ipk">kernel-image-mtx_2.4.24-3_mipsel.ipk</a> |
725 |
<br>(This is a Debian package, you can use <b>ar</b> and <b>tar</b> |
<br>(This is a Debian package, you can use <tt><b>ar</b></tt> and |
726 |
to extract kernel.img from it.) |
<tt><b>tar</b></tt> to extract kernel.img from it.) |
727 |
<br>Try running with <b>-E meshcube 0x80800000:kernel.img</b>. |
<br>Try running with <b><tt>-E meshcube 0x80800000:kernel.img</tt></b>. |
728 |
</ul> |
</ul> |
729 |
</li> |
</li> |
730 |
|
|
736 |
<br>A Linux kernel is available from |
<br>A Linux kernel is available from |
737 |
<a href="ftp://downloads.netgear.com/files/wg602_v1715.zip">ftp://downloads.netgear.com/files/wg602_v1715.zip</a> |
<a href="ftp://downloads.netgear.com/files/wg602_v1715.zip">ftp://downloads.netgear.com/files/wg602_v1715.zip</a> |
738 |
<br>(Unzip wg602_v1715.zip to get WG602_V1715.img.) |
<br>(Unzip wg602_v1715.zip to get WG602_V1715.img.) |
739 |
<br>Try running with <b>-E netgear 0xbfc80000:0x40:WG602_V1715.img</b>. |
<br>Try running with <b><tt>-E netgear 0xbfc80000:0x40:WG602_V1715.img</tt></b>. |
740 |
<br>(It takes some time to decompress the kernel, so be patient.) |
<br>(It takes some time to decompress the kernel, so be patient.) |
741 |
|
<br>(This doesn't really work yet.) |
742 |
</ul> |
</ul> |
743 |
</li> |
</li> |
744 |
|
|
745 |
<p> |
<p> |
746 |
|
|
|
<li>Linksys WRT54G: |
|
|
<ul> |
|
|
<li>Linux: |
|
|
<br><a href="http://openwrt.org/">OpenWRT</a> is a Linux |
|
|
distribution for the WRT54G. |
|
|
<br><a href="http://www.batbox.org/wrt54g-linux.html">BatBox</a> |
|
|
is another distribution. |
|
|
<br>Download <a href="http://pjf.dotgeek.org/downloads/openwrt/openwrt-g-code.bin">http://pjf.dotgeek.org/downloads/openwrt/openwrt-g-code.bin</a> |
|
|
(or a similar .bin file). |
|
|
<br>From offset 60 and forward in the bin file, there is a gzip file. |
|
|
<br>$ <b>dd if=openwrt-g-code.bin of=piggy.gz bs=60 iseek=1 oseek=0</b> |
|
|
<br>$ <b>gunzip piggy.gz</b> |
|
|
<br>$ <b>gxemul -E linksys -t 0x80001000:piggy</b> |
|
|
<br>There's also a .bin file available from linksys: |
|
|
<a href="ftp://ftp.linksys.com/pub/network/WRT54G_1.30.7_US_code.bin">ftp://ftp.linksys.com/pub/network/WRT54G_1.30.7_US_code.bin</a> |
|
|
</ul> |
|
|
</li> |
|
|
</ul> |
|
|
|
|
|
<p> |
|
|
The following don't work at all, actually, because the PPC and SPARC |
|
|
modes are just skeletons so far. |
|
|
|
|
|
<p> |
|
|
<ul> |
|
|
|
|
747 |
<li>Walnut (evbppc): |
<li>Walnut (evbppc): |
748 |
<ul> |
<ul> |
749 |
<li><a href="http://www.netbsd.org/Ports/evbppc/">NetBSD/evbppc</a>: |
<li><a href="http://www.netbsd.org/Ports/evbppc/">NetBSD/evbppc</a>: |
750 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/evbppc/binary/kernel/netbsd-INSTALL_WALNUT.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/evbppc/binary/kernel/netbsd-INSTALL_WALNUT.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/evbppc/binary/kernel/netbsd-INSTALL_WALNUT.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/evbppc/binary/kernel/netbsd-INSTALL_WALNUT.gz</a> |
751 |
<br>gunzip, and try the following: |
<br>gunzip, and try the following: |
752 |
<br>$ <b>gxemul -E walnut -v -t netbsd-INSTALL_WALNUT</b> |
<br><tt><b>gxemul -E walnut -v -t netbsd-INSTALL_WALNUT</b></tt> |
753 |
</ul> |
</ul> |
754 |
</li> |
</li> |
755 |
|
|
760 |
<li><a href="http://www.netbsd.org/Ports/pmppc/">NetBSD/pmppc</a>: |
<li><a href="http://www.netbsd.org/Ports/pmppc/">NetBSD/pmppc</a>: |
761 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmppc/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmppc/binary/kernel/netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmppc/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/pmppc/binary/kernel/netbsd-INSTALL.gz</a> |
762 |
<br>gunzip, and try the following: |
<br>gunzip, and try the following: |
763 |
<br>$ <b>gxemul -E pmppc netbsd-INSTALL</b> |
<br><tt><b>gxemul -E pmppc netbsd-INSTALL</b></tt> |
764 |
</ul> |
</ul> |
765 |
</li> |
</li> |
766 |
|
|
771 |
<li><a href="http://www.netbsd.org/Ports/sandpoint/">NetBSD/sandpoint</a>: |
<li><a href="http://www.netbsd.org/Ports/sandpoint/">NetBSD/sandpoint</a>: |
772 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sandpoint/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sandpoint/binary/kernel/netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sandpoint/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sandpoint/binary/kernel/netbsd-INSTALL.gz</a> |
773 |
<br>gunzip, and try the following: |
<br>gunzip, and try the following: |
774 |
<br>$ <b>gxemul -E sandpoint -v -t netbsd-INSTALL</b> |
<br><tt><b>gxemul -E sandpoint -v -t netbsd-INSTALL</b></tt> |
775 |
</ul> |
</ul> |
776 |
</li> |
</li> |
777 |
|
|
782 |
<li><a href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a>: |
<li><a href="http://www.netbsd.org/Ports/prep/">NetBSD/prep</a>: |
783 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/prep/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/prep/binary/kernel/netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/prep/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/prep/binary/kernel/netbsd-INSTALL.gz</a> |
784 |
<br>gunzip, and try the following: |
<br>gunzip, and try the following: |
785 |
<br>$ <b>gxemul -E prep -v -t netbsd-INSTALL</b> |
<br><tt><b>gxemul -E prep -v -t netbsd-INSTALL</b></tt> |
786 |
<p> |
<p> |
787 |
<li>Linux: |
<li>Linux: |
788 |
<br><a href="http://jocelyn.mayer.free.fr/qemu-ppc/linux_images/2.4.25-PPC/vmlinux">http://jocelyn.mayer.free.fr/qemu-ppc/linux_images/2.4.25-PPC/vmlinux</a> |
<br><a href="http://jocelyn.mayer.free.fr/qemu-ppc/linux_images/2.4.25-PPC/vmlinux">http://jocelyn.mayer.free.fr/qemu-ppc/linux_images/2.4.25-PPC/vmlinux</a> |
789 |
<br>$ <b>gxemul -E prep -v -t vmlinux</b> |
<br><tt><b>gxemul -E prep -v -t vmlinux</b></tt> |
790 |
</ul> |
</ul> |
791 |
</li> |
</li> |
792 |
|
|
796 |
<ul> |
<ul> |
797 |
<li><a href="http://www.netbsd.org/Ports/macppc/">NetBSD/macppc</a>: |
<li><a href="http://www.netbsd.org/Ports/macppc/">NetBSD/macppc</a>: |
798 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/macppc/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/macppc/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/macppc/binary/kernel/netbsd-INSTALL.gz">netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/macppc/binary/kernel/">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/macppc/binary/kernel</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/macppc/binary/kernel/netbsd-INSTALL.gz">netbsd-INSTALL.gz</a> |
799 |
<br>$ <b>gxemul -E macppc -e g4 -t netbsd-INSTALL</b> |
<br><tt><b>gxemul -E macppc -e g4 -t netbsd-INSTALL</b></tt> |
800 |
<p> |
<p> |
801 |
<li><a href="http://www.openbsd.org/macppc.html">OpenBSD/macppc</a>: |
<li><a href="http://www.openbsd.org/macppc.html">OpenBSD/macppc</a>: |
802 |
<br><a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.6/macppc/">ftp://ftp.openbsd.org/pub/OpenBSD/3.6/macppc</a>/<a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.6/macppc/bsd.rd">bsd.rd</a> |
<br><a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.6/macppc/">ftp://ftp.openbsd.org/pub/OpenBSD/3.6/macppc</a>/<a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.6/macppc/bsd.rd">bsd.rd</a> |
803 |
<br>$ <b>gxemul -E macppc -e g4 -t bsd.rd</b> |
<br><tt><b>gxemul -E macppc -e g4 -t bsd.rd</b></tt> |
804 |
</ul> |
</ul> |
805 |
</li> |
</li> |
806 |
|
|
810 |
<ul> |
<ul> |
811 |
<li><a href="http://www.netbsd.org/Ports/bebox/">NetBSD/bebox</a>: |
<li><a href="http://www.netbsd.org/Ports/bebox/">NetBSD/bebox</a>: |
812 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/">ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/kern.tgz">kern.tgz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/">ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119</a>/<a href="ftp://ftp.netbsd.org/pub/NetBSD/arch/bebox/snapshot/19981119/kern.tgz">kern.tgz</a> |
813 |
<br>$ <b>tar tvzf kern.tgz</b> |
<br><tt><b>tar xvzf kern.tgz</b></tt> |
814 |
<br>$ <b>gxemul -E bebox netbsd</b> |
<br><tt><b>gxemul -E bebox netbsd</b></tt> |
815 |
<p> |
<p> |
816 |
<li><a href="http://www.bebox.nu/os.php?s=os/linux/index">Linux/bebox</a>: |
<li><a href="http://www.bebox.nu/os.php?s=os/linux/index">Linux/bebox</a>: |
817 |
<br><a href="http://www.bebox.nu/files/linux/BeBox-scsi-980610.gz">http://www.bebox.nu/files/linux/BeBox-scsi-980610.gz</a> |
<br><a href="http://www.bebox.nu/files/linux/BeBox-scsi-980610.gz">http://www.bebox.nu/files/linux/BeBox-scsi-980610.gz</a> |
818 |
<br>$ <b>gunzip BeBox-scsi-980610.gz</b> |
<br><tt><b>gunzip BeBox-scsi-980610.gz</b></tt> |
819 |
<br>$ <b>gxemul -E bebox 0x3100:0x400:BeBox-scsi-980610</b> |
<br><tt><b>gxemul -E bebox 0x3100:0x400:BeBox-scsi-980610</b></tt> |
820 |
</ul> |
</ul> |
821 |
</li> |
</li> |
822 |
|
|
827 |
<li><a href="http://www.netbsd.org/Ports/sparc64/">NetBSD/sparc64</a>: |
<li><a href="http://www.netbsd.org/Ports/sparc64/">NetBSD/sparc64</a>: |
828 |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sparc64/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sparc64/binary/kernel/netbsd-INSTALL.gz</a> |
<br><a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sparc64/binary/kernel/netbsd-INSTALL.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.0/sparc64/binary/kernel/netbsd-INSTALL.gz</a> |
829 |
<br>gunzip, and try the following: |
<br>gunzip, and try the following: |
830 |
<br>$ <b>gxemul -E ultra1 -v -i netbsd-INSTALL</b> |
<br><tt><b>gxemul -E ultra1 -v -i netbsd-INSTALL</b></tt> |
831 |
<p> |
<p> |
832 |
<li><a href="http://www.openbsd.org/sparc64.html">OpenBSD/sparc64</a>: |
<li><a href="http://www.openbsd.org/sparc64.html">OpenBSD/sparc64</a>: |
833 |
<br><a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.6/sparc64/bsd.rd">ftp://ftp.openbsd.org/pub/OpenBSD/3.6/sparc64/bsd.rd</a> |
<br><a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.6/sparc64/bsd.rd">ftp://ftp.openbsd.org/pub/OpenBSD/3.6/sparc64/bsd.rd</a> |
834 |
<br>rename to bsd.rd.gz, gunzip, and try the following: |
<br>rename to bsd.rd.gz, gunzip, and try the following: |
835 |
<br>$ <b>gxemul -E ultra1 -v -i bsd.rd</b> |
<br><tt><b>gxemul -E ultra1 -v -i bsd.rd</b></tt> |
836 |
</ul> |
</ul> |
837 |
</li> |
</li> |
838 |
</ul> |
</ul> |
848 |
<li>URISC: |
<li>URISC: |
849 |
<ul> |
<ul> |
850 |
<li>I've placed a small test program in the experiments directory. |
<li>I've placed a small test program in the experiments directory. |
851 |
<br>Start like this: <b>gxemul -E testurisc 0:urisc_test.bin</b> |
<br>Start like this: <tt><b>gxemul -E testurisc 0:urisc_test.bin</b></tt> |
852 |
<br>or, if you want to single-step: |
<br>or, if you want to single-step: |
853 |
<b>gxemul -V -E testurisc 0:urisc_test.bin</b> |
<b><tt>gxemul -V -E testurisc 0:urisc_test.bin</b></tt> |
854 |
<br>2005-03-01: All outputed characters are printed twice. I'll |
<br>2005-03-01: All outputed characters are printed twice. I'll |
855 |
try to make a pseudo-device for outputing to "normal" devices |
try to make a pseudo-device for outputing to "normal" devices |
856 |
later. |
later. |