Bochs User Manual

Kevin Lawton

Bryce Denney

N. David Guarneri

Volker Ruppert

Christophe Bothamy

Edited by

Michael Calabrese

Stanislav Shwartsman


Table of Contents
Introduction to Bochs
What is Bochs?
Who uses Bochs?
Is Bochs right for me?
Will it work for me?
Bochs License
Third Party Software Licensing and Temporary Files
Features
Supported Platforms
FAQ
Release Notes
Installation
Downloading Bochs
Tracking the source code with CVS
Checking out Bochs
Getting the Latest Version
Getting a Release Version
More about CVS
Installing a Binary
Windows
Linux RPM
MacOS X DMG
Compiling Bochs
Standard Compile
Configure Options
Transcript of Successful Compilation
Compiling on Win32 with Microsoft VC++
Compiling on Win32 with Cygwin
Compiling on MacOS 9 with CodeWarrior
Compiling on MacOS X
Compiling on BeOS
Compiling on Amiga/MorphOS
Compiling with the RFB interface
Compiling with the SDL interface
Compiling with the wxWidgets interface
Building an RPM on Linux
Compile Problems
Setup
What does Bochs need?
bochsrc
megs
cpu
romimage
optromimage1, optromimage2, optromimage3 or optromimage4
vgaromimage
vga
floppya/floppyb
ata0, ata1, ata2, ata3
ata0-master, ata0-slave, ata1-*, ata2-*, ata3-*
boot
floppy_bootsig_check
config_interface
display_library
log
logprefix
debug/info/error/panic
debugger_log
com[1-4]
parport[1-2]
sb16
vga_update_interval
keyboard_serial_delay
keyboard_paste_delay
clock
mouse
private_colormap
i440fxsupport
pcidev
usb_uhci
usb_ohci
gdbstub
ne2k
pnic
keyboard_mapping
keyboard_type
user_shortcut
cmosimage
plugin_ctrl
user_plugin
magic_break
port_e9_hack
debug_symbols
Sound Blaster 16 Emulation
How well does it work?
Output to a sound card
Installation on Linux
Features planned for the future
Description of the sound output classes
How to write your own keymap table
Using Bochs
Command line arguments
Search order for the configuration file
The configuration interface 'textconfig'
The start menu
The Bochs headerbar
The runtime configuration
Save and restore simulation
Common problems and what to do about them (Troubleshooting)
Bochs panics! What can I do?
Mouse behavior, enabling and disabling
Text-mode is broken in some ancient DOS program
Mailing Lists
bochs-developers mailing list
bochs-announce mailing list
bochs-cvs mailing list
Mailing List Etiquette
Tips and Techniques
How to make a simple disk image
Create a flat image
Partition and format your image file
Use mtools to manipulate disk images
Bochs GNU/Linux DiskTools
Win32 only: Tools to manipulate disk images
Winimage
DiskExplorer
Ben Lunt's MTOOLs for Bochs and Win32 and/or DOS
X Windows: Color allocation problems
Screen saver turns on too quickly
Mounting a disk image using the loop device
...on Linux
...on FreeBSD
Simulating a Symmetric Multiprocessor (SMP) Machine
Setting Up Networking in DLX Linux
Configuring and using a tuntap network interface
Tuntap description
Set up the linux Kernel [1]
Configure Bochs to use the tuntap interface
Set up the private network between the host and the guest
Set up the host to masquerade the guest network accesses
Using Bochs internal debugger
Execution Control
BreakPoints
Memory WatchPoints
Manipulating Memory
Info commands
Manipulating CPU Registers
Disassembly commands
Instruction tracing
Instrumentation
Instrumentation commands
Other Commands
Related links
Using Bochs and the remote GDB stub
Configuring Bochs
Running Bochs
Running GDB
Using the serial port
Logging serial port output to a file
Interactivity : connecting to a virtual terminal
Interactivity : connecting to a pseudo terminal
BIOS Tips
Booting from CD-ROMs
Disk translation
How to enter special key combination
Notes about VESA usage
Instructions to setup Bochs VBE in Windows Guest OS
Notes about Cirrus SVGA usage
Disk Image Modes
flat
concat
external/dll
sparse
vmware3/vmware4
undoable
growing
volatile
Using the bximage tool
Using the bxcommit tool
Guest operating systems
Knoppix
Getting Knoppix
Preparing Bochs
Using Knoppix
FreeBSD 5.2.1
Getting FreeBSD
Preparing Bochs
Installing FreeBSD
Post-installation configuration
Using FreeBSD
DOS
Accessing your CDROM
SB16 driver for DOS
Bootdisks of early DOS versions
Windows NT 4.0
Windows 2000
Windows 2000 Server
Windows XP
SCO OpenServer 5.0.5