/[gxemul]/trunk/RELEASE
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/RELEASE

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

revision 24 by dpavlin, Mon Oct 8 16:19:56 2007 UTC revision 34 by dpavlin, Mon Oct 8 16:21:17 2007 UTC
# Line 1  Line 1 
1  Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.0  Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.4
2  ================================================================  ================================================================
3    
4  Copyright (C) 2003-2006  Anders Gavare.  Copyright (C) 2003-2007  Anders Gavare.
5    
6    
7  GXemul is an experimental instruction-level machine emulator. Several  GXemul is an experimental instruction-level machine emulator. Several
# Line 9  emulation modes are available. In some m Line 9  emulation modes are available. In some m
9  hardware components are emulated well enough to let unmodified operating  hardware components are emulated well enough to let unmodified operating
10  systems (e.g. NetBSD) run as if they were running on a real machine.  systems (e.g. NetBSD) run as if they were running on a real machine.
11    
12  The documentation lists the machines and guest operating systems that can  Processors (ARM, MIPS, PowerPC, SuperH) are emulated using dynamic
13  be regarded as "working" in GXemul. The best supported guest operating  translation. Unlike some other dynamically translating emulators, GXemul
14  systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats.  does not need to generate native code, only a "runnable intermediate
15    representation", and will thus run on any host architecture.
   
 The most important change between release 0.3.8 and 0.4.0 is:  
   
     o)  The emulation of MIPS processors has been completely rewritten;  
         it now uses the same portable dynamic translation system as the  
         ARM and PowerPC emulation modes.  
   
         On Alpha and i386 hosts (and AMD64 hosts running in 32-bit mode),  
         GXemul previously used translation into native code. This release  
         will perform worse than 0.3.8 on those host architectures.  
   
         On all other hosts (including AMD64 running in native 64-bit mode),  
         0.4.0 is likely to be faster than 0.3.8, when emulating MIPS, at  
         least for R3000 emulation.  
16    
17          I think that in the long term, moving towards full portability like  The documentation lists the machines and guest operating systems that can
18          this is a good idea.  be regarded as "working" in GXemul. The best working guest operating
19    systems are probably NetBSD/pmax and NetBSD/cats.
 (Since the MIPS emulation mode has been rewritten from scratch, and I have  
 not really had much time over for debugging, there are most likely new  
 bugs in 0.4.0 that were not present in 0.3.8. However, I feel that it is  
 better to make a quick release now than to wait even longer.)  
   
 There have also been many other changes, including, but not limited to:  
20    
     o)  The "test machine" functionality is more well-defined than before,  
         and some tutorial-like demos have been added. These could be useful  
         e.g. in operating system construction courses.  
21    
22      o)  NetBSD/sgimips 3.0 works now. This is most likely due to the rewrite  Changes between release 0.4.3 and 0.4.4 include, among other things:
         of the MIPS emulation mode. Previous releases of GXemul only worked  
         with NetBSD/sgimips 2.1.  
23    
24      o)  I have begun implementing rudimentary support for GDB remote serial      o)  The interrupt subsystem has been redesigned. This means two things:
         protocol connections. This means that you can run e.g. the Data  
         Display Debugger, and connect it to a GXemul instance.  
25    
26          No advanced GDB functionality is working yet, but starting and            x)  Internal code cleanup, which makes the whole emulator more
27          stopping the emulated machine and single-stepping should work.                maintainable. Instead of using magically encoded integers
28                  for interrupts, strings are now used. These strings are in
29                  the form of "paths", so that devices and busses can more
30                  easily be connected to other busses, devices, or CPUs.
31    
32              x)  Some machine types which happened to work in release 0.4.3,
33                  but were not listed in the documentation as working, may
34                  have stopped working now. As always, the documentation should
35                  indicate the combinations of machine modes and guest OSes that
36                  are supposed to work.
37    
38        o)  SuperH (SH4) emulation is now somewhat more stable, enough to let a
39            NetBSD/dreamcast Live CD be usable.
40    
41        o)  PowerPC "G4" emulation is now stable enough to let NetBSD/macppc
42            run from a disk image. (Installing actually worked before, but the
43            NetBSD/macppc GENERIC kernel uses AltiVec instructions which were
44            not implemented correctly.)
45    
46        o)  The PICA-61 (arc) and i80321 (evbarm) emulation modes now have their
47            timers fixed at 100 Hz. A hardcoded speed like this is very ugly, but
48            it is at least better than before (when the timer wasn't really
49            running at any specific speed at all).
50    
51  Please read the HISTORY files for more details.  Please read the HISTORY files for more details.
52    
53    
54  Files included in this release are:  Files included in this release are:
55    
   BUGS                        List of known bugs for this release.  
56    HISTORY                     Detailed revision history / changelog.    HISTORY                     Detailed revision history / changelog.
57    LICENSE                     Copyright message / license.    LICENSE                     Copyright message / license.
58    README                      Quick start instructions, for the impatient.    README                      Quick start instructions, for the impatient.
# Line 151  them like this is in order: Line 145  them like this is in order:
145    
146      This product includes software developed by Ichiro FUKUHARA.      This product includes software developed by Ichiro FUKUHARA.
147    
148        This product includes software developed by Marcus Comstedt.
149    
150  Also, src/include/alpha_rpb.h requires the following:  Also, src/include/alpha_rpb.h requires the following:
151    
152      Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.      Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
# Line 168  See individual files for license details Line 164  See individual files for license details
164  or reuse code.  or reuse code.
165    
166    
 Thanks to (in no specific order) Joachim Buss, Olivier Houchard, Juli Mallett,  
 Juan Romero Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and  
 everyone else who has provided me with feedback.  
   
 Special thanks to Alec Voropay for testing this release with Linux  
 kernels, and on Cygwin, and also thanks to Ondrej Palkovsky for testing  
 with HelenOS.  
   
167  If you have found GXemul useful in some way, or feel like sending me comments  If you have found GXemul useful in some way, or feel like sending me comments
168  or feedback in general, then mail me at anders(at)gavare.se.  or feedback in general, then mail me at anders(at)gavare.se.
169    

Legend:
Removed from v.24  
changed lines
  Added in v.34

  ViewVC Help
Powered by ViewVC 1.1.26