Bochs/bochs
Stanislav Shwartsman 082eb05b6b First step to fully configurable CPUID
- put CPUID functions data into array, in future we could load this array from configure file
 - cpuid initialize function is more flexible now but still reuire some work
2007-10-12 19:30:51 +00:00
..
bios - reverted removal of one DPTE checksum bugfix 2007-10-10 17:12:07 +00:00
build - installer now uses system variable WINDIR instead of hardcoded C:\WINDOWS 2007-09-28 17:58:48 +00:00
bx_debug added cpu state param - for future use and for dbg info 2007-10-11 18:12:00 +00:00
cpu First step to fully configurable CPUID 2007-10-12 19:30:51 +00:00
disasm Prepare for 4-arg instructions (will be needed for AMD SSE5) 2007-10-09 20:24:42 +00:00
doc - updates related to the save/restore changes 2007-09-29 09:01:02 +00:00
docs-html - updated after removing iodebug.html 2006-11-01 17:12:13 +00:00
dynamic - remove obsolete makefile 2002-10-26 13:19:06 +00:00
font - removed obsolete X11 VGA font and it's installation mechanism 2003-05-25 09:48:12 +00:00
fpu get rid of ugly do/while(0) construction 2007-09-14 19:39:11 +00:00
gui A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
host/linux/pcidev - fixed possible memory leaks and compilation warnings (patch by Frank Cornelis) 2004-11-16 20:44:48 +00:00
instrument Some code cleanups and warning fixes 2007-03-14 21:15:15 +00:00
iodev add --show-ips to all configs for future releases (it is not ON by default ?) 2007-10-09 19:49:23 +00:00
memory Fix compilation warning 2007-10-09 20:23:01 +00:00
misc - fixed remaining type conflicts in vmware lseek() method and the bxcommit utility 2006-11-19 09:55:23 +00:00
patches Added trace cache patch 2007-03-07 20:26:02 +00:00
plex86 - support for GNU/kFreeBSD and GNU/kNetBSD added in lowlevel iodev code (cdrom, 2004-09-11 15:39:53 +00:00
.bochsrc - updated several parts of the documentation 2007-09-15 16:00:25 +00:00
.conf.AIX.4.3.1 Added a config file for AIX 4.3.1. 2001-04-11 09:07:55 +00:00
.conf.amigaos - enable VBE support by default in configure script 2006-11-20 18:55:16 +00:00
.conf.beos - enable VBE support by default in configure script 2006-11-20 18:55:16 +00:00
.conf.everything Removed save/restore option 2007-09-28 20:03:31 +00:00
.conf.linux add --show-ips to all configs for future releases (it is not ON by default ?) 2007-10-09 19:49:23 +00:00
.conf.macos Some changes and updates for new release - I would like to compile it with x86-64 + acpi 2007-09-10 15:21:05 +00:00
.conf.macosx Some changes and updates for new release - I would like to compile it with x86-64 + acpi 2007-09-10 15:21:05 +00:00
.conf.sparc Some changes and updates for new release - I would like to compile it with x86-64 + acpi 2007-09-10 15:21:05 +00:00
.conf.win32 - commit patch.check-platform. For full details, pull up the patch itself 2002-03-07 16:00:39 +00:00
.conf.win32-cygwin add --show-ips to all configs for future releases (it is not ON by default ?) 2007-10-09 19:49:23 +00:00
.conf.win32-vcpp add --show-ips to all configs for future releases (it is not ON by default ?) 2007-10-09 19:49:23 +00:00
aclocal.m4 - implemented GTK2+ detection for wxGTK (patch by Guillem Jover <guillem@debian.org>) 2006-03-13 17:18:33 +00:00
bochs.h add --show-ips to all configs for future releases (it is not ON by default ?) 2007-10-09 19:49:23 +00:00
bxversion.h.in - I have tried to make the --prefix argument to configure control 2001-11-10 03:48:22 +00:00
CHANGES Enable MTRRs by default for P6 2007-10-08 19:46:37 +00:00
config.cc A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
config.guess - update after running "libtoolize --force --copy", with libtool 1.5 2003-08-28 00:09:21 +00:00
config.h.in Started first implementation of MONITOR/MWAIT 2007-10-11 21:29:01 +00:00
config.sub - update after running "libtoolize --force --copy", with libtool 1.5 2003-08-28 00:09:21 +00:00
configure Started first implementation of MONITOR/MWAIT 2007-10-11 21:29:01 +00:00
configure.in Started first implementation of MONITOR/MWAIT 2007-10-11 21:29:01 +00:00
COPYING - entered original Bochs snapshot bochs-2000_0325a.tar.gz from 2001-04-10 01:04:59 +00:00
crc.cc This is cumulative patch for bochs debugger, it is only very first step towards working debugger supporting all new simulator functionalitieS. 2006-01-24 19:03:55 +00:00
extplugin.h - update for macos compile 2002-12-12 15:29:45 +00:00
gdbstub.cc Merge patch from @SF bug tracker 2007-02-07 17:53:06 +00:00
install-sh - commit patch.check-platform. For full details, pull up the patch itself 2002-03-07 16:00:39 +00:00
load32bitOShack.cc Converted CR0 bits to one register similar to CR4 - a bit slower but helps with other features implemntation 2007-07-09 15:16:14 +00:00
logio.cc Patch received by e-mail from darkelf 2006-11-19 16:18:41 +00:00
ltdl.c - add win32 specific print code, so that we can see the exact error that 2002-11-01 13:02:15 +00:00
ltdl.h Add plugin support to Bochs by merging all the changes from the 2002-10-24 21:07:56 +00:00
ltdlconf.h.in Add plugin support to Bochs by merging all the changes from the 2002-10-24 21:07:56 +00:00
ltmain.sh - update after running "libtoolize --force --copy", with libtool 1.5 2003-08-28 00:09:21 +00:00
main.cc Started first implementation of MONITOR/MWAIT 2007-10-11 21:29:01 +00:00
Makefile.in - missing 'datarootdir' variable added (fixed warning from configure script) 2007-09-23 08:45:14 +00:00
osdep.cc - fixed compile error related to gettimeofday() in MinGW/MSYS and Cygwin with 2006-08-07 17:59:15 +00:00
osdep.h Remove redundant 0x from FMT_ADDRX macro for cygwin 2006-02-11 20:47:22 +00:00
PARAM_TREE.txt A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
pc_system.cc A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
pc_system.h A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
plex86-interface.cc Fixed ton of code duplication. 2006-08-31 18:18:17 +00:00
plex86-interface.h Modified to comply with new way of mapping user space pages 2003-01-09 04:03:36 +00:00
plugin.cc A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
plugin.h A lot of changes but everything is really trivial. 2007-09-28 19:52:08 +00:00
README - updates for release 2.3.5 2007-09-16 07:53:00 +00:00
README-plugins - rewrite header to describe what's in this file. 2002-12-21 16:23:52 +00:00
README-wxWindows - update 2002-12-21 16:13:11 +00:00
README.rfb - remove GPL'd rfbproto.h 2004-04-05 12:09:25 +00:00
TESTFORM.txt Do not allow to allocate more than 2048Mb of emulated memory. 2005-03-06 21:23:38 +00:00
TODO added homepage of para-bochs project 2007-09-10 15:26:46 +00:00
win32res.rc - removed USB port option parameter and store device and option in one single 2007-03-18 17:52:15 +00:00
wxbochs.rc - wx resource problem in plugin mode on win32 fixed. Windows supports only one 2003-07-13 23:30:55 +00:00

Bochs x86 Pentium+ Emulator
Updated: Sun Sep 16 09:53:00 CEST 2007
Version: 2.3.5

WHAT IS BOCHS?

Bochs is a highly portable open source IA-32 (x86) PC emulator
written in C++, that runs on most popular platforms.  It includes
emulation of the Intel x86 CPU, common I/O devices, and a custom
BIOS.  Currently, Bochs can be compiled to emulate a 386, 486,
Pentium/PentiumII/PentiumIII/Pentium4 or x86-64 CPU, including optional 
MMX, SSEx and 3DNow! instructions.  Bochs is capable of running
most Operating Systems inside the emulation, for example Linux, DOS,
Windows 95/98/NT/2000/XP or Windows Vista.
Bochs was written by Kevin Lawton and is currently maintained by 
the Bochs project at "http://bochs.sourceforge.net".

Bochs can be compiled and used in a variety of modes, some which are
still in development.  The 'typical' use of bochs is to provide
complete x86 PC emulation, including the x86 processor, hardware
devices, and memory.  This allows you to run OS's and software within
the emulator on your workstation, much like you have a machine
inside of a machine.  Bochs will allow you to run Windows
applications on a Solaris machine with X11, for example.

Bochs is distributed under the GNU LGPL.  See COPYING for details.

GETTING CURRENT SOURCE CODE 

Source code for Bochs is available from the Bochs home page at
http://bochs.sourceforge.net.  You can download the most recent
release, use CVS to get the latest sources, or grab a CVS
snapshot which is updated nightly.  The releases contain the most
stable code, but if you want the very newest features try the
CVS version instead. 

WHERE ARE THE DOCS?

The Bochs documentation is written in Docbook.  Docbook is a text 
format that can be rendered to many popular browser formats such 
as HTML, PDF, and Postscript.  Each binary release contains the
HTML rendering of the documentation.  Also, you can view the
latest documentation on the web at
  http://bochs.sf.net/doc/docbook/index.html

Some information has not yet been transferred from the older
HTML docs.  These can be found at http://bochs.sf.net/docs-html

WHERE CAN I GET MORE INFORMATION?  HOW DO I REPORT PROBLEMS?

Both the documentation and the Bochs website have instructions on how 
to join the bochs-developers mailing list, which is the primary
forum for discussion of Bochs.  The main page of the website also
has links to bug reports and feature requests.  You can browse and
add to the content in these areas even if you do not have a (free)
SourceForge account.  We need your feedback so that we know what
parts of Bochs to improve.  

There is a patches section on the web site too, if you have made
some changes to Bochs that you want to share.

HOW CAN I HELP?

If you would like contribute to the Bochs project, a good first step
is to join the bochs-developers mailing list, and read the archive
of recent messages to see what's going on.  

If you are a technical person (can follow hardware specs, can write
C/C++) take a look at the list of open bug reports and feature
requests to see if you are interested in working on any of the
problems that are mentioned in them.  If you check out the CVS
sources, make some changes, and create a patch, one of the
developers will be very happy to apply it for you.  Developers who
frequently submit patches, or who embark on major changes in the
source can get write access to CVS.  Be sure to communicate with the
bochs-developers list to avoid several people working on the same
thing without realizing it.

If you are a Bochs user, not a hardware/C++ guru, there are still
many ways you could help out.  For example:
  - write instructions on how to install a particular operating system
  - writing/cleaning up documentation
  - testing out Bochs on every imaginable operating system and 
    reporting how it goes.