a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You may now use double quotes around pathnames, in case
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# your pathname includes spaces.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# CONFIG_INTERFACE
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The configuration interface is a series of menus or dialog boxes that
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# allows you to change all the settings that control Bochs's behavior.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# There are two choices of configuration interface: a text mode version
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# called "textconfig" and a graphical version called "wx". The text
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mode version uses stdin/stdout and is always compiled in. The graphical
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# version is only available when you use "--with-wx" on the configure
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# command. If you do not write a config_interface line, Bochs will
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# choose a default for you.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# NOTE: if you use the "wx" configuration interface, you must also use
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the "wx" display library.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#config_interface: textconfig
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#config_interface: wx
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# DISPLAY_LIBRARY
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The display library is the code that displays the Bochs VGA screen. Bochs
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# has a selection of about 10 different display library implementations for
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# different platforms. If you run configure with multiple --with-* options,
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the display_library command lets you choose which one you want to run with.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If you do not write a display_library line, Bochs will choose a default for
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# you.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The choices are:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# x use X windows interface, cross platform
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# win32 use native win32 libraries
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# carbon use Carbon library (for MacOS X)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# beos use native BeOS libraries
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# macintosh use MacOS pre-10
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# amigaos use native AmigaOS libraries
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# sdl use SDL library, cross platform
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# svga use SVGALIB library for Linux, allows graphics without X11
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# term text only, uses curses/ncurses library, cross platform
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# rfb provides an interface to AT&T's VNC viewer, cross platform
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# wx use wxWidgets library, cross platform
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# nogui no display at all
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# NOTE: if you use the "wx" configuration interface, you must also use
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the "wx" display library.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Specific options:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Some display libraries now support specific option to control their
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# behaviour. See the examples below for currently supported options.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: amigaos
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: beos
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: carbon
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: macintosh
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: nogui
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: rfb, options="timeout=60" # time to wait for client
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: sdl, options="fullscreen" # startup in fullscreen mode
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: term
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: win32, options="legacyF12" # use F12 to toggle mouse
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: wx
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#display_library: x
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ROMIMAGE:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The ROM BIOS controls what the PC does when it first powers on.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Normally, you can use a precompiled BIOS in the source or binary
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# distribution called BIOS-bochs-latest. The ROM BIOS is usually loaded
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# starting at address 0xf0000, and it is exactly 64k long.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You can also use the environment variable $BXSHARE to specify the
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# location of the BIOS.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The usage of external large BIOS images (up to 512k) at memory top is
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# now supported, but we still recommend to use the BIOS distributed with
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Bochs. Now the start address can be calculated from image size.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncromimage: file=bochs/bios/BIOS-bochs-latest, address=0xe0000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#romimage: file=mybios.bin, address=0xfff80000 # 512k at memory top
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#romimage: file=mybios.bin # calculate start address from image size
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# CPU:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines cpu-related parameters inside Bochs:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# COUNT:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Set the number of processors:cores per processor:threads per core
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# when Bochs is compiled for SMP emulation.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Bochs currently supports up to 8 threads running simultaniosly.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If Bochs is compiled without SMP support, it won't accept values
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# different from 1.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# RESET_ON_TRIPLE_FAULT:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Reset the CPU when triple fault occur (highly recommended) rather than
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# PANIC. Remember that if you trying to continue after triple fault the
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# simulation will be completely bogus !
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# IPS:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Emulated Instructions Per Second. This is the number of IPS that bochs
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# is capable of running on your machine. You can recompile Bochs with
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# --enable-show-ips option enabled, to find your workstation's capability.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Measured IPS value will then be logged into your log file or status bar
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# (if supported by the gui).
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# IPS is used to calibrate many time-dependent events within the bochs
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# simulation. For example, changing IPS affects the frequency of VGA
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# updates, the duration of time before a key starts to autorepeat, and
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the measurement of BogoMips and other benchmarks.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Machine Mips
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ________________________________________________________________
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 2.1Ghz Athlon XP with Linux 2.6/g++ 3.4 12 to 15 Mips
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 1.6Ghz Intel P4 with Win2000/g++ 3.3 5 to 7 Mips
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 650Mhz Athlon K-7 with Linux 2.4.4/egcs-2.91.66 2 to 2.5 Mips
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 400Mhz Pentium II with Linux 2.0.36/egcs-1.0.3 1 to 1.8 Mips
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsynccpu: count=1, ips=10000000, reset_on_triple_fault=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# MEGS
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Set the number of Megabytes of physical memory you want to emulate.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The default is 32MB, most OS's won't need more than that.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The maximum amount of memory supported is 2048Mb.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#megs: 256
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#megs: 128
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#megs: 64
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncmegs: 32
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#megs: 16
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#megs: 8
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# OPTROMIMAGE[1-4]:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You may now load up to 4 optional ROM images. Be sure to use a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# read-only area, typically between C8000 and EFFFF. These optional
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ROM images should not overwrite the rombios (located at
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# F0000-FFFFF) and the videobios (located at C0000-C7FFF).
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Those ROM images will be initialized by the bios if they contain
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the right signature (0x55AA) and a valid checksum.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# It can also be a convenient way to upload some arbitrary code/data
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# in the simulation, that can be retrieved by the boot loader
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optromimage1: file=optionalrom.bin, address=0xd0000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optromimage2: file=optionalrom.bin, address=0xd1000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optromimage3: file=optionalrom.bin, address=0xd2000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optromimage4: file=optionalrom.bin, address=0xd3000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncoptromimage1: file=../../src/bin/pnic.rom, address=0xd0000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optromimage1: file=../../src/bin/rtl8029.rom, address=0xd0000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optramimage1: file=/path/file1.img, address=0x0010000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optramimage2: file=/path/file2.img, address=0x0020000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optramimage3: file=/path/file3.img, address=0x0030000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#optramimage4: file=/path/file4.img, address=0x0040000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# VGAROMIMAGE
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You now need to load a VGA ROM BIOS into C0000.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#vgaromimage: file=bios/VGABIOS-elpin-2.40
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncvgaromimage: file=bochs/bios/VGABIOS-lgpl-latest
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#vgaromimage: file=bios/VGABIOS-lgpl-latest-cirrus
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# VGA:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Here you can specify the display extension to be used. With the value
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 'none' you can use standard VGA with no extension. Other supported
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# values are 'vbe' for Bochs VBE and 'cirrus' for Cirrus SVGA support.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#vga: extension=cirrus
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#vga: extension=vbe
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncvga: extension=none
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# FLOPPYA:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Point this to pathname of floppy image file or device
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This should be of a bootable floppy(image/device) if you're
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# booting from 'a' (or 'floppy').
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You can set the initial status of the media to 'ejected' or 'inserted'.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 2_88=path, status=ejected (2.88M 3.5" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 1_44=path, status=inserted (1.44M 3.5" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 1_2=path, status=ejected (1.2M 5.25" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 720k=path, status=inserted (720K 3.5" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 360k=path, status=inserted (360K 5.25" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 320k=path, status=inserted (320K 5.25" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 180k=path, status=inserted (180K 5.25" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 160k=path, status=inserted (160K 5.25" floppy)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: image=path, status=inserted (guess type from image size)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The path should be the name of a disk image file. On Unix, you can use a raw
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# device name such as /dev/fd0 on Linux. On win32 platforms, use drive letters
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# such as a: or b: as the path. The parameter 'image' works with image files
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# only. In that case the size must match one of the supported types.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: 1_44=/dev/fd0, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: image=../1.44, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: 1_44=/dev/fd0H1440, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: 1_2=../1_2, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: 1_44=a:, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: 1_44=a.img, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppya: 1_44=/dev/rfd0a, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncfloppya: 1_44=../../src/bin/pnic.dsk, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# FLOPPYB:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# See FLOPPYA above for syntax
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppyb: 1_44=b:, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncfloppyb: 1_44=b.img, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ATA0, ATA1, ATA2, ATA3
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ATA controller for hard disks and cdroms
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata[0-3]: enabled=[0|1], ioaddr1=addr, ioaddr2=addr, irq=number
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# These options enables up to 4 ata channels. For each channel
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the two base io addresses and the irq must be specified.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata0 and ata1 are enabled by default with the values shown below
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata2: enabled=1, ioaddr1=0x1e8, ioaddr2=0x3e0, irq=11
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata3: enabled=1, ioaddr1=0x168, ioaddr2=0x360, irq=9
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncata2: enabled=0, ioaddr1=0x1e8, ioaddr2=0x3e0, irq=11
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncata3: enabled=0, ioaddr1=0x168, ioaddr2=0x360, irq=9
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ATA[0-3]-MASTER, ATA[0-3]-SLAVE
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines the type and characteristics of all attached ata devices:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# type= type of attached device [disk|cdrom]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mode= only valid for disks [flat|concat|external|dll|sparse|vmware3]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mode= only valid for disks [undoable|growing|volatile]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# path= path of the image
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# cylinders= only valid for disks
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# heads= only valid for disks
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# spt= only valid for disks
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# status= only valid for cdroms [inserted|ejected]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# biosdetect= type of biosdetection [none|auto], only for disks on ata0 [cmos]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# translation=type of translation of the bios, only for disks [none|lba|large|rechs|auto]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# model= string returned by identify device command
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# journal= optional filename of the redolog for undoable and volatile disks
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Point this at a hard disk image file, cdrom iso file, or physical cdrom
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# device. To create a hard disk image, try running bximage. It will help you
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# choose the size and then suggest a line that works with it.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# In UNIX it may be possible to use a raw device as a Bochs hard disk,
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# but WE DON'T RECOMMEND IT. In Windows there is no easy way.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# In windows, the drive letter + colon notation should be used for cdroms.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Depending on versions of windows and drivers, you may only be able to
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# access the "first" cdrom in the system. On MacOSX, use path="drive"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# to access the physical drive.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The path is always mandatory. For flat hard disk images created with
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# bximage geometry autodetection can be used (cylinders=0 -> cylinders are
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# calculated using heads=16 and spt=63). For other hard disk images and modes
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the cylinders, heads, and spt are mandatory.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Default values are:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mode=flat, biosdetect=auto, translation=auto, model="Generic 1234"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The biosdetect option has currently no effect on the bios
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata0-master: type=disk, mode=flat, path=10M.sample, cylinders=306, heads=4, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata0-slave: type=disk, mode=flat, path=20M.sample, cylinders=615, heads=4, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata1-master: type=disk, mode=flat, path=30M.sample, cylinders=615, heads=6, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata1-slave: type=disk, mode=flat, path=46M.sample, cylinders=940, heads=6, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata2-master: type=disk, mode=flat, path=62M.sample, cylinders=940, heads=8, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata2-slave: type=disk, mode=flat, path=112M.sample, cylinders=900, heads=15, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata3-master: type=disk, mode=flat, path=483M.sample, cylinders=1024, heads=15, spt=63
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ata3-slave: type=cdrom, path=iso.sample, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ata0-master: type=disk, mode=flat, path="30M.sample", cylinders=615, heads=6, spt=17
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ata0-slave: type=cdrom, path=D:, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ata0-slave: type=cdrom, path=/dev/cdrom, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ata0-slave: type=cdrom, path="drive", status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ata0-slave: type=cdrom, path=/dev/rcd0d, status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# BOOT:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines the boot sequence. Now you can specify up to 3 boot drives.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You can either boot from 'floppy', 'disk' or 'cdrom'
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# legacy 'a' and 'c' are also supported
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# boot: floppy
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# boot: disk
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# boot: cdrom
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# boot: c
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# boot: a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# boot: cdrom, floppy, disk
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#boot: floppy
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#boot: disk
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncboot: network, floppy
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# CLOCK:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines the parameters of the clock inside Bochs:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# SYNC:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# TO BE COMPLETED (see Greg explanation in feature request #536329)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# TIME0:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Specifies the start (boot) time of the virtual machine. Use a time
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# value as returned by the time(2) system call. If no time0 value is
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# set or if time0 equal to 1 (special case) or if time0 equal 'local',
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the simulation will be started at the current local host time.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If time0 equal to 2 (special case) or if time0 equal 'utc',
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the simulation will be started at the current utc time.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Syntax:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=[none|slowdown|realtime|both], time0=[timeValue|local|utc]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Example:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=none, time0=local # Now (localtime)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=slowdown, time0=315529200 # Tue Jan 1 00:00:00 1980
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=none, time0=631148400 # Mon Jan 1 00:00:00 1990
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=realtime, time0=938581955 # Wed Sep 29 07:12:35 1999
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=realtime, time0=946681200 # Sat Jan 1 00:00:00 2000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=none, time0=1 # Now (localtime)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# clock: sync=none, time0=utc # Now (utc/gmt)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Default value are sync=none, time0=local
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#clock: sync=none, time0=local
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# FLOPPY_BOOTSIG_CHECK: disabled=[0|1]
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Enables or disables the 0xaa55 signature check on boot floppies
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Defaults to disabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppy_bootsig_check: disabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppy_bootsig_check: disabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#floppy_bootsig_check: disabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncfloppy_bootsig_check: disabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# LOG:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Give the path of the log file you'd like Bochs debug and misc. verbiage
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# to be written to. If you don't use this option or set the filename to
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# '-' the output is written to the console. If you really don't want it,
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# make it "/dev/null" (Unix) or "nul" (win32). :^(
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# log: ./bochs.out
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# log: /dev/tty
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#log: /dev/null
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsynclog: bochsout.txt
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# LOGPREFIX:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This handles the format of the string prepended to each log line.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You may use those special tokens :
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# %t : 11 decimal digits timer tick
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# %i : 8 hexadecimal digits of cpu current eip (ignored in SMP configuration)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# %e : 1 character event type ('i'nfo, 'd'ebug, 'p'anic, 'e'rror)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# %d : 5 characters string of the device, between brackets
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Default : %t%e%d
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# logprefix: %t-%e-@%i-%d
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# logprefix: %i%e%d
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#logprefix: %t%e%d
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# LOG CONTROLS
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Bochs now has four severity levels for event logging.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# panic: cannot proceed. If you choose to continue after a panic,
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# don't be surprised if you get strange behavior or crashes.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# error: something went wrong, but it is probably safe to continue the
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# simulation.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# info: interesting or useful messages.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# debug: messages useful only when debugging the code. This may
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# spit out thousands per second.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# For events of each level, you can choose to crash, report, or ignore.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# TODO: allow choice based on the facility: e.g. crash on panics from
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# everything except the cdrom, and only report those.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If you are experiencing many panics, it can be helpful to change
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the panic action to report instead of fatal. However, be aware
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# that anything executed after a panic is uncharted territory and can
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# cause bochs to become unstable. The panic is a "graceful exit," so
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# if you disable it you may get a spectacular disaster instead.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncpanic: action=ask
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncerror: action=report
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncinfo: action=report
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncdebug: action=ignore
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#pass: action=fatal
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# DEBUGGER_LOG:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Give the path of the log file you'd like Bochs to log debugger output.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If you really don't want it, make it /dev/null or '-'. :^(
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# debugger_log: ./debugger.out
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#debugger_log: /dev/null
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#debugger_log: debugger.out
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncdebugger_log: -
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# COM1, COM2, COM3, COM4:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines a serial port (UART type 16550A). In the 'term' you can specify
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# a device to use as com1. This can be a real serial line, or a pty. To use
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# a pty (under X/Unix), create two windows (xterms, usually). One of them will
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# run bochs, and the other will act as com1. Find out the tty the com1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# window using the `tty' command, and use that as the `dev' parameter.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Then do `sleep 1000000' in the com1 window to keep the shell from
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# messing with things, and run bochs in the other window. Serial I/O to
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# com1 (port 0x3f8) will all go to the other window.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Other serial modes are 'null' (no input/output), 'file' (output to a file
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# specified as the 'dev' parameter), 'raw' (use the real serial port - under
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# construction for win32), 'mouse' (standard serial mouse - requires
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mouse option setting 'type=serial' or 'type=serial_wheel') and 'socket'
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# (connect a networking socket).
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# com1: enabled=1, mode=null
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# com1: enabled=1, mode=mouse
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# com2: enabled=1, mode=file, dev=serial.out
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# com3: enabled=1, mode=raw, dev=com1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# com3: enabled=1, mode=socket, dev=localhost:8888
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#com1: enabled=1, mode=term, dev=/dev/ttyp9
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# PARPORT1, PARPORT2:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines a parallel (printer) port. When turned on and an output file is
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# defined the emulated printer port sends characters printed by the guest OS
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# into the output file. On some platforms a device filename can be used to
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# send the data to the real parallel port (e.g. "/dev/lp0" on Linux, "lpt1" on
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# win32 platforms).
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# parport1: enabled=1, file="parport.out"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# parport2: enabled=1, file="/dev/lp0"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# parport1: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncparport1: enabled=1, file="parport.out"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# SB16:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines the SB16 sound emulation. It can have several of the
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# following properties.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# All properties are in the format sb16: property=value
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# midi: The filename is where the midi data is sent. This can be a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# device or just a file if you want to record the midi data.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# midimode:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 0=no data
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 1=output to device (system dependent. midi denotes the device driver)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 2=SMF file output, including headers
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 3=output the midi data stream to the file (no midi headers and no
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# delta times, just command and data bytes)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# wave: This is the device/file where wave output is stored
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# wavemode:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 0=no data
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 1=output to device (system dependent. wave denotes the device driver)
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 2=VOC file output, incl. headers
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 3=output the raw wave stream to the file
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# log: The file to write the sb16 emulator messages to.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# loglevel:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 0=no log
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 1=resource changes, midi program and bank changes
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 2=severe errors
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 3=all errors
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 4=all errors plus all port accesses
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 5=all errors and port accesses plus a lot of extra info
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# dmatimer:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# microseconds per second for a DMA cycle. Make it smaller to fix
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# non-continuous sound. 750000 is usually a good value. This needs a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# reasonably correct setting for the IPS parameter of the CPU option.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# For an example look at the next line:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#sb16: midimode=1, midi=/dev/midi00, wavemode=1, wave=/dev/dsp, loglevel=2, log=sb16.log, dmatimer=600000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# VGA_UPDATE_INTERVAL:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Video memory is scanned for updates and screen updated every so many
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# virtual seconds. The default is 40000, about 25Hz. Keep in mind that
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# you must tweak the 'cpu: ips=N' directive to be as close to the number
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# of emulated instructions-per-second your workstation can do, for this
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# to be accurate.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# vga_update_interval: 250000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncvga_update_interval: 300000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# using for Winstone '98 tests
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#vga_update_interval: 100000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# KEYBOARD_SERIAL_DELAY:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Approximate time in microseconds that it takes one character to
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# be transfered from the keyboard to controller over the serial path.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# keyboard_serial_delay: 200
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsynckeyboard_serial_delay: 250
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# KEYBOARD_PASTE_DELAY:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Approximate time in microseconds between attempts to paste
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# characters to the keyboard controller. This leaves time for the
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# guest os to deal with the flow of characters. The ideal setting
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# depends on how your operating system processes characters. The
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# default of 100000 usec (.1 seconds) was chosen because it works
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# consistently in Windows.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If your OS is losing characters during a paste, increase the paste
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# delay until it stops losing characters.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# keyboard_paste_delay: 100000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsynckeyboard_paste_delay: 100000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# MOUSE:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This option prevents Bochs from creating mouse "events" unless a mouse
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# is enabled. The hardware emulation itself is not disabled by this.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You can turn the mouse on by setting enabled to 1, or turn it off by
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# setting enabled to 0. Unless you have a particular reason for enabling
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the mouse by default, it is recommended that you leave it off.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# You can also toggle the mouse usage at runtime (control key + middle
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mouse button on X11, SDL, wxWidgets and Win32).
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# With the mouse type option you can select the type of mouse to emulate.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The default value is 'ps2'. The other choices are 'imps2' (wheel mouse
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# on PS/2), 'serial', 'serial_wheel' (one com port requires setting
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 'mode=mouse') and 'usb' (3-button mouse - one of the USB ports must be
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# connected with the 'mouse' device - requires PCI and USB support).
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mouse: enabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mouse: enabled=1, type=imps2
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mouse: enabled=1, type=serial
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mouse: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncmouse: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# private_colormap: Request that the GUI create and use it's own
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# non-shared colormap. This colormap will be used
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# when in the bochs window. If not enabled, a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# shared colormap scheme may be used. Not implemented
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# on all GUI's.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# private_colormap: enabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# private_colormap: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncprivate_colormap: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# fullscreen: ONLY IMPLEMENTED ON AMIGA
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Request that Bochs occupy the entire screen instead of a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# window.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# fullscreen: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# fullscreen: enabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#fullscreen: enabled=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#screenmode: name="sample"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: NE2000 compatible ethernet adapter
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=IOADDR, irq=IRQ, mac=MACADDR, ethmod=MODULE, ethdev=DEVICE, script=SCRIPT
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ioaddr, irq: You probably won't need to change ioaddr and irq, unless there
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# are IRQ conflicts.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# mac: The MAC address MUST NOT match the address of any machine on the net.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Also, the first byte must be an even number (bit 0 set means a multicast
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# address), and you cannot use ff:ff:ff:ff:ff:ff because that's the broadcast
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# address. For the ethertap module, you must use fe:fd:00:00:00:01. There may
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# be other restrictions too. To be safe, just use the b0:c4... address.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ethdev: The ethdev value is the name of the network interface on your host
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# platform. On UNIX machines, you can get the name by running ifconfig. On
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Windows machines, you must run niclist to get the name of the ethdev.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Niclist source code is in misc/niclist.c and it is included in Windows
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# binary releases.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# script: The script value is optional, and is the name of a script that
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# is executed after bochs initialize the network interface. You can use
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# this script to configure this network interface, or enable masquerading.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This is mainly useful for the tun/tap devices that only exist during
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Bochs execution. The network interface name is supplied to the script
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# as first parameter
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If you don't want to make connections to any physical networks,
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# you can use the following 'ethmod's to simulate a virtual network.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# null: All packets are discarded, but logged to a few files.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# arpback: ARP is simulated. Disabled by default.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# vde: Virtual Distributed Ethernet
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# vnet: ARP, ICMP-echo(ping), DHCP and read/write TFTP are simulated.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The virtual host uses 192.168.10.1.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# DHCP assigns 192.168.10.2 to the guest.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# TFTP uses the ethdev value for the root directory and doesn't
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# overwrite files.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=fbsd, ethdev=en0 #macosx
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:00, ethmod=fbsd, ethdev=xl0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:00, ethmod=linux, ethdev=eth0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=win32, ethdev=MYCARD
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=tap, ethdev=tap0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=tuntap, ethdev=/dev/net/tun0, script=./tunconfig
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=null, ethdev=eth0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=vde, ethdev="/tmp/vde.ctl"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=vnet, ethdev="c:/temp"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncpnic: mac=fe:fd:00:00:00:01, ethmod=tuntap, ethdev=/dev/net/tun:tap0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=tuntap, ethdev=/dev/net/tun:tap0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# KEYBOARD_MAPPING:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This enables a remap of a physical localized keyboard to a
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# virtualized us keyboard, as the PC architecture expects.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# If enabled, the keymap file must be specified.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# keyboard_mapping: enabled=1, map=gui/keymaps/x11-pc-de.map
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsynckeyboard_mapping: enabled=0, map=
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# KEYBOARD_TYPE:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Type of keyboard return by a "identify keyboard" command to the
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# keyboard controler. It must be one of "xt", "at" or "mf".
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Defaults to "mf". It should be ok for almost everybody. A known
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# exception is french macs, that do have a "at"-like keyboard.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Examples:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# keyboard_type: mf
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#keyboard_type: mf
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# USER_SHORTCUT:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines the keyboard shortcut to be sent when you press the "user"
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# button in the headerbar. The shortcut string is a combination of maximum
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# 3 key names (listed below) separated with a '-' character. The old-style
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# syntax (without the '-') still works for the key combinations supported
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# in Bochs 2.2.1.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Valid key names:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# "alt", "bksl", "bksp", "ctrl", "del", "down", "end", "enter", "esc",
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# "f1", ... "f12", "home", "ins", "left", "menu", "minus", "pgdwn", "pgup",
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# "plus", "right", "shift", "space", "tab", "up", and "win".
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Example:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# user_shortcut: keys=ctrl-alt-del
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncuser_shortcut: keys=ctrl-alt-del
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# I440FXSUPPORT:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This option controls the presence of the i440FX PCI chipset. You can
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# also specify the devices connected to PCI slots. Up to 5 slots are
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# available now. These devices are currently supported: ne2k, pcivga,
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# pcidev and pcipnic. If Bochs is compiled with Cirrus SVGA support
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# you'll have the additional choice 'cirrus'.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Example:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# i440fxsupport: enabled=1, slot1=pcivga, slot2=ne2k
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsynci440fxsupport: enabled=1, slot1=pcipnic
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#i440fxsupport: enabled=1, slot1=ne2k
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# USB1:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This option controls the presence of the USB root hub which is a part
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# of the i440FX PCI chipset. With the portX option you can connect devices
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# to the hub (currently supported: 'mouse' and 'keypad'). If you connect
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# the mouse to one of the ports and use the mouse option 'type=usb' you'll
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# have a 3-button USB mouse.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Example:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# usb1: enabled=1, port1=mouse, port2=keypad
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#usb1: enabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# CMOSIMAGE:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# This defines image file that can be loaded into the CMOS RAM at startup.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The rtc_init parameter controls whether initialize the RTC with values stored
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# in the image. By default the time0 argument given to the clock option is used.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# With 'rtc_init=image' the image is the source for the initial time.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Example:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# cmosimage: file=cmos.img, rtc_init=image
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#cmosimage: file=cmos.img, rtc_init=time0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# other stuff
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsyncmagic_break: enabled=1
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#load32bitOSImage: os=nullkernel, path=../kernel.img, iolog=../vga_io.log
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#load32bitOSImage: os=linux, path=../linux.img, iolog=../vga_io.log, initrd=../initrd.img
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#text_snapshot_check: enable
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#-------------------------
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# PCI host device mapping
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#-------------------------
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#pcidev: vendor=0x1234, device=0x5678
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# GDBSTUB:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Enable GDB stub. See user documentation for details.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# Default value is enabled=0.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#gdbstub: enabled=0, port=1234, text_base=0, data_base=0, bss_base=0
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# IPS:
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# The IPS directive is DEPRECATED. Use the parameter IPS of the CPU
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# directive instead.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#ips: 10000000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# for Macintosh, use the style of pathnames in the following
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# examples.
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# vgaromimage: :bios:VGABIOS-elpin-2.40
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# romimage: file=:bios:BIOS-bochs-latest, address=0xf0000
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync# floppya: 1_44=[fd:], status=inserted
a734c64bff58bda2fa48c2795453e092167b0ff7vboxsync#=======================================================================