/[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

Annotation of /trunk/RELEASE

Parent Directory Parent Directory | Revision Log Revision Log


Revision 14 - (hide annotations)
Mon Oct 8 16:18:51 2007 UTC (13 years, 3 months ago) by dpavlin
File size: 7579 byte(s)
++ trunk/HISTORY	(local)
$Id: HISTORY,v 1.982 2005/10/07 22:45:32 debug Exp $
20050816	Some success in decoding the way the SGI O2 PROM draws graphics
		during bootup; lines/rectangles and bitmaps work, enough to
		show the bootlogo etc. :-)
		Adding more PPC instructions, and (dummy) BAT registers.
20050817	Updating the pckbc to support scancode type 3 keyboards
		(required in order to interact with the SGI O2 PROM).
		Adding more PPC instructions.
20050818	Adding more ARM instructions; general register forms.
		Importing armreg.h from NetBSD (ARM cpu ids). Adding a (dummy)
		CATS machine mode (using SA110 as the default CPU).
		Continuing on general dyntrans related stuff.
20050819	Register forms for ARM load/stores. Gaah! The Compaq C Compiler
		bug is triggered for ARM loads as well, not just PPC :-(
		Adding full support for ARM PC-relative load/stores, and load/
		stores where the PC register is the destination register.
		Adding support for ARM a.out binaries.
20050820	Continuing to add more ARM instructions, and correcting some
		bugs. Continuing on CATS emulation.
		More work on the PPC stuff.
20050821	Minor PPC and ARM updates. Adding more machine types.
20050822	All ARM "data processing instructions" are now generated
		automatically.
20050824	Beginning the work on the ARM system control coprocessor.
		Adding support for ARM halfword load/stores, and signed loads.
20050825	Fixing an important bug related to the ARM condition codes.
		OpenBSD/zaurus and NetBSD/netwinder now print some boot
		messages. :)
		Adding a dummy SH (Hitachi SuperH) cpu family.
		Beginning to add some ARM virtual address translation.
		MIPS bugfixes: unaligned PC now cause an ADEL exception (at
		least for non-bintrans execution), and ADEL/ADES (not
		TLBL/TLBS) are used if userland tries to access kernel space.
		(Thanks to Joshua Wise for making me aware of these bugs.)
20050827	More work on the ARM emulation, and various other updates.
20050828	More ARM updates.
		Finally taking the time to work on translation invalidation
		(i.e. invalidating translated code mappings when memory is
		written to). Hopefully this doesn't break anything.
20050829	Moving CPU related files from src/ to a new subdir, src/cpus/.
		Moving PROM emulation stuff from src/ to src/promemul/.
		Better debug instruction trace for ARM loads and stores.
20050830	Various ARM updates (correcting CMP flag calculation, etc).
20050831	PPC instruction updates. (Flag fixes, etc.)
20050901	Various minor PPC and ARM instruction emulation updates.
		Minor OpenFirmware emulation updates.
20050903	Adding support for adding arbitrary ARM coprocessors (with
		the i80321 I/O coprocessor as a first test).
		Various other ARM and PPC updates.
20050904	Adding some SHcompact disassembly routines.
20050907	(Re)adding a dummy HPPA CPU module, and a dummy i960 module.
20050908	Began hacking on some Apple Partition Table support.
20050909	Adding support for loading Mach-O (Darwin PPC) binaries.
20050910	Fixing an ARM bug (Carry flag was incorrectly updated for some
		data processing instructions); OpenBSD/cats and NetBSD/
		netwinder get quite a bit further now.
		Applying a patch to dev_wdc, and a one-liner to dev_pcic, to
		make them work better when emulating new versions of OpenBSD.
		(Thanks to Alexander Yurchenko for the patches.)
		Also doing some other minor updates to dev_wdc. (Some cleanup,
		and finally converting to devinit, etc.)
20050912	IRIX doesn't have u_int64_t by default (noticed by Andreas
		<avr@gnulinux.nl>); configure updated to reflect this.
		Working on ARM register bank switching, CPSR vs SPSR issues,
		and beginning the work on interrupt/exception support.
20050913	Various minor ARM updates (speeding up load/store multiple,
		and fixing a ROR bug in R(); NetBSD/cats now boots as far as
		OpenBSD/cats).
20050917	Adding a dummy Atmel AVR (8-bit) cpu family skeleton.
20050918	Various minor updates.
20050919	Symbols are now loaded from Mach-O executables.
		Continuing the work on adding ARM exception support.
20050920	More work on ARM stuff: OpenBSD/cats and NetBSD/cats reach
		userland! :-)
20050921	Some more progress on ARM interrupt specifics.
20050923	Fixing linesize for VR4121 (patch by Yurchenko). Also fixing
		linesizes/cachesizes for some other VR4xxx.
		Adding a dummy Acer Labs M1543 PCI-ISA bridge (for CATS) and a
		dummy Symphony Labs 83C553 bridge (for Netwinder), usable by 
		dev_footbridge.
20050924	Some PPC progress.
20050925	More PPC progress.
20050926	PPC progress (fixing some bugs etc); Darwin's kernel gets
		slightly further than before.
20050928	Various updates: footbridge/ISA/pciide stuff, and finally
		fixing the VGA text scroll-by-changing-the-base-offset bug.
20050930	Adding a dummy S3 ViRGE pci card for CATS emulation, which
		both NetBSD and OpenBSD detects as VGA.
		Continuing on Footbridge (timers, ISA interrupt stuff).
20051001	Continuing... there are still bugs, probably interrupt-
		related.
20051002	More work on the Footbridge (interrupt stuff).
20051003	Various minor updates. (Trying to find the bug(s).)
20051004	Continuing on the ARM stuff.
20051005	More ARM-related fixes.
20051007	FINALLY! Found and fixed 2 ARM bugs: 1 memory related, and the
		other was because of an error in the ARM manual (load multiple
		with the S-bit set should _NOT_ load usermode registers, as the
		manual says, but it should load saved registers, which may or
		may not happen to be usermode registers).
		NetBSD/cats and OpenBSD/cats seem to install fine now :-)
		except for a minor bug at the end of the OpenBSD/cats install.
		Updating the documentation, preparing for the next release.
20051008	Continuing with release testing and cleanup.

1 dpavlin 14 Release notes for Gavare's eXperimental Emulator (GXemul), 0.3.6
2 dpavlin 12 ================================================================
3 dpavlin 2
4     Copyright (C) 2003-2005 Anders Gavare.
5    
6    
7 dpavlin 14 GXemul is an experimental instruction-level machine emulator. Several
8     emulation modes are available. In some modes, processors and surrounding
9 dpavlin 12 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.
11 dpavlin 2
12 dpavlin 14 The processor architecture best emulated by GXemul is MIPS, but other
13     architectures are also partially emulated.
14 dpavlin 2
15 dpavlin 12 I have verified that the following "guest" operating systems can run inside
16     the emulator:
17    
18 dpavlin 2 Guest operating system Emulated machine
19     ---------------------- ----------------
20 dpavlin 10 NetBSD/pmax 2.0.2 (and 1.6.2) DECstation 5000/200
21 dpavlin 2 OpenBSD/pmax 2.8-BETA DECstation 5000/200
22     Ultrix 4.2-4.5 DECstation 5000/200
23     Sprite demo harddisk image DECstation 5000/200
24     Debian GNU/Linux for DECstation DECstation 5000/200
25     Redhat Linux 7.1 for mips DECstation 5000/200
26     NetBSD/arc 1.6.2 Acer PICA-61
27     OpenBSD/arc 2.3 Acer PICA-61
28 dpavlin 10 NetBSD/hpcmips 2.0.2 NEC MobilePro 770, 780, 800, 880
29     NetBSD/cobalt 2.0.2 Cobalt
30     NetBSD/evbmips 2.0.2 Malta 5Kc/4Kc evaluation board
31     NetBSD/sgimips 2.0.2 SGI O2 ("IP32")
32 dpavlin 14 NetBSD/cats 2.0.2 CATS (ARM)
33     OpenBSD/cats 3.7 CATS (ARM)
34 dpavlin 2
35 dpavlin 14 (Most of these are MIPS-based machines, except the CATS, which is an
36     ARM-based machine.)
37    
38 dpavlin 12 Some of these guest operating systems are easier to install and run than
39 dpavlin 14 others. The best supported mode is the DECstation 5000/200 emulation mode,
40     with NetBSD/pmax as the guest operating system.
41 dpavlin 10
42 dpavlin 14 A couple of other emulation modes exist. Some of these modes are almost
43     working well enough to run complete guest operating systems, but most are
44     just skeletons. The modes that work are listed in the documentation.
45 dpavlin 2
46 dpavlin 12 The emulator can also be used in other experiments; it does not have to run
47     entire guest operating systems. (However, GXemul does not simulate things
48     smaller than an instruction. What this means is that pipe-line stalls,
49     penalties caused by branch-prediction misses or cache misses, and other
50     micro-architectural effects are not simulated.)
51 dpavlin 2
52 dpavlin 14 The most imporant user-visible change between release 0.3.5 and 0.3.6 is:
53 dpavlin 2
54 dpavlin 14 (X) The experimental ARM emulation mode is now working well enough
55     to install NetBSD/cats and OpenBSD/cats onto harddisk images.
56 dpavlin 2
57 dpavlin 14 There are two minor issues with the ARM emulation:
58 dpavlin 2
59 dpavlin 14 1) A bug is triggered at the end of the OpenBSD/cats installation,
60     so the MAKEDEV script must be run manually before booting for
61     the first time.
62 dpavlin 6
63 dpavlin 14 2) I have not had time to do any performance optimizations yet, so
64     the ARM emulation mode is not very fast.
65 dpavlin 10
66 dpavlin 14 There have also been lots of other small changes, too small to mention here.
67    
68 dpavlin 2 Files included in this release are:
69    
70     BUGS A list of known bugs.
71     HISTORY Detailed revision history / changelog.
72     LICENSE Copyright message / license.
73     README Quick start instructions, for the impatient.
74     RELEASE This file.
75     TODO TODO notes.
76 dpavlin 4 configure, Makefile.skel sh and make scripts for building GXemul.
77 dpavlin 2 doc Documentation.
78     experiments Experimental code. (Usually not needed.)
79 dpavlin 4 src Source code.
80 dpavlin 2
81     To build the emulator, run the ./configure script, and then run make.
82    
83     Building the emulator should work on most Unix-like systems. (One system which
84     is specifically known to NOT work is Ultrix/RISC inside the emulator; Ultrix
85     chokes on the configure script and the default cc in Ultrix doesn't work.)
86    
87 dpavlin 4 Regarding files in the src/include/ directory: only some of these are written
88     by me, the rest are from other sources (such as NetBSD). The license text says
89 dpavlin 2 that "All advertising materials mentioning features or use of this software"
90     must display acknowledgements. Even though I do NOT feel I mention features or
91     use of the header files (the "software") in any advertising materials, I am
92     still very grateful for the fact that these people have made their files
93     available for re-use, so regardless of legal requirements, I guess thanking
94     them like this is in order:
95    
96     This product includes software developed by the University of
97     California, Berkeley and its contributors.
98    
99     This product includes software developed for the
100     NetBSD Project. See http://www.netbsd.org/ for
101     information about NetBSD.
102    
103     This product includes software developed by Jonathan Stone for
104     the NetBSD Project.
105    
106     This product includes software developed for the NetBSD Project
107     by Matthias Drochner.
108    
109     This product includes software developed by the NetBSD
110     Foundation, Inc. and its contributors.
111    
112     This product includes software developed by Christopher G. Demetriou.
113     [for the NetBSD Project.]
114    
115     This product includes software developed by Adam Glass.
116    
117     This product includes software developed by the PocketBSD project
118     and its contributors.
119    
120     This product includes software developed by Peter Galbavy.
121    
122     Carnegie Mellon University (multiple header files,
123     no specific advertisement text required)
124    
125     This product includes software developed by Charles M. Hannum.
126    
127     This product includes software developed under OpenBSD by Per Fogelström.
128    
129     This product includes software developed by Per Fogelström.
130    
131     This product includes software developed at Ludd, University of
132     Luleå, Sweden and its contributors.
133    
134     This product includes software developed by Hellmuth Michaelis
135     and Joerg Wunsch
136    
137     The font(s) in devices/fonts are Copyright (c) 1992, 1993, 1994
138     by Hellmuth Michaelis and Joerg Wunsch. ("This product includes software
139     developed by Hellmuth Michaelis and Joerg Wunsch", well, the font
140     is maybe not software, but still...)
141    
142     impactsr-bsd.h is Copyright (C) 2004 by Stanislaw Skowronek.
143    
144     This product includes software developed for the NetBSD Project by
145     Wasabi Systems, Inc. [by Simon Burge]
146    
147     arcbios_other.h is Copyright (c) 1996 M. Warner Losh.
148    
149     This product includes software developed by Marc Horowitz.
150    
151 dpavlin 14 This product includes software developed by Brini.
152    
153     This product includes software developed by Mark Brinicombe
154     for the NetBSD Project.
155    
156 dpavlin 12 Also, src/include/alpha_rpb.h requires the following:
157    
158     Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
159     All rights reserved.
160    
161     Author: Keith Bostic, Chris G. Demetriou
162    
163     Permission to use, copy, modify and distribute this software and
164     its documentation is hereby granted, provided that both the copyright
165     notice and this permission notice appear in all copies of the
166     software, derivative works or modified versions, and any portions
167     thereof, and that both notices appear in supporting documentation.
168    
169 dpavlin 2 See individual files for license details, if you plan to redistribute GXemul
170     or reuse code.
171    
172 dpavlin 14 Thanks to (in no specific order) Joachim Buss, Juli Mallett, Juan Romero
173     Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and everyone
174     else who has provided me with feedback.
175 dpavlin 2
176     If you have found GXemul useful in some way, or feel like sending me comments
177     or feedback in general, then mail me at anders(at)gavare.se.
178    

  ViewVC Help
Powered by ViewVC 1.1.26