87f1f3a2e0
This fixes bug #614724: SDL can get stuck in full-screen mode, and provides a framework for fixing the problem on other full-screen display libraries such as term, svga, etc. - add virtual method bx_gui::set_display_mode(mode) which can be overridden by each display library class, if appropriate. This method is primarily used when you run Bochs full screen, to tell the gui to switch from full screen back to a mode where you can use the text console. - There are two display modes: config and simulation. The mode is changed to config mode during logfunctions::ask, during the runtime configuration menu, and before displaying a debugger prompt. It is changed back to simulation mode whenever instructions are running. - Instead of being called directly through the global bx_gui pointer, the bx_gui_c::set_display_mode() method is almost always accessed through siminterface, like this: SIM->set_display_mode (DISP_MODE_CONFIG); SIM->set_display_mode (DISP_MODE_SIM); Of course siminterface just passes the call on to bx_gui::set_display_mode(). I added it to siminterface so that the config interfaces could call it. (They don't #include bochs.h so they can't access bx_gui.) Modified Files: logio.cc main.cc debug/dbg_main.cc gui/gui.h gui/sdl.cc gui/siminterface.cc gui/siminterface.h |
||
---|---|---|
.. | ||
bios | ||
build | ||
cpu | ||
debug | ||
disasm | ||
doc | ||
docs-html | ||
dynamic | ||
font | ||
fpu | ||
gui | ||
instrument | ||
iodev | ||
memory | ||
misc | ||
patches | ||
.bochsrc | ||
.conf.AIX.4.3.1 | ||
.conf.amigaos | ||
.conf.beos | ||
.conf.everything | ||
.conf.linux | ||
.conf.macos | ||
.conf.macosx | ||
.conf.sparc | ||
.conf.win32 | ||
.conf.win32-cygwin | ||
.conf.win32-vcpp | ||
aclocal.m4 | ||
bochs.h | ||
bochs.rsrc.hqx | ||
bxversion.h.in | ||
CHANGES | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.in | ||
COPYING | ||
extplugin.h | ||
gdbstub.cc | ||
install-sh | ||
install-x11-fonts.in | ||
load32bitOShack.cc | ||
logio.cc | ||
ltdl.c | ||
ltdl.h | ||
ltdlconf.h.in | ||
ltmain.sh | ||
main.cc | ||
Makefile.in | ||
osdep.cc | ||
osdep.h | ||
pc_system.cc | ||
pc_system.h | ||
plugin.cc | ||
plugin.h | ||
README | ||
README-plugins | ||
README-wxWindows | ||
state_file.cc | ||
state_file.h | ||
test-x11-fonts | ||
TESTFORM.txt | ||
wxbochs.rc |
Bochs x86 Pentium Emulator Updated: Wed Dec 4 18:39:09 EST 2002 Version: 2.0.pre3 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 or Pentium CPU. Bochs is capable of running most Operating Systems inside the emulation including Linux, Windows 95, DOS, and Windows NT 4. 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 Win '95 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 in transition between the old documentation written in HTML and the new documentation written in Docbook format. The new documentation is online at http://bochs.sf.net/doc/docbook/alldocs.html and it is the most current. Some information has not yet been transferred from the old HTML docs. This 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: - improving win32 binary releases - building up a set of useful tools to include in those releases - writing/cleaning up documentation - testing out Bochs on every imaginable operating system and reporting how it goes.