/[gxemul]/trunk/doc/intro.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

Annotation of /trunk/doc/intro.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6 - (hide annotations)
Mon Oct 8 16:18:11 2007 UTC (13 years, 3 months ago) by dpavlin
File MIME type: text/html
File size: 16293 byte(s)
++ trunk/HISTORY	(local)
$Id: HISTORY,v 1.772 2005/06/04 12:02:16 debug Exp $
20050428	Disabling the "-fmove-all-movables" option in the configure
		script, because it causes the compile to fail on OpenBSD/sgi.
20050502	Minor updates.
20050503	Removing the WRT54G mode (it was bogus anyway), and adding a
		comment about Windows NT for MIPS in doc/experiments.html.
		Minor updates to the x86 instruction decoding.
20050504	Adding some more x86 instructions.
		Adding support for reading files from ISO9660 CDROMs (including
		gzipped files). It's an ugly hack, but it seems to work.
		Various other minor updates (dev_vga.c, pc_bios.c etc).
20050505	Some more x86-related updates.
		Beginning (what I hope will be) a major code cleanup phase.
		"bootris" (an x86 bootsector) runs :-)
20050506	Adding some more x86 instructions.
20050507	tmpnam => mkstemp.
		Working on a hack to allow VGA charcells to be shown even when
		not running with X11.
		Adding more x86 instructions.
20050508	x86 32-bit SIB addressing fix, and more instructions.
20050509	Adding more x86 instructions.
20050510	Minor documentation updates, and other updates (x86 stuff etc.)
20050511	More x86-related updates.
20050513	Various updates, mostly x86-related. (Trying to fix flag 
		calculation, factoring out the ugly shift/rotate code, and
		some other things.)
20050514	Adding support for loading some old i386 a.out executables.
		Finally beginning the cleanup of machine/PROM/bios dependant
		info.
		Some minor documentation updates.
		Trying to clean up ARCBIOS stuff a little.
20050515	Trying to make it possible to actually use more than one disk
		type per machine (floppy, ide, scsi).
		Trying to clean up the kbd vs PROM console stuff. (For PC and
		ARC emulation modes, mostly.)
		Beginning to add an 8259 interrupt controller, and connecting
		it to the x86 emulation.
20050516	The first x86 interrupts seem to work (keyboard stuff).
		Adding a 8253/8254 programmable interval timer skeleton.
		FreeDOS now reaches a command prompt and can be interacted
		with.
20050517	After some bugfixes, MS-DOS also (sometimes) reaches a
		command prompt now.
		Trying to fix the pckbc to work with MS-DOS' keyb.com, but no
		success yet.
20050518	Adding a simple 32-bit x86 MMU skeleton.
20050519	Some more work on the x86 stuff. (Beginning the work on paging,
		and various other fixes).
20050520	More updates. Working on dev_vga (4-bit graphics modes), adding
		40 columns support to the PC bios emulation.
		Trying to add support for resizing windows when switching
		between graphics modes.
20050521	Many more x86-related updates.
20050522	Correcting the initial stack pointer's sign-extension for
		ARCBIOS emulation (thanks to Alec Voropay for noticing the
		error).
		Continuing on the cleanup (ARCBIOS etc).
		dev_vga updates.
20050523	More x86 updates: trying to add some support for protected mode
		interrupts (via gate descriptors) and many other fixes.
		More ARCBIOS cleanup.
		Adding a device flag which indicates that reads cause no
		side-effects. (Useful for the "dump" command in the debugger,
		and other things.)
		Adding support for directly starting up x86 ELFs, skipping the
		bootloader stage. (Most ELFs, however, are not suitable for
		this.)
20050524	Adding simple 32-bit x86 TSS task switching, but no privilege
		level support yet.
		More work on dev_vga. A small "Copper bars" demo works. :-)
		Adding support for Trap Flag (single-step exceptions), at least
		in real mode, and various other x86-related fixes.
20050525	Adding a new disk image prefix (gH;S;) which can be used to
		override the default nr of heads and sectors per track.
20050527	Various bug fixes, more work on the x86 mode (stack change on
		interrupts between different priv.levels), and some minor
		documentation updates.
20050528	Various fixes (x86 stuff).
20050529	More x86 fixes. An OpenBSD/i386 bootfloppy reaches userland
		and can be interacted with (although there are problems with
		key repetition). NetBSD/i386 triggers a serious CISC-related
		problem: instruction fetches across page boundaries, where
		the later part isn't actually part of the instruction.
20050530	Various minor updates. (Documentation updates, etc.)
20050531	Adding some experimental code (experiments/new_test_*) which
		could be useful for dynamic (but not binary) translation in
		the future.
20050602	Adding a dummy ARM skeleton.
		Fixing the pckbc key repetition problem (by adding release
		scancodes for all keypresses).
20050603	Minor updates for the next release.
20050604	Release testing. Minor updates.

==============  RELEASE 0.3.3  ==============

20050604	There'll probably be a 0.3.3.1 release soon, with some very
		very tiny updates.


1 dpavlin 2 <html>
2     <head><title>GXemul documentation: Introduction</title>
3     </head>
4 dpavlin 4 <body bgcolor="#f8f8f8" text="#000000" link="#4040f0" vlink="#404040" alink="#ff0000">
5     <table border=0 width=100% bgcolor="#d0d0d0"><tr>
6     <td width=100% align=center valign=center><table border=0 width=100%><tr>
7     <td align="left" valign=center bgcolor="#d0efff"><font color="#6060e0" size="6">
8     <b>GXemul documentation:</b></font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
9     <font color="#000000" size="6"><b>Introduction</b>
10     </font></td></tr></table></td></tr></table><p>
11 dpavlin 2 <!-- The first 10 lines are cut away by the homepage updating script. -->
12    
13    
14     <!--
15    
16 dpavlin 6 $Id: intro.html,v 1.46 2005/06/04 12:02:17 debug Exp $
17 dpavlin 2
18     Copyright (C) 2003-2005 Anders Gavare. All rights reserved.
19    
20     Redistribution and use in source and binary forms, with or without
21     modification, are permitted provided that the following conditions are met:
22    
23     1. Redistributions of source code must retain the above copyright
24     notice, this list of conditions and the following disclaimer.
25     2. Redistributions in binary form must reproduce the above copyright
26     notice, this list of conditions and the following disclaimer in the
27     documentation and/or other materials provided with the distribution.
28     3. The name of the author may not be used to endorse or promote products
29     derived from this software without specific prior written permission.
30    
31     THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
32     ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
33     IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
34     ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
35     FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36     DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37     OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38     HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
39     LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
40     OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
41     SUCH DAMAGE.
42    
43     -->
44    
45     <a href="./">Back to the index</a>
46    
47     <p><br>
48     <h2>Introduction</h2>
49    
50     <p>
51     <ul>
52     <li><a href="#overview">Overview</a>
53 dpavlin 4 <li><a href="#free">Is GXemul Free software?</a>
54 dpavlin 2 <li><a href="#build">How to compile/build the emulator</a>
55 dpavlin 6 <li><a href="#run">How to run the emulator</a>
56 dpavlin 2 <li><a href="#cpus">Which CPU types does GXemul emulate?</a>
57     <li><a href="#accuracy">Emulation accuracy</a>
58     <li><a href="#emulmodes">Which machines does GXemul emulate?</a>
59     <li><a href="#guestos">Which guest OSes are possible to run?</a>
60     </ul>
61    
62    
63    
64    
65    
66     <p><br>
67     <a name="overview"></a>
68     <h3>Overview:</h3>
69    
70     GXemul is a machine emulator, which can be used to experiment with
71     binary code for (among others) MIPS-based machines. Several emulation
72     modes are available. For some emulation modes, processors and surrounding
73     hardware components are emulated well enough to let unmodified operating
74     systems run as if they were running on a real machine.
75    
76     <p>
77 dpavlin 6 Devices and CPUs are not simulated with 100% accuracy. They are only
78     "faked" well enough to make operating systems (eg NetBSD) run without
79     complaining too much. Still, the emulator could be of interest for
80     academic research and experiments, such as when learning how to write
81 dpavlin 4 operating system code.
82 dpavlin 2
83     <p>
84     The emulator is written in C, does not depend on external libraries (except
85     X11, but that is optional), and should compile and run on most Unix-like
86     systems. If it doesn't, then that is a bug.
87 dpavlin 4 (You do not need any MIPS compiler toolchain to build or use GXemul.
88     If you need to compile MIPS binaries from sources, then of course you need
89 dpavlin 6 such a toolchain, but that is completely separate from GXemul.)
90 dpavlin 2
91     <p>
92     The emulator contains code which tries to emulate the workings of CPUs and
93     surrounding hardware found in real machines, but it does not contain any
94     ROM code. You will need some form of program (in binary form) to run in
95     the emulator. For many emulation modes, PROM calls are handled by the
96     emulator itself, so you do not need to use any ROM image at all.
97    
98     <p>
99     You can use pre-compiled kernels (for example NetBSD kernels, or Linux),
100     or other programs that are in binary format, and in some cases even actual
101     ROM images. A couple of different file formats are supported (ELF, a.out,
102 dpavlin 6 ECOFF, SREC, and raw binaries).
103 dpavlin 2
104 dpavlin 6 <p>
105     If you do not have a kernel as a separate file, but you have a bootable
106     disk image, then it is sometimes possible to boot directly from that
107     image. (This works for example with DECstation emulation, or when booting
108     from ISO9660 CDROM images.)
109 dpavlin 2
110    
111    
112    
113 dpavlin 6
114    
115 dpavlin 2 <p><br>
116     <a name="free"></a>
117 dpavlin 4 <h3>Is GXemul Free software?</h3>
118 dpavlin 2
119 dpavlin 6 Yes. I have released GXemul under a Free license. The code in GXemul is
120     Copyrighted software, it is <i>not</i> public domain. (If this is
121     confusing to you, you might want to read up on the definitions of the
122     four freedoms associated with Free software, <a
123     href="http://www.gnu.org/philosophy/free-sw.html">http://www.gnu.org/philosophy/free-sw.html</a>.)
124 dpavlin 2
125     <p>
126     The code I have written is released under a 3-clause BSD-style license
127     (or "revised BSD-style" if one wants to use
128 dpavlin 4 <a href="http://www.gnu.org/philosophy/bsd.html">GNU jargon</a>).
129 dpavlin 2 Apart from the code I have written, some files are copied from other sources
130     such as NetBSD, for example header files containing symbolic names of
131     bitfields in device registers. They are also covered by similar licenses,
132     but with some additional clauses. If you plan to redistribute GXemul
133     (for example as a binary package), or reuse code from GXemul,
134     then you should check those files for their license terms.
135    
136     <p>
137     (The licenses usually require that the original Copyright and license
138     terms are included when you make a copy or modification. The "easiest way
139     out" if you plan to redistribute code from GXemul is to simply supply
140     the source code. You should however check individual files for details.)
141    
142    
143    
144    
145    
146     <p><br>
147     <a name="build"></a>
148     <h3>How to compile/build the emulator:</h3>
149    
150     Uncompress the .tar.gz distribution file, and run
151     <pre>
152     $ <b>./configure</b>
153     $ <b>make</b>
154     </pre>
155    
156     <p>
157 dpavlin 4 This should work on most Unix-like systems. If it doesn't, then
158 dpavlin 2 mail me a bug report.
159    
160     <p>
161     (Note for Windows users: there is a possibility that some releases
162     and/or snapshots will also work with Cygwin, but I can't promise that.)
163    
164     <p>
165     The emulator's performance is highly dependent on both runtime settings
166     and on compiler settings, so you might want to experiment with different
167     CC and CFLAGS environment variable values. For example, on a modern PC,
168     you could try the following:
169     <p>
170     <pre>
171     $ <b>CFLAGS="-mcpu=pentium4 -O3" ./configure</b>
172     $ <b>make</b>
173     </pre>
174    
175     <p>
176 dpavlin 6 Run <b><tt>./configure --help</tt></b> to get a list of configure options. (The
177 dpavlin 2 possible options differ between different releases and snapshots.)
178    
179 dpavlin 6
180    
181    
182    
183    
184     <p><br>
185     <a name="run"></a>
186     <h3>How to run the emulator:</h3>
187    
188     Once you have built GXemul, running it should be rather straight-forward.
189     Running <tt><b>gxemul</b></tt> without arguments (or with the
190     <b><tt>-h</tt></b> or <b><tt>-H</tt></b> command line options) will
191     display a help message.
192    
193 dpavlin 2 <p>
194 dpavlin 6 To get some ideas about what is possible to run in the emulator, please
195     read the section about <a href="guestoses.html">installing "guest"
196     operating systems</a>. If you are interested in using the emulator to
197     develop code on your own, then you should also read the section about
198     <a href="experiments.html#hello">Hello World</a>.
199    
200     <p>
201 dpavlin 2 To exit the emulator, type CTRL-C to enter the
202 dpavlin 6 single-step debugger, and then type <tt><b>quit</b></tt>.
203 dpavlin 2
204 dpavlin 4 <p>
205     If you are starting an emulation by entering settings directly on the
206 dpavlin 6 command line, and you are not using the <tt><b>-x</b></tt> option, then all
207 dpavlin 4 terminal input and output will go to the main controlling terminal.
208     CTRL-C is used to break into the debugger, so in order to send CTRL-C to
209     the running (emulated) program, you may use CTRL-B.
210 dpavlin 6 (This should be a reasonable compromise to allow the emulator to be usable
211     even on systems without X Windows.)
212 dpavlin 2
213 dpavlin 4 <p>
214 dpavlin 6 There is no way to send an actual CTRL-B to the emulated program, when
215     typing in the main controlling terminal window. The solution is to either
216     use <a href="configfiles.html">configuration files</a>, or use
217     <tt><b>-x</b></tt>. Both these solutions cause new xterms to be opened for
218     each emulated serial port that is written to. CTRL-B and CTRL-C both have
219     their original meaning in those xterm windows.
220 dpavlin 2
221    
222    
223    
224 dpavlin 4
225 dpavlin 2 <p><br>
226     <a name="cpus"></a>
227     <h3>Which CPU types does GXemul emulate?</h3>
228    
229     <h4>MIPS:</h4>
230    
231 dpavlin 6 Emulation of R4000, which is a 64-bit CPU, was my initial goal.
232     R2000/R3000-like CPUs (32-bit), R1x000, and generic MIPS32/MIPS64-style
233     CPUs are also emulated, and are hopefully almost as stable as the R4000
234     emulation.
235 dpavlin 2
236     <p>
237     I have written an experimental dynamic binary translation subsystem.
238     This gives higher total performance than interpreting one instruction at a
239     time and executing it. (If you wish to enable bintrans, add <b>-b</b> to
240     the command line, but keep in mind that it is still experimental.)
241    
242    
243     <h4>URISC:</h4>
244    
245     I have implemented an <a href="http://en.wikipedia.org/wiki/URISC">URISC</a>
246     emulation mode, just for fun. The only instruction available in an URISC
247     machine is "reverse subtract and skip on borrow". (It is probably not
248     worth trying to do bintrans with URISC, because any reasonable URISC
249     program relies on self-modifying code, which is bad for bintrans
250     performance.)
251    
252    
253 dpavlin 6 <h4>POWER/PowerPC</h4>
254 dpavlin 2
255 dpavlin 6 There is some code for 64-bit (and 32-bit) POWER/PowerPC emulation, enough
256     to run "Hello World", but not enough to run complete operating systems.
257     This mode isn't really working yet.
258 dpavlin 2
259 dpavlin 6
260 dpavlin 2 <h4>Other CPU types:</h4>
261    
262 dpavlin 6 Some other CPU architectures (such as x86) can also be partially emulated.
263     These are not enabled by default though, because of their unstable-ness.
264 dpavlin 2
265    
266    
267    
268    
269     <p><br>
270     <a name="accuracy"></a>
271     <h3>Emulation accuracy:</h3>
272    
273 dpavlin 6 GXemul is an instruction-level emulator; things that would happen in
274 dpavlin 2 several steps within a real CPU are not taken into account (eg. pipe-line
275 dpavlin 6 stalls or out-of-order execution). Still, instruction-level accuracy seems
276     to be enough to be able to run complete guest operating systems inside the
277 dpavlin 2 emulator.
278    
279 dpavlin 6 <p>
280     Caches are by default not emulated. In some cases, the existance of caches
281     is "faked" to let operating systems think that they are there. (There is
282     some old code for R2000/R3000 caches, but it has probably suffered from
283     bitrot by now.)
284 dpavlin 2
285 dpavlin 6 <p>
286     The emulator is <i>not</i> timing-accurate. It can be run in a
287     "deterministic" mode, <tt><b>-D</b></tt>. The meaning of deterministic is
288     simply that running two emulations with the same settings will result in
289     identical runs. Obviously, this requires that no user interaction is
290     taking place, and that clock speeds are fixed with the <tt><b>-I</b></tt>
291     option. (Deterministic in this case does <i>not</i> mean that the emulation
292     will be identical to some actual real-world machine.)
293 dpavlin 2
294    
295    
296 dpavlin 6
297    
298 dpavlin 2 <p><br>
299     <a name="emulmodes"></a>
300     <h3>Which machines does GXemul emulate?</h3>
301    
302 dpavlin 4 A few different machine types are emulated. The following machine types
303     are emulated well enough to run at least one "guest OS":
304 dpavlin 2
305     <p>
306     <ul>
307 dpavlin 4 <li><b>DECstation 5000/200</b>&nbsp;&nbsp;("3max")
308     <br>Serial controller (including keyboard and mouse), ethernet,
309     SCSI, and graphical framebuffers.
310 dpavlin 2 <p>
311     <li><b>Acer Pica-61</b>&nbsp;&nbsp;(an ARC machine)
312 dpavlin 4 <br>Serial controller, "VGA" text console, and SCSI.
313 dpavlin 2 <p>
314     <li><b>NEC MobilePro 770, 780, 800, and 880</b>&nbsp;&nbsp;(HPCmips machines)
315 dpavlin 4 <br>Framebuffer, keyboard, and a PCMCIA IDE controller.
316     <p>
317     <li><b>Cobalt</b>
318     <br>Serial controller and PCI IDE.
319 dpavlin 2 </ul>
320    
321     <p>
322     There is code in GXemul for emulation of many other machine types;
323     the degree to which these work range from "almost" being able to run
324     a complete OS, to almost completely unsupported (perhaps just enough
325     support to output a few boot messages via serial console).
326    
327     <p>
328 dpavlin 4 In addition to emulating real machines, there is also a "test-machine".
329 dpavlin 2 A test-machine consists of one or more CPUs and a few experimental
330     devices such as:
331    
332     <p>
333     <ul>
334     <li>a console I/O device (putchar() and getchar()...)
335     <li>an inter-processor communication device, for SMP experiments
336     <li>a very simple linear framebuffer device (for graphics output)
337     </ul>
338    
339     <p>
340     This mode is useful if you wish to run experimental code, but do not
341     wish to target any specific real-world machine type, for example for
342     educational purposes.
343    
344     <p>
345     You can read more about these experimental devices
346     <a href="experiments.html#expdevices">here</a>.
347    
348    
349    
350    
351    
352    
353    
354     <p><br>
355     <a name="guestos"></a>
356     <h3>Which guest OSes are possible to run?</h3>
357    
358 dpavlin 4 This table lists the guest OSes that run well enough to be considered
359 dpavlin 2 working in the emulator. They can boot from a harddisk image and be
360 dpavlin 4 interacted with similar to a real machine.
361 dpavlin 2
362 dpavlin 4 <p>
363     <center><table border="0">
364     <tr>
365     <td width="10"></td>
366 dpavlin 6 <td align="center"><a href="20050317-example.png"><img src="20050317-example_small.png"></a></td>
367 dpavlin 4 <td width="15"></td>
368     <td><a href="http://www.netbsd.org/Ports/pmax/">NetBSD/pmax</a>
369     <br>DECstation 5000/200</td>
370     <td width="30"></td>
371     <td align="center"><a href="20041024-netbsd-arc-installed.gif"><img src="20041024-netbsd-arc-installed_small.gif"></a></td>
372     <td width="15"></td>
373     <td><a href="http://www.netbsd.org/Ports/arc/">NetBSD/arc</a>
374     <br>Acer Pica-61</td>
375 dpavlin 2
376 dpavlin 4 </tr>
377 dpavlin 2
378 dpavlin 4 <tr><td height="10"></td></tr>
379 dpavlin 2
380 dpavlin 4 <tr>
381     <td></td>
382     <td align="center"><a href="openbsd-pmax-20040710.png"><img src="openbsd-pmax-20040710_small.png"></a></td>
383     <td></td>
384     <td><a href="http://www.openbsd.org/pmax.html">OpenBSD/pmax</a>
385     <br>DECstation 5000/200</td>
386     <td></td>
387     <td align="center"><a href="20041024-openbsd-arc-installed.gif"><img src="20041024-openbsd-arc-installed_small.gif"></a></td>
388     <td></td>
389     <td><a href="http://www.openbsd.org/arc.html">OpenBSD/arc</a>
390     <br>Acer Pica-61</td>
391     </tr>
392 dpavlin 2
393 dpavlin 4 <tr><td height="10"></td></tr>
394 dpavlin 2
395 dpavlin 4 <tr>
396     <td></td>
397     <td align="center"><a href="ultrix4.5-20040706.png"><img src="ultrix4.5-20040706_small.gif"></a></td>
398     <td></td>
399     <td>Ultrix/RISC<br>DECstation 5000/200</td>
400     <td></td>
401     <td align="center"><a href="20041213-debian_4.png"><img src="20041213-debian_4_small.gif"></a></td>
402     <td></td>
403     <td><a href="http://www.debian.org/">Debian&nbsp;GNU/Linux</a>&nbsp;<super>*</super>
404     <br>DECstation 5000/200</td>
405     </tr>
406 dpavlin 2
407 dpavlin 4 <tr><td height="10"></td></tr>
408 dpavlin 2
409 dpavlin 4 <tr>
410     <td></td>
411     <td align="center"><a href="sprite-20040711.png"><img src="sprite-20040711_small.png"></a></td>
412     <td></td>
413     <td><a href="http://www.cs.berkeley.edu/projects/sprite/retrospective.html">Sprite</a>
414     <br>DECstation 5000/200</td>
415     <td></td>
416     <td align="center"><a href="20041129-redhat_mips.png"><img src="20041129-redhat_mips_small.png"></a></td>
417     <td></td>
418     <td>Redhat&nbsp;Linux&nbsp;<super>*</super>
419     <br>DECstation 5000/200</td>
420     </tr>
421 dpavlin 2
422 dpavlin 4 <tr><td height="10"></td></tr>
423 dpavlin 2
424 dpavlin 4 <tr>
425     <td></td>
426     <td align="center"><a href="20050427-netbsd-hpcmips-2.png"><img src="20050427-netbsd-hpcmips-2_small.png"></a></td>
427     <td></td>
428     <td><a href="http://www.netbsd.org/Ports/hpcmips/">NetBSD/hpcmips</a>
429     <br>NEC MobilePro 770, 780, 800, 880</td>
430     <td></td>
431     <td align="center"><a href="20050413-netbsd-cobalt.png"><img src="20050413-netbsd-cobalt_small.png"></a></td>
432     <td></td>
433     <td><a href="http://www.netbsd.org/Ports/cobalt/">NetBSD/cobalt</a>
434     <br>Cobalt</td>
435     </tr>
436 dpavlin 2
437 dpavlin 4 </table></center>
438 dpavlin 2
439    
440 dpavlin 4 <p><br>
441 dpavlin 2
442 dpavlin 4 <super>*</super> Although Linux runs under DECstation emulation, the
443     default 2.4.27 kernel in Debian GNU/Linux does not support keyboards on
444     the 5000/200 (the specific DECstation model being emulated), so when the
445     login prompt is reached you cannot interact with the system. Kaj-Michael
446     Lang has compiled and made available a newer kernel from the current
447     mips-linux development tree. You can find it here: <a
448     href="http://home.tal.org/~milang/o2/kernels/">http://home.tal.org/~milang/o2/kernels</a>/<a
449     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>
450     This newer kernel supports keyboard input, but it does not have Debian's
451     ethernet patches, so you will not be able to use keyboard/framebuffer
452     <i>and</i> networking at the same time.
453 dpavlin 2
454    
455     </body>
456     </html>

  ViewVC Help
Powered by ViewVC 1.1.26