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 SVN
Checking out Bochs
Getting the Latest Version
Getting a Release Version
More about SVN
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 or MinGW/MSYS
Compiling on MacOS 9 with CodeWarrior
Compiling on MacOS X
Compiling on Amiga/MorphOS
Compiling with the RFB interface
Compiling with the VNCSRV interface
Compiling with the SDL interface
Compiling with the SDL version 2 interface
Compiling with the wxWidgets interface
Building an RPM on Linux
Compile Problems
Setup
What does Bochs need?
ROM images
The configuration file bochsrc
plugin_ctrl
config_interface
display_library
cpu
cpuid
memory
megs
romimage
vgaromimage
optromimage1, optromimage2, optromimage3 or optromimage4
vga
voodoo
keyboard
mouse
pci
clock
cmosimage
private_colormap
floppya/floppyb
ata0, ata1, ata2, ata3
ata0-master, ata0-slave, ata1-*, ata2-*, ata3-*
boot
floppy_bootsig_check
log
logprefix
debug/info/error/panic
debugger_log
com[1-4]
parport[1-2]
sound
speaker
sb16
es1370
ne2k
pcipnic
e1000
usb_uhci
usb_ohci
usb_ehci
usb_xhci
pcidev
gdbstub
magic_break
debug_symbols
port_e9_hack
user_plugin
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
Pre-defined CPU models
Save and restore simulation
Using sound
Sound basics
The PC speaker
SB16 runtime configuration
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
Feedback and Support
The Bochs project on SourceForge
SourceForge tickets section (bug and patch trackers)
Mailing Lists
bochs-developers mailing list
bochs-announce mailing list
bochs-cvs mailing list
Mailing List Etiquette
Tips and Techniques
Specify log options by device
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 the 'slirp' networking module
Advanced Slirp setup with config file
Access to guest services from the host
Using the 'socket' networking module
Using the 'bxhub' utility
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
The Bochs debugger gui
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
Notes about Voodoo Graphics usage
Disk Image Modes
flat
concat
external/dll
sparse
vmware3 / vmware4
undoable
growing
volatile
vpc
vvfat
Using the bximage tool
Create image
Convert image
Resize image
Commit 'undoable' redolog to base image
Disk image info
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
Windows 7
SCO OpenServer 5.0.5