2001-04-10 05:04:59 +04:00
|
|
|
<HTML>
|
2001-09-11 02:12:59 +04:00
|
|
|
<HEAD>
|
|
|
|
<TITLE>What is Bochs?</TITLE>
|
|
|
|
</HEAD>
|
2001-04-10 05:04:59 +04:00
|
|
|
<BODY TEXT="#000000" BGCOLOR="#ececec" LINK="#3333cc" VLINK="#666666">
|
|
|
|
|
|
|
|
<CENTER><H1><I>Welcome to the Bochs x86 PC Emulation Software Home Page!</I></H1></CENTER>
|
|
|
|
|
|
|
|
<H1>
|
|
|
|
What is Bochs?
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
Bochs is a portable x86 PC emulation software package that emulates
|
|
|
|
enough of the x86 CPU, related AT hardware, and BIOS to run DOS,
|
|
|
|
Windows '95, Minix 2.0, and other OS's, all on your workstation.
|
|
|
|
<P>
|
2001-05-09 04:25:47 +04:00
|
|
|
Bochs is an open source project distributed under the <a
|
2001-05-09 05:44:39 +04:00
|
|
|
href="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General Public License</a>. It was originally a commercial product, but in March 2000
|
2001-05-09 04:25:47 +04:00
|
|
|
<a href="www.linux-mandrake.com">MandrakeSoft</a> bought Bochs and committed it
|
|
|
|
to Open Source. <a href="http://www.linux-mandrake.com/en/announce-bochs-20000323.php3">Here</a> is the press release.
|
2001-04-10 05:04:59 +04:00
|
|
|
<P>
|
|
|
|
Bochs now compiles/runs on many platforms. See the following list
|
|
|
|
for supported platforms and special notes:
|
|
|
|
<UL>
|
|
|
|
<LI><B>Unix/X11:</B> This is my main development platform.
|
|
|
|
<LI><B>BeOS:</B> I also did this port, originally to R3/PPC using
|
|
|
|
CodeWarrior. It now works on R4/x86 with egcs. Simon Huet
|
|
|
|
picked up maintaining/reworking the BeOS GUI port. Check
|
|
|
|
out Simon's
|
|
|
|
<A HREF="http://members.xoom.com/bebochs/">BeBochs</A> page.
|
|
|
|
<LI><B>Win32:</B> This port was done by David Ross. I've enhanced the build
|
|
|
|
process for Win32. You can compile with either the MS Visual C++ 5.0 or
|
|
|
|
GNU-Win32 environments. Go to <A HREF="win32.html">Compiling Bochs on Win32</A>
|
|
|
|
<LI><B>OS/2:</B> Nick Behnken used PE2LX to translate David Ross's Win32 port
|
|
|
|
to an OS/2 program. Check out
|
|
|
|
<A HREF="http://www.htc.net/~nbehnken">Nick Behnken's page</A>.
|
|
|
|
<LI><B>OS/2:</B> Craig Ballantyne ported bochs to OS/2. I will
|
|
|
|
integrate this back into the main bochs source soon. Check out the
|
|
|
|
<A HREF="http://www.guisoft-corp.com">guiSoft Corp. home page</A>.
|
|
|
|
<LI><B>Macintosh:</B>
|
|
|
|
David Batterham
|
|
|
|
<A HREF="mailto:drbatter@socs.uts.edu.au">drbatter@socs.uts.edu.au</A>
|
|
|
|
or
|
|
|
|
<A HREF="mailto:drbatter@yahoo.com">drbatter@yahoo.com</A>
|
2001-05-09 05:34:24 +04:00
|
|
|
ported bochs to the Mac. His changes are integrated, though it
|
2001-04-10 05:04:59 +04:00
|
|
|
is work in progress. He compiled with CodeWarrior Pro R1 (CW12),
|
|
|
|
and included a project file 'Bochs.proj' in the top-level directory
|
|
|
|
of source code, which you may need to modify. I added
|
|
|
|
a '--with-macos' option to configure, so you can use a Unix
|
|
|
|
machine to generate header files for the Mac.
|
|
|
|
Check out David's
|
|
|
|
<A HREF="http://members.xoom.com/macbochs/">MacBochs website</A>.
|
2001-05-09 05:34:24 +04:00
|
|
|
David has not had time to maintain the page or the Mac port since early
|
|
|
|
2000. If you have Mac development tools and want to contribute, contact
|
|
|
|
the developers list.
|
|
|
|
|
2001-04-10 05:04:59 +04:00
|
|
|
<LI><B>FreeDOS for Bochs:</B>
|
|
|
|
David Batterham
|
|
|
|
also offers information on running FreeDOS inside of bochs.
|
|
|
|
You can download a disk image with a pre-installed copy of FreeDOS,
|
|
|
|
a completely free DOS-like operating system.
|
|
|
|
Check out his website at
|
|
|
|
<A HREF="http://members.xoom.com/macbochs/freedos.html">
|
|
|
|
http://members.xoom.com/macbochs/freedos.html.</A>
|
|
|
|
<BR>
|
|
|
|
For more info about FreeDOS, see
|
|
|
|
<A HREF="http://www.freedos.org/">FreeDOS Web page</A>
|
|
|
|
</UL>
|
|
|
|
<P>
|
2001-05-09 05:34:24 +04:00
|
|
|
There's more! You can find more detailed testing information on the testing status page
|
|
|
|
on <a href="http://bochs.sourceforge.net">bochs.sourceforge.net</a>.
|
2001-04-10 05:04:59 +04:00
|
|
|
<BR>
|
|
|
|
<HR>
|
|
|
|
<H1>
|
|
|
|
<A NAME="Platforms">Platforms:</A>
|
|
|
|
</H1>
|
|
|
|
Here is a list of platforms on which Bochs has successfully
|
|
|
|
been compiled and run, starting as of version bochs-971118a.
|
|
|
|
Note that, Bochs will compile/run on many other platforms,
|
|
|
|
but I'm starting the list from scratch again. If you have
|
|
|
|
had success with Bochs, please let me know so that I can
|
|
|
|
add your platform to this list.
|
|
|
|
<A HREF="mailto:kevin@bochs.com">kevin@bochs.com</A>
|
|
|
|
<P>
|
|
|
|
<TABLE BORDER>
|
|
|
|
<TR>
|
|
|
|
<TH>Architecture</TH>
|
|
|
|
<TH>O.S.</TH>
|
|
|
|
<TH>GUI</TH>
|
|
|
|
<TH>compiler</TH>
|
|
|
|
<TH>Bochs version</TH>
|
|
|
|
<TH>tested with</TH>
|
|
|
|
<TH>tested by</TH>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Sparc</TD>
|
|
|
|
<TD>Solaris 2.4</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.7.2.1</TD>
|
|
|
|
<TD>971118a</TD>
|
|
|
|
<TD>Win'95</TD>
|
|
|
|
<TD><A HREF="mailto:kevin@bochs.com">Kevin Lawton</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>X86 PC</TD>
|
|
|
|
<TD>Solaris 7</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.8.1</TD>
|
|
|
|
<TD>990708a
|
|
|
|
<TD>Win'95 boot disk only</TD>
|
|
|
|
<TD><A HREF="mailto:lab.village1@saritel.it">Danilo Paliani</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>x86 PC</TD>
|
|
|
|
<TD>BeOS R4</TD>
|
|
|
|
<TD>BeOS R4</TD>
|
|
|
|
<TD>gcc 2.9-beos-980929</TD>
|
|
|
|
<TD>990108+</TD>
|
|
|
|
<TD>Win'95</TD>
|
|
|
|
<TD><A HREF="mailto:kevin@bochs.com">Kevin Lawton</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>BeBox PPC</TD>
|
|
|
|
<TD>BeOS PR2</TD>
|
|
|
|
<TD>BeOS PR2</TD>
|
|
|
|
<TD>CodeWarrior</TD>
|
|
|
|
<TD>971118a</TD>
|
|
|
|
<TD>Win'95</TD>
|
|
|
|
<TD><A HREF="mailto:kevin@bochs.com">Kevin Lawton</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>x86 PC</TD>
|
|
|
|
<TD>Linux 2.0.30</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.7.2.1</TD>
|
|
|
|
<TD>971118a</TD>
|
|
|
|
<TD>Win'95</TD>
|
|
|
|
<TD><A HREF="mailto:kevin@bochs.com">Kevin Lawton</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>x86 PC</TD>
|
|
|
|
<TD>FreeBSD 2.2/3.0</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.7.2.1</TD>
|
|
|
|
<TD>971118a</TD>
|
|
|
|
<TD>DOS</TD>
|
|
|
|
<TD><A HREF="mailto:msmith@gsoft.com.au">msmith@gsoft.com.au</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>x86 PC</TD>
|
|
|
|
<TD>Windows '98</TD>
|
|
|
|
<TD>Windows '98</TD>
|
|
|
|
<TD>MS Visual C++ 5.0</TD>
|
|
|
|
<TD>980629</TD>
|
|
|
|
<TD>DOS</TD>
|
|
|
|
<TD><A HREF="mailto:kevin@bochs.com">Kevin Lawton</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Mac?</TD>
|
|
|
|
<TD>MacOS?</TD>
|
|
|
|
<TD>MacOS?</TD>
|
|
|
|
<TD>CodeWarrior Pro R1 (CW12)</TD>
|
|
|
|
<TD>981222+</TD>
|
|
|
|
<TD>Win'95 text mode</TD>
|
|
|
|
<TD><A HREF="mailto:drbatter@socs.uts.edu.au">
|
|
|
|
drbatter@socs.uts.edu.au</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Amiga 2000 (m68k)</TD>
|
|
|
|
<TD>Debian Linux 2.0</TD>
|
|
|
|
<TD>X11?</TD>
|
|
|
|
<TD>gcc?</TD>
|
|
|
|
<TD>981102</TD>
|
|
|
|
<TD>?</TD>
|
|
|
|
<TD><A HREF="mailto:101.55910@germanynet.de">Eckehard Schaefer</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Alpha EV5</TD>
|
|
|
|
<TD>Digital Unix 5.0 pre-release</TD>
|
|
|
|
<TD>X11R6.3</TD>
|
|
|
|
<TD>Digital C++</TD>
|
|
|
|
<TD>990110b</TD>
|
|
|
|
<TD>Win95 boot disk only</TD>
|
|
|
|
<TD><A HREF="mailto:larry.gensch@digital.com">Larry Gensch</A></TD>
|
|
|
|
</TR>
|
2001-05-09 05:34:24 +04:00
|
|
|
<TR>
|
|
|
|
<TD>Compaq Alpha Station 600</TD>
|
|
|
|
<TD>Compaq Tru64 UNIX 5.1</TD>
|
|
|
|
<TD>X11</TD>
|
|
|
|
<TD>Compaq C V6.3-025</TD>
|
|
|
|
<TD>bugfix2</TD>
|
|
|
|
<TD>Linux</TD>
|
|
|
|
<TD><A HREF="mailto:Kenneth.block@compaq.com">Kenneth Block</A></TD>
|
|
|
|
</TR>
|
2001-04-10 05:04:59 +04:00
|
|
|
<TR>
|
|
|
|
<TD>AMIGA1200/68060</TD>
|
|
|
|
<TD>Linux/m68k 2.2.0 pre6 (RedHat5.1)</TD>
|
|
|
|
<TD>X11R6.3</TD>
|
|
|
|
<TD>gcc 2.7.2.3</TD>
|
|
|
|
<TD>990110b</TD>
|
|
|
|
<TD>FreeDOS</TD>
|
|
|
|
<TD><A HREF="mailto:syun@gol.com">syun@gol.com</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>PC/Pentium</TD>
|
|
|
|
<TD>Linux 2.0.35 (RedHat5.1)</TD>
|
|
|
|
<TD>X11R6.3</TD>
|
|
|
|
<TD>egcs-2.91.57</TD>
|
|
|
|
<TD>990110b</TD>
|
|
|
|
<TD>FreeDOS</TD>
|
|
|
|
<TD><A HREF="mailto:syun@gol.com">syun@gol.com</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>SGI Mips R5000 Indy</TD>
|
|
|
|
<TD>IRIX sage 6.5</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.8.1</TD>
|
|
|
|
<TD>990127</TD>
|
|
|
|
<TD>dos 6.22</TD>
|
|
|
|
<TD><A HREF="mailto:mgoumans@cray.org">mgoumans@cray.org</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Mips</TD>
|
|
|
|
<TD>IRIX 6.5</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>SGI CC 7.2.1</TD>
|
|
|
|
<TD>981229</TD>
|
|
|
|
<TD>Win'95</TD>
|
|
|
|
<TD><A HREF="mailto:ltouati@ogilvy.net">ltouati@ogilvy.net</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>PowerMac 7300/400MP</TD>
|
|
|
|
<TD>LinuxPPC R4 (kernel 2.2.1)</TD>
|
|
|
|
<TD>X11R6.3</TD>
|
|
|
|
<TD>egcs-2.91.60</TD>
|
|
|
|
<TD>990127</TD>
|
|
|
|
<TD>DOS</TD>
|
|
|
|
<TD><A HREF="mailto:locutus@MIT.EDU">locutus@MIT.EDU</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>StrongARM</TD>
|
|
|
|
<TD>netbsd1.3.2 arm32</TD>
|
|
|
|
<TD>X11R6.3</TD>
|
|
|
|
<TD>gcc 2.7.2.1</TD>
|
|
|
|
<TD>990127d</TD>
|
|
|
|
<TD>PicoBSD</TD>
|
|
|
|
<TD><A HREF="mailto:andrew@andycole.force9.co.uk">Andrew Coles</A></TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>RS/6000 PowerPC</TD>
|
|
|
|
<TD>AIX 4.3.2</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.95.2</TD>
|
|
|
|
<TD>991114a</TD>
|
|
|
|
<TD>FreeDOS</TD>
|
|
|
|
<TD><A HREF="mailto:wissing@mail.desy.de">Christoph Wissing</A></TD>
|
|
|
|
</TR>
|
2001-05-09 05:34:24 +04:00
|
|
|
<TR>
|
|
|
|
<TD>G4 PowerPC</TD>
|
|
|
|
<TD>Yellowdog Linux</TD>
|
|
|
|
<TD>X11R6</TD>
|
|
|
|
<TD>gcc 2.95.2</TD>
|
|
|
|
<TD>bugfix2</TD>
|
|
|
|
<TD>Win95,DOS</TD>
|
|
|
|
<TD><A HREF="mailto:davis@enel.ucalgary.ca">Brad Davis</A></TD>
|
|
|
|
</TR>
|
2001-04-10 05:04:59 +04:00
|
|
|
</TABLE>
|
|
|
|
|
|
|
|
<BR>
|
|
|
|
<HR>
|
|
|
|
<H1>
|
|
|
|
<A NAME="Operating Systems">Operating Systems:</A>
|
|
|
|
</H1>
|
|
|
|
For quick reference,
|
|
|
|
here is a table listing the status of bochs' ability to run
|
|
|
|
various Operating Systems. If you have run other ones not listed
|
|
|
|
here, or would like to see new ones, please send me email.
|
|
|
|
<A HREF="mailto:kevin@bochs.com">kevin@bochs.com</A>
|
|
|
|
See the chart above for more information. This information
|
|
|
|
may have changed since it was last updated, and is provided
|
|
|
|
for a brief overview. There are a lot of factors involved.
|
|
|
|
<P>
|
|
|
|
<TABLE BORDER>
|
|
|
|
<TR>
|
|
|
|
<TH>Operating System</TH>
|
|
|
|
<TH>Status</TH>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Windows 95</TD>
|
|
|
|
<TD>works, but may fail during install</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>DOS 6.2</TD>
|
|
|
|
<TD>works, SCANDISK.EXE hangs</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>RedHat 5.x boot floppy</TD>
|
|
|
|
<TD>works</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Pragma Linux</TD>
|
|
|
|
<TD>works</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>FreeDOS</TD>
|
|
|
|
<TD>works</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Roadrunner</TD>
|
|
|
|
<TD>works</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>pico BSD</TD>
|
|
|
|
<TD>works</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD><A HREF="http://www.tik.ee.ethz.ch/~topsy">Topsy</A></TD>
|
|
|
|
<TD>works</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>QNX version 3 demo disk</TD>
|
|
|
|
<TD>boot fails</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Solaris 7/x86 "Device Configuration Assistant"</TD>
|
|
|
|
<TD>unknown</TD>
|
|
|
|
</TR>
|
|
|
|
<TR>
|
|
|
|
<TD>Interactive Unix</TD>
|
|
|
|
<TD>unknown</TD>
|
|
|
|
</TR>
|
|
|
|
</TABLE>
|
|
|
|
|
|
|
|
<BR>
|
|
|
|
<HR>
|
|
|
|
<H1>
|
|
|
|
What can you do with Bochs?
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
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. For
|
|
|
|
instance, let's say your workstation is a Unix/X11 workstation, but you
|
|
|
|
want to run Win'95 applications. Bochs will allow you to run Win'95
|
|
|
|
and associated software on your Unix/X11 workstation, displaying a
|
|
|
|
window on your workstation, simulating a monitor on a PC.
|
|
|
|
<P>
|
|
|
|
Currently, bochs emulates the x86 CPU completely in software, and
|
|
|
|
does not run any instructions natively, even if you are running it
|
|
|
|
on an x86 machine.
|
|
|
|
<P>
|
|
|
|
Bochs may be of interest to you for other special modes, or uses.
|
|
|
|
You may wish to use only the device models included with bochs in
|
|
|
|
combination with your own CPU emulation, use it's CPU emulation
|
|
|
|
with another set of device models, use it's built in non-intrusive
|
|
|
|
debugger, co-emulate the bochs CPU model against another CPU
|
|
|
|
emulator/simulator, or use data compiled from instrumentation
|
|
|
|
facilities to analyze use of the x86 instruction set.
|
|
|
|
<P>
|
|
|
|
In addition to running x86 software on your workstation,
|
|
|
|
bochs may be of interest to x86 clone projects, x86 device driver
|
|
|
|
development teams, PC hardware development, and many other uses.
|
|
|
|
|
|
|
|
|
|
|
|
</BODY>
|
|
|
|
</HTML>
|