1 |
Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.1 |
Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.2 |
2 |
================================================================ |
================================================================ |
3 |
|
|
4 |
Copyright (C) 2003-2006 Anders Gavare. |
Copyright (C) 2003-2006 Anders Gavare. |
14 |
systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats. |
systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats. |
15 |
|
|
16 |
|
|
17 |
Changes between release 0.4.0.1 and 0.4.1 include, among other things: |
Changes between release 0.4.1 and 0.4.2 include, among other things: |
18 |
|
|
19 |
o) Some bugs in the dynamic translation core have been fixed, making |
o) The NetWinder emulation mode now works well enough to let |
20 |
all emulation modes (especially the MIPS mode) more stable. |
NetBSD/netwinder run from a disk image. |
21 |
|
|
22 |
o) In the refactoring effort between 0.4.0 and 0.4.0.1, single-stepping |
(NetBSD/netwinder has to be installed manually, though, because |
23 |
(and instruction tracing) of 64-bit programs was accidentally broken. |
there is no installation ramdisk kernel. The GXemul documentation |
24 |
Single-stepping in 64-bit mode could result in strange exceptions. |
has an example of how to install NetBSD/netwinder using an emulated |
25 |
This has been fixed in 0.4.1. |
NetBSD/pmax machine.) |
26 |
|
|
27 |
o) MIPS emulation performance has been improved somewhat: |
o) Algorithmics P5064 emulation works well enough to let NetBSD/algor |
28 |
|
run from a disk image. (Similar to NetBSD/netwinder, it has to |
29 |
|
be installed manually, using another emulated machine.) |
30 |
|
|
31 |
R3000: After removing some buggy code (hints for physical page |
o) PCI configuration register writes can now be handled, which allows |
32 |
translations), it was possible to remove the workaround for R3000 |
NetBSD/Malta (evbmips) 3.0.1 and NetBSD/cobalt 3.0.1 to run from |
33 |
caches which was needed in 0.4.0.1 to make Linux and Ultrix run. |
PCI IDE harddisk images. (Previously, only NetBSD 2.1 worked for |
34 |
This gives an overall speedup for R2000/R3000. |
the Malta and Cobalt emulation modes.) |
35 |
|
|
36 |
For non-R3000, there have been some speedups as well. After fixing |
o) Some performance increases: |
|
reference count bugs for 64-bit addressing in the dyntrans system, |
|
|
workarounds/hacks in the tlbwr/tlbwi instructions and in the ASID |
|
|
change helper function could be removed. |
|
37 |
|
|
38 |
o) A new -s command line option is now available, for dumping |
The virtual translation table update routine has been simplified |
39 |
raw runtime data/statistics on every instruction to a file. |
to work the same way for 32-bit and 64-bit emulation, and this |
40 |
|
apparently results in a speedup for all 64-bit modes. |
41 |
|
|
42 |
Currently, the following kinds of data can be dumped: |
For 32-bit MIPS, some more instruction combinations have been added. |
|
|
|
|
1. the program counter (virtual address) |
|
|
2. the physical address representation of the program counter |
|
|
3. the internal dyntrans instruction call pointer, useful when |
|
|
developing/optimizing the emulator |
|
|
|
|
|
This data can then be analyzed by external tools. |
|
|
|
|
|
(There was a -s command line option in previous releases of |
|
|
the emulator, but it did not work as intended, and was not |
|
|
usable from dyntrans emulation modes.) |
|
43 |
|
|
44 |
Please read the HISTORY files for more details. |
Please read the HISTORY files for more details. |
45 |
|
|