--- trunk/RELEASE 2007/10/08 16:19:43 23 +++ trunk/RELEASE 2007/10/08 16:19:56 24 @@ -1,4 +1,4 @@ -Release notes for Gavare's eXperimental Emulator (GXemul), 0.3.8 +Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.0 ================================================================ Copyright (C) 2003-2006 Anders Gavare. @@ -13,45 +13,67 @@ be regarded as "working" in GXemul. The best supported guest operating systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats. -The user-visible changes between release 0.3.7 and 0.3.8 include: - o) The IQ80321 (Xscale) machine mode is now working well enough to - run NetBSD/evbarm 2.1. +The most important change between release 0.3.8 and 0.4.0 is: - o) Faster framebuffer output in some situations. + 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. -Source code related changes include: + 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. - o) I've finally begun to reimplement the MIPS emulation mode using the - new dyntrans system. It will be quite some time until it can run - anything, but things are moving in the right direction. + 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. - o) Some changes to the concepts of input-only, output-only, and - input-output consoles. + I think that in the long term, moving towards full portability like + this is a good idea. - o) Some more clean-up of PCI bus concepts. +(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.) - o) Machine definitions have been moved out of src/machines.c, and into - individual files in a new sub-directory (src/machines/). +There have also been many other changes, including, but not limited to: + + 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. + + o) NetBSD/sgimips 3.0 works now. This is most likely due to the rewrite + of the MIPS emulation mode. Previous releases of GXemul only worked + with NetBSD/sgimips 2.1. + + o) I have begun implementing rudimentary support for GDB remote serial + protocol connections. This means that you can run e.g. the Data + Display Debugger, and connect it to a GXemul instance. + + No advanced GDB functionality is working yet, but starting and + stopping the emulated machine and single-stepping should work. + +Please read the HISTORY files for more details. -There have also been lots of other changes, too many and small to mention here. Files included in this release are: - BUGS A list of known bugs. + BUGS List of known bugs for this release. HISTORY Detailed revision history / changelog. LICENSE Copyright message / license. README Quick start instructions, for the impatient. RELEASE This file. TODO TODO notes. configure, Makefile.skel sh and make scripts for building GXemul. + demos Tutorial-like demos of testmachine functionality. doc Documentation. experiments Experimental code. (Usually not needed.) src Source code. -To build the emulator, run the ./configure script, and then run make. This +To build the emulator, run the configure script, and then run make. This should work on most Unix-like systems. + Regarding files in the src/include/ directory: only some of these are written by me, the rest are from other sources (such as NetBSD). The license text says that "All advertising materials mentioning features or use of this software" @@ -127,6 +149,8 @@ This product includes software developed by the Alice Group. + This product includes software developed by Ichiro FUKUHARA. + Also, src/include/alpha_rpb.h requires the following: Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -143,10 +167,15 @@ See individual files for license details, if you plan to redistribute GXemul or reuse code. + 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. + If you have found GXemul useful in some way, or feel like sending me comments or feedback in general, then mail me at anders(at)gavare.se.