~ubuntu-branches/ubuntu/trusty/virtualbox-lts-xenial/trusty-proposed

« back to all changes in this revision

Viewing changes to src/VBox/Devices/PC/ipxe/contrib/vm/bochsrc.txt

  • Committer: Package Import Robot
  • Author(s): Gianfranco Costamagna
  • Date: 2016-02-23 14:28:26 UTC
  • Revision ID: package-import@ubuntu.com-20160223142826-bdu69el2z6wa2a44
Tags: upstream-4.3.36-dfsg
ImportĀ upstreamĀ versionĀ 4.3.36-dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# You may now use double quotes around pathnames, in case
 
2
# your pathname includes spaces.
 
3
 
 
4
#=======================================================================
 
5
# CONFIG_INTERFACE
 
6
#
 
7
# The configuration interface is a series of menus or dialog boxes that
 
8
# allows you to change all the settings that control Bochs's behavior.
 
9
# There are two choices of configuration interface: a text mode version
 
10
# called "textconfig" and a graphical version called "wx".  The text
 
11
# mode version uses stdin/stdout and is always compiled in.  The graphical
 
12
# version is only available when you use "--with-wx" on the configure
 
13
# command.  If you do not write a config_interface line, Bochs will
 
14
# choose a default for you.
 
15
#
 
16
# NOTE: if you use the "wx" configuration interface, you must also use
 
17
# the "wx" display library.
 
18
#=======================================================================
 
19
#config_interface: textconfig
 
20
#config_interface: wx
 
21
 
 
22
#=======================================================================
 
23
# DISPLAY_LIBRARY
 
24
#
 
25
# The display library is the code that displays the Bochs VGA screen.  Bochs
 
26
# has a selection of about 10 different display library implementations for
 
27
# different platforms.  If you run configure with multiple --with-* options,
 
28
# the display_library command lets you choose which one you want to run with.
 
29
# If you do not write a display_library line, Bochs will choose a default for
 
30
# you.
 
31
#
 
32
# The choices are:
 
33
#   x              use X windows interface, cross platform
 
34
#   win32          use native win32 libraries
 
35
#   carbon         use Carbon library (for MacOS X)
 
36
#   beos           use native BeOS libraries
 
37
#   macintosh      use MacOS pre-10
 
38
#   amigaos        use native AmigaOS libraries
 
39
#   sdl            use SDL library, cross platform
 
40
#   svga           use SVGALIB library for Linux, allows graphics without X11
 
41
#   term           text only, uses curses/ncurses library, cross platform
 
42
#   rfb            provides an interface to AT&T's VNC viewer, cross platform
 
43
#   wx             use wxWidgets library, cross platform
 
44
#   nogui          no display at all
 
45
#
 
46
# NOTE: if you use the "wx" configuration interface, you must also use
 
47
# the "wx" display library.
 
48
#
 
49
# Specific options:
 
50
# Some display libraries now support specific option to control their
 
51
# behaviour. See the examples below for currently supported options.
 
52
#=======================================================================
 
53
#display_library: amigaos
 
54
#display_library: beos
 
55
#display_library: carbon
 
56
#display_library: macintosh
 
57
#display_library: nogui
 
58
#display_library: rfb, options="timeout=60" # time to wait for client
 
59
#display_library: sdl, options="fullscreen" # startup in fullscreen mode
 
60
#display_library: term
 
61
#display_library: win32, options="legacyF12" # use F12 to toggle mouse
 
62
#display_library: wx
 
63
#display_library: x
 
64
 
 
65
#=======================================================================
 
66
# ROMIMAGE:
 
67
# The ROM BIOS controls what the PC does when it first powers on.
 
68
# Normally, you can use a precompiled BIOS in the source or binary
 
69
# distribution called BIOS-bochs-latest. The ROM BIOS is usually loaded
 
70
# starting at address 0xf0000, and it is exactly 64k long.
 
71
# You can also use the environment variable $BXSHARE to specify the
 
72
# location of the BIOS.
 
73
# The usage of external large BIOS images (up to 512k) at memory top is
 
74
# now supported, but we still recommend to use the BIOS distributed with
 
75
# Bochs. Now the start address can be calculated from image size.
 
76
#=======================================================================
 
77
romimage: file=bochs/bios/BIOS-bochs-latest, address=0xe0000
 
78
#romimage: file=mybios.bin, address=0xfff80000 # 512k at memory top
 
79
#romimage: file=mybios.bin # calculate start address from image size
 
80
 
 
81
#=======================================================================
 
82
# CPU:
 
83
# This defines cpu-related parameters inside Bochs:
 
84
#
 
85
#  COUNT:
 
86
#  Set the number of processors:cores per processor:threads per core
 
87
#  when Bochs is compiled for SMP emulation.
 
88
#  Bochs currently supports up to 8 threads running simultaniosly.
 
89
#  If Bochs is compiled without SMP support, it won't accept values
 
90
#  different from 1.
 
91
#
 
92
#  RESET_ON_TRIPLE_FAULT:
 
93
#  Reset the CPU when triple fault occur (highly recommended) rather than
 
94
#  PANIC. Remember that if you trying to continue after triple fault the
 
95
#  simulation will be completely bogus !
 
96
#
 
97
#  IPS:
 
98
#  Emulated Instructions Per Second.  This is the number of IPS that bochs
 
99
#  is capable of running on your machine. You can recompile Bochs with
 
100
#  --enable-show-ips option enabled, to find your workstation's capability.
 
101
#  Measured IPS value will then be logged into your log file or status bar
 
102
#  (if supported by the gui).
 
103
#
 
104
#  IPS is used to calibrate many time-dependent events within the bochs
 
105
#  simulation.  For example, changing IPS affects the frequency of VGA
 
106
#  updates, the duration of time before a key starts to autorepeat, and
 
107
#  the measurement of BogoMips and other benchmarks.
 
108
#
 
109
#  Examples:
 
110
#  Machine                                         Mips
 
111
# ________________________________________________________________
 
112
#  2.1Ghz Athlon XP with Linux 2.6/g++ 3.4         12 to 15 Mips
 
113
#  1.6Ghz Intel P4 with Win2000/g++ 3.3             5 to  7 Mips
 
114
#  650Mhz Athlon K-7 with Linux 2.4.4/egcs-2.91.66  2 to  2.5 Mips
 
115
#  400Mhz Pentium II with Linux 2.0.36/egcs-1.0.3   1 to  1.8 Mips
 
116
#=======================================================================
 
117
cpu: count=1, ips=10000000, reset_on_triple_fault=1
 
118
 
 
119
#=======================================================================
 
120
# MEGS
 
121
# Set the number of Megabytes of physical memory you want to emulate.
 
122
# The default is 32MB, most OS's won't need more than that.
 
123
# The maximum amount of memory supported is 2048Mb.
 
124
#=======================================================================
 
125
#megs: 256
 
126
#megs: 128
 
127
#megs: 64
 
128
megs: 32
 
129
#megs: 16
 
130
#megs: 8
 
131
 
 
132
#=======================================================================
 
133
# OPTROMIMAGE[1-4]:
 
134
# You may now load up to 4 optional ROM images. Be sure to use a
 
135
# read-only area, typically between C8000 and EFFFF. These optional
 
136
# ROM images should not overwrite the rombios (located at
 
137
# F0000-FFFFF) and the videobios (located at C0000-C7FFF).
 
138
# Those ROM images will be initialized by the bios if they contain
 
139
# the right signature (0x55AA) and a valid checksum.
 
140
# It can also be a convenient way to upload some arbitrary code/data
 
141
# in the simulation, that can be retrieved by the boot loader
 
142
#=======================================================================
 
143
#optromimage1: file=optionalrom.bin, address=0xd0000
 
144
#optromimage2: file=optionalrom.bin, address=0xd1000
 
145
#optromimage3: file=optionalrom.bin, address=0xd2000
 
146
#optromimage4: file=optionalrom.bin, address=0xd3000
 
147
optromimage1: file=../../src/bin/pnic.rom, address=0xd0000
 
148
#optromimage1: file=../../src/bin/rtl8029.rom, address=0xd0000
 
149
 
 
150
#optramimage1: file=/path/file1.img, address=0x0010000
 
151
#optramimage2: file=/path/file2.img, address=0x0020000
 
152
#optramimage3: file=/path/file3.img, address=0x0030000
 
153
#optramimage4: file=/path/file4.img, address=0x0040000
 
154
 
 
155
#=======================================================================
 
156
# VGAROMIMAGE
 
157
# You now need to load a VGA ROM BIOS into C0000.
 
158
#=======================================================================
 
159
#vgaromimage: file=bios/VGABIOS-elpin-2.40
 
160
vgaromimage: file=bochs/bios/VGABIOS-lgpl-latest
 
161
#vgaromimage: file=bios/VGABIOS-lgpl-latest-cirrus
 
162
 
 
163
#=======================================================================
 
164
# VGA:
 
165
# Here you can specify the display extension to be used. With the value
 
166
# 'none' you can use standard VGA with no extension. Other supported
 
167
# values are 'vbe' for Bochs VBE and 'cirrus' for Cirrus SVGA support.
 
168
#=======================================================================
 
169
#vga: extension=cirrus
 
170
#vga: extension=vbe
 
171
vga: extension=none
 
172
 
 
173
#=======================================================================
 
174
# FLOPPYA:
 
175
# Point this to pathname of floppy image file or device
 
176
# This should be of a bootable floppy(image/device) if you're
 
177
# booting from 'a' (or 'floppy').
 
178
#
 
179
# You can set the initial status of the media to 'ejected' or 'inserted'.
 
180
#   floppya: 2_88=path, status=ejected             (2.88M 3.5" floppy)
 
181
#   floppya: 1_44=path, status=inserted            (1.44M 3.5" floppy)
 
182
#   floppya: 1_2=path, status=ejected              (1.2M  5.25" floppy)
 
183
#   floppya: 720k=path, status=inserted            (720K  3.5" floppy)
 
184
#   floppya: 360k=path, status=inserted            (360K  5.25" floppy)
 
185
#   floppya: 320k=path, status=inserted            (320K  5.25" floppy)
 
186
#   floppya: 180k=path, status=inserted            (180K  5.25" floppy)
 
187
#   floppya: 160k=path, status=inserted            (160K  5.25" floppy)
 
188
#   floppya: image=path, status=inserted           (guess type from image size)
 
189
#
 
190
# The path should be the name of a disk image file.  On Unix, you can use a raw
 
191
# device name such as /dev/fd0 on Linux.  On win32 platforms, use drive letters
 
192
# such as a: or b: as the path.  The parameter 'image' works with image files
 
193
# only. In that case the size must match one of the supported types.
 
194
#=======================================================================
 
195
#floppya: 1_44=/dev/fd0, status=inserted
 
196
#floppya: image=../1.44, status=inserted
 
197
#floppya: 1_44=/dev/fd0H1440, status=inserted
 
198
#floppya: 1_2=../1_2, status=inserted
 
199
#floppya: 1_44=a:, status=inserted
 
200
#floppya: 1_44=a.img, status=inserted
 
201
#floppya: 1_44=/dev/rfd0a, status=inserted
 
202
floppya: 1_44=../../src/bin/pnic.dsk, status=inserted
 
203
 
 
204
#=======================================================================
 
205
# FLOPPYB:
 
206
# See FLOPPYA above for syntax
 
207
#=======================================================================
 
208
#floppyb: 1_44=b:, status=inserted
 
209
floppyb: 1_44=b.img, status=inserted
 
210
 
 
211
#=======================================================================
 
212
# ATA0, ATA1, ATA2, ATA3
 
213
# ATA controller for hard disks and cdroms
 
214
#
 
215
# ata[0-3]: enabled=[0|1], ioaddr1=addr, ioaddr2=addr, irq=number
 
216
#
 
217
# These options enables up to 4 ata channels. For each channel
 
218
# the two base io addresses and the irq must be specified.
 
219
#
 
220
# ata0 and ata1 are enabled by default with the values shown below
 
221
#
 
222
# Examples:
 
223
#   ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
 
224
#   ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
 
225
#   ata2: enabled=1, ioaddr1=0x1e8, ioaddr2=0x3e0, irq=11
 
226
#   ata3: enabled=1, ioaddr1=0x168, ioaddr2=0x360, irq=9
 
227
#=======================================================================
 
228
ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
 
229
ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
 
230
ata2: enabled=0, ioaddr1=0x1e8, ioaddr2=0x3e0, irq=11
 
231
ata3: enabled=0, ioaddr1=0x168, ioaddr2=0x360, irq=9
 
232
 
 
233
#=======================================================================
 
234
# ATA[0-3]-MASTER, ATA[0-3]-SLAVE
 
235
#
 
236
# This defines the type and characteristics of all attached ata devices:
 
237
#   type=       type of attached device [disk|cdrom]
 
238
#   mode=       only valid for disks [flat|concat|external|dll|sparse|vmware3]
 
239
#   mode=       only valid for disks [undoable|growing|volatile]
 
240
#   path=       path of the image
 
241
#   cylinders=  only valid for disks
 
242
#   heads=      only valid for disks
 
243
#   spt=        only valid for disks
 
244
#   status=     only valid for cdroms [inserted|ejected]
 
245
#   biosdetect= type of biosdetection [none|auto], only for disks on ata0 [cmos]
 
246
#   translation=type of translation of the bios, only for disks [none|lba|large|rechs|auto]
 
247
#   model=      string returned by identify device command
 
248
#   journal=    optional filename of the redolog for undoable and volatile disks
 
249
#
 
250
# Point this at a hard disk image file, cdrom iso file, or physical cdrom
 
251
# device.  To create a hard disk image, try running bximage.  It will help you
 
252
# choose the size and then suggest a line that works with it.
 
253
#
 
254
# In UNIX it may be possible to use a raw device as a Bochs hard disk,
 
255
# but WE DON'T RECOMMEND IT.  In Windows there is no easy way.
 
256
#
 
257
# In windows, the drive letter + colon notation should be used for cdroms.
 
258
# Depending on versions of windows and drivers, you may only be able to
 
259
# access the "first" cdrom in the system.  On MacOSX, use path="drive"
 
260
# to access the physical drive.
 
261
#
 
262
# The path is always mandatory. For flat hard disk images created with
 
263
# bximage geometry autodetection can be used (cylinders=0 -> cylinders are
 
264
# calculated using heads=16 and spt=63). For other hard disk images and modes
 
265
# the cylinders, heads, and spt are mandatory.
 
266
#
 
267
# Default values are:
 
268
#   mode=flat, biosdetect=auto, translation=auto, model="Generic 1234"
 
269
#
 
270
# The biosdetect option has currently no effect on the bios
 
271
#
 
272
# Examples:
 
273
#   ata0-master: type=disk, mode=flat, path=10M.sample, cylinders=306, heads=4, spt=17
 
274
#   ata0-slave:  type=disk, mode=flat, path=20M.sample, cylinders=615, heads=4, spt=17
 
275
#   ata1-master: type=disk, mode=flat, path=30M.sample, cylinders=615, heads=6, spt=17
 
276
#   ata1-slave:  type=disk, mode=flat, path=46M.sample, cylinders=940, heads=6, spt=17
 
277
#   ata2-master: type=disk, mode=flat, path=62M.sample, cylinders=940, heads=8, spt=17
 
278
#   ata2-slave:  type=disk, mode=flat, path=112M.sample, cylinders=900, heads=15, spt=17
 
279
#   ata3-master: type=disk, mode=flat, path=483M.sample, cylinders=1024, heads=15, spt=63
 
280
#   ata3-slave:  type=cdrom, path=iso.sample, status=inserted
 
281
#=======================================================================
 
282
#ata0-master: type=disk, mode=flat, path="30M.sample", cylinders=615, heads=6, spt=17
 
283
#ata0-slave: type=cdrom, path=D:, status=inserted
 
284
#ata0-slave: type=cdrom, path=/dev/cdrom, status=inserted
 
285
#ata0-slave: type=cdrom, path="drive", status=inserted
 
286
#ata0-slave: type=cdrom, path=/dev/rcd0d, status=inserted
 
287
 
 
288
#=======================================================================
 
289
# BOOT:
 
290
# This defines the boot sequence. Now you can specify up to 3 boot drives.
 
291
# You can either boot from 'floppy', 'disk' or 'cdrom'
 
292
# legacy 'a' and 'c' are also supported
 
293
# Examples:
 
294
#   boot: floppy
 
295
#   boot: disk
 
296
#   boot: cdrom
 
297
#   boot: c
 
298
#   boot: a
 
299
#   boot: cdrom, floppy, disk
 
300
#=======================================================================
 
301
#boot: floppy
 
302
#boot: disk
 
303
boot: network, floppy
 
304
 
 
305
#=======================================================================
 
306
# CLOCK:
 
307
# This defines the parameters of the clock inside Bochs:
 
308
#
 
309
#  SYNC:
 
310
#  TO BE COMPLETED (see Greg explanation in feature request #536329)
 
311
#
 
312
#  TIME0:
 
313
#  Specifies the start (boot) time of the virtual machine. Use a time
 
314
#  value as returned by the time(2) system call. If no time0 value is
 
315
#  set or if time0 equal to 1 (special case) or if time0 equal 'local',
 
316
#  the simulation will be started at the current local host time.
 
317
#  If time0 equal to 2 (special case) or if time0 equal 'utc',
 
318
#  the simulation will be started at the current utc time.
 
319
#
 
320
# Syntax:
 
321
#  clock: sync=[none|slowdown|realtime|both], time0=[timeValue|local|utc]
 
322
#
 
323
# Example:
 
324
#   clock: sync=none,     time0=local       # Now (localtime)
 
325
#   clock: sync=slowdown, time0=315529200   # Tue Jan  1 00:00:00 1980
 
326
#   clock: sync=none,     time0=631148400   # Mon Jan  1 00:00:00 1990
 
327
#   clock: sync=realtime, time0=938581955   # Wed Sep 29 07:12:35 1999
 
328
#   clock: sync=realtime, time0=946681200   # Sat Jan  1 00:00:00 2000
 
329
#   clock: sync=none,     time0=1           # Now (localtime)
 
330
#   clock: sync=none,     time0=utc         # Now (utc/gmt)
 
331
#
 
332
# Default value are sync=none, time0=local
 
333
#=======================================================================
 
334
#clock: sync=none, time0=local
 
335
 
 
336
 
 
337
#=======================================================================
 
338
# FLOPPY_BOOTSIG_CHECK: disabled=[0|1]
 
339
# Enables or disables the 0xaa55 signature check on boot floppies
 
340
# Defaults to disabled=0
 
341
# Examples:
 
342
#   floppy_bootsig_check: disabled=0
 
343
#   floppy_bootsig_check: disabled=1
 
344
#=======================================================================
 
345
#floppy_bootsig_check: disabled=1
 
346
floppy_bootsig_check: disabled=0
 
347
 
 
348
#=======================================================================
 
349
# LOG:
 
350
# Give the path of the log file you'd like Bochs debug and misc. verbiage
 
351
# to be written to. If you don't use this option or set the filename to
 
352
# '-' the output is written to the console. If you really don't want it,
 
353
# make it "/dev/null" (Unix) or "nul" (win32). :^(
 
354
#
 
355
# Examples:
 
356
#   log: ./bochs.out
 
357
#   log: /dev/tty
 
358
#=======================================================================
 
359
#log: /dev/null
 
360
log: bochsout.txt
 
361
 
 
362
#=======================================================================
 
363
# LOGPREFIX:
 
364
# This handles the format of the string prepended to each log line.
 
365
# You may use those special tokens :
 
366
#   %t : 11 decimal digits timer tick
 
367
#   %i : 8 hexadecimal digits of cpu current eip (ignored in SMP configuration)
 
368
#   %e : 1 character event type ('i'nfo, 'd'ebug, 'p'anic, 'e'rror)
 
369
#   %d : 5 characters string of the device, between brackets
 
370
#
 
371
# Default : %t%e%d
 
372
# Examples:
 
373
#   logprefix: %t-%e-@%i-%d
 
374
#   logprefix: %i%e%d
 
375
#=======================================================================
 
376
#logprefix: %t%e%d
 
377
 
 
378
#=======================================================================
 
379
# LOG CONTROLS
 
380
#
 
381
# Bochs now has four severity levels for event logging.
 
382
#   panic: cannot proceed.  If you choose to continue after a panic,
 
383
#          don't be surprised if you get strange behavior or crashes.
 
384
#   error: something went wrong, but it is probably safe to continue the
 
385
#          simulation.
 
386
#   info: interesting or useful messages.
 
387
#   debug: messages useful only when debugging the code.  This may
 
388
#          spit out thousands per second.
 
389
#
 
390
# For events of each level, you can choose to crash, report, or ignore.
 
391
# TODO: allow choice based on the facility: e.g. crash on panics from
 
392
#       everything except the cdrom, and only report those.
 
393
#
 
394
# If you are experiencing many panics, it can be helpful to change
 
395
# the panic action to report instead of fatal.  However, be aware
 
396
# that anything executed after a panic is uncharted territory and can
 
397
# cause bochs to become unstable.  The panic is a "graceful exit," so
 
398
# if you disable it you may get a spectacular disaster instead.
 
399
#=======================================================================
 
400
panic: action=ask
 
401
error: action=report
 
402
info: action=report
 
403
debug: action=ignore
 
404
#pass: action=fatal
 
405
 
 
406
#=======================================================================
 
407
# DEBUGGER_LOG:
 
408
# Give the path of the log file you'd like Bochs to log debugger output.
 
409
# If you really don't want it, make it /dev/null or '-'. :^(
 
410
#
 
411
# Examples:
 
412
#   debugger_log: ./debugger.out
 
413
#=======================================================================
 
414
#debugger_log: /dev/null
 
415
#debugger_log: debugger.out
 
416
debugger_log: -
 
417
 
 
418
#=======================================================================
 
419
# COM1, COM2, COM3, COM4:
 
420
# This defines a serial port (UART type 16550A). In the 'term' you can specify
 
421
# a device to use as com1. This can be a real serial line, or a pty.  To use
 
422
# a pty (under X/Unix), create two windows (xterms, usually).  One of them will
 
423
# run bochs, and the other will act as com1. Find out the tty the com1
 
424
# window using the `tty' command, and use that as the `dev' parameter.
 
425
# Then do `sleep 1000000' in the com1 window to keep the shell from
 
426
# messing with things, and run bochs in the other window.  Serial I/O to
 
427
# com1 (port 0x3f8) will all go to the other window.
 
428
# Other serial modes are 'null' (no input/output), 'file' (output to a file
 
429
# specified as the 'dev' parameter), 'raw' (use the real serial port - under
 
430
# construction for win32), 'mouse' (standard serial mouse - requires
 
431
# mouse option setting 'type=serial' or 'type=serial_wheel') and 'socket'
 
432
# (connect a networking socket).
 
433
#
 
434
# Examples:
 
435
#   com1: enabled=1, mode=null
 
436
#   com1: enabled=1, mode=mouse
 
437
#   com2: enabled=1, mode=file, dev=serial.out
 
438
#   com3: enabled=1, mode=raw, dev=com1
 
439
#   com3: enabled=1, mode=socket, dev=localhost:8888
 
440
#=======================================================================
 
441
#com1: enabled=1, mode=term, dev=/dev/ttyp9
 
442
 
 
443
 
 
444
#=======================================================================
 
445
# PARPORT1, PARPORT2:
 
446
# This defines a parallel (printer) port. When turned on and an output file is
 
447
# defined the emulated printer port sends characters printed by the guest OS
 
448
# into the output file. On some platforms a device filename can be used to
 
449
# send the data to the real parallel port (e.g. "/dev/lp0" on Linux, "lpt1" on
 
450
# win32 platforms).
 
451
#
 
452
# Examples:
 
453
#   parport1: enabled=1, file="parport.out"
 
454
#   parport2: enabled=1, file="/dev/lp0"
 
455
#   parport1: enabled=0
 
456
#=======================================================================
 
457
parport1: enabled=1, file="parport.out"
 
458
 
 
459
#=======================================================================
 
460
# SB16:
 
461
# This defines the SB16 sound emulation. It can have several of the
 
462
# following properties.
 
463
# All properties are in the format sb16: property=value
 
464
# midi: The filename is where the midi data is sent. This can be a
 
465
#       device or just a file if you want to record the midi data.
 
466
# midimode:
 
467
#      0=no data
 
468
#      1=output to device (system dependent. midi denotes the device driver)
 
469
#      2=SMF file output, including headers
 
470
#      3=output the midi data stream to the file (no midi headers and no
 
471
#        delta times, just command and data bytes)
 
472
# wave: This is the device/file where wave output is stored
 
473
# wavemode:
 
474
#      0=no data
 
475
#      1=output to device (system dependent. wave denotes the device driver)
 
476
#      2=VOC file output, incl. headers
 
477
#      3=output the raw wave stream to the file
 
478
# log:  The file to write the sb16 emulator messages to.
 
479
# loglevel:
 
480
#      0=no log
 
481
#      1=resource changes, midi program and bank changes
 
482
#      2=severe errors
 
483
#      3=all errors
 
484
#      4=all errors plus all port accesses
 
485
#      5=all errors and port accesses plus a lot of extra info
 
486
# dmatimer:
 
487
#      microseconds per second for a DMA cycle.  Make it smaller to fix
 
488
#      non-continuous sound.  750000 is usually a good value.  This needs a
 
489
#      reasonably correct setting for the IPS parameter of the CPU option.
 
490
#
 
491
# For an example look at the next line:
 
492
#=======================================================================
 
493
 
 
494
#sb16: midimode=1, midi=/dev/midi00, wavemode=1, wave=/dev/dsp, loglevel=2, log=sb16.log, dmatimer=600000
 
495
 
 
496
#=======================================================================
 
497
# VGA_UPDATE_INTERVAL:
 
498
# Video memory is scanned for updates and screen updated every so many
 
499
# virtual seconds.  The default is 40000, about 25Hz. Keep in mind that
 
500
# you must tweak the 'cpu: ips=N' directive to be as close to the number
 
501
# of emulated instructions-per-second your workstation can do, for this
 
502
# to be accurate.
 
503
#
 
504
# Examples:
 
505
#   vga_update_interval: 250000
 
506
#=======================================================================
 
507
vga_update_interval: 300000
 
508
 
 
509
# using for Winstone '98 tests
 
510
#vga_update_interval:  100000
 
511
 
 
512
#=======================================================================
 
513
# KEYBOARD_SERIAL_DELAY:
 
514
# Approximate time in microseconds that it takes one character to
 
515
# be transfered from the keyboard to controller over the serial path.
 
516
# Examples:
 
517
#   keyboard_serial_delay: 200
 
518
#=======================================================================
 
519
keyboard_serial_delay: 250
 
520
 
 
521
#=======================================================================
 
522
# KEYBOARD_PASTE_DELAY:
 
523
# Approximate time in microseconds between attempts to paste
 
524
# characters to the keyboard controller. This leaves time for the
 
525
# guest os to deal with the flow of characters.  The ideal setting
 
526
# depends on how your operating system processes characters.  The
 
527
# default of 100000 usec (.1 seconds) was chosen because it works
 
528
# consistently in Windows.
 
529
#
 
530
# If your OS is losing characters during a paste, increase the paste
 
531
# delay until it stops losing characters.
 
532
#
 
533
# Examples:
 
534
#   keyboard_paste_delay: 100000
 
535
#=======================================================================
 
536
keyboard_paste_delay: 100000
 
537
 
 
538
#=======================================================================
 
539
# MOUSE:
 
540
# This option prevents Bochs from creating mouse "events" unless a mouse
 
541
# is  enabled. The hardware emulation itself is not disabled by this.
 
542
# You can turn the mouse on by setting enabled to 1, or turn it off by
 
543
# setting enabled to 0. Unless you have a particular reason for enabling
 
544
# the mouse by default, it is recommended that you leave it off.
 
545
# You can also toggle the mouse usage at runtime (control key + middle
 
546
# mouse button on X11, SDL, wxWidgets and Win32).
 
547
# With the mouse type option you can select the type of mouse to emulate.
 
548
# The default value is 'ps2'. The other choices are 'imps2' (wheel mouse
 
549
# on PS/2), 'serial', 'serial_wheel' (one com port requires setting
 
550
# 'mode=mouse') and 'usb' (3-button mouse - one of the USB ports must be
 
551
# connected with the 'mouse' device - requires PCI and USB support).
 
552
#
 
553
# Examples:
 
554
#   mouse: enabled=1
 
555
#   mouse: enabled=1, type=imps2
 
556
#   mouse: enabled=1, type=serial
 
557
#   mouse: enabled=0
 
558
#=======================================================================
 
559
mouse: enabled=0
 
560
 
 
561
#=======================================================================
 
562
# private_colormap: Request that the GUI create and use it's own
 
563
#                   non-shared colormap.  This colormap will be used
 
564
#                   when in the bochs window.  If not enabled, a
 
565
#                   shared colormap scheme may be used.  Not implemented
 
566
#                   on all GUI's.
 
567
#
 
568
# Examples:
 
569
#   private_colormap: enabled=1
 
570
#   private_colormap: enabled=0
 
571
#=======================================================================
 
572
private_colormap: enabled=0
 
573
 
 
574
#=======================================================================
 
575
# fullscreen: ONLY IMPLEMENTED ON AMIGA
 
576
#             Request that Bochs occupy the entire screen instead of a
 
577
#             window.
 
578
#
 
579
# Examples:
 
580
#   fullscreen: enabled=0
 
581
#   fullscreen: enabled=1
 
582
#=======================================================================
 
583
#fullscreen: enabled=0
 
584
#screenmode: name="sample"
 
585
 
 
586
#=======================================================================
 
587
# ne2k: NE2000 compatible ethernet adapter
 
588
#
 
589
# Examples:
 
590
# ne2k: ioaddr=IOADDR, irq=IRQ, mac=MACADDR, ethmod=MODULE, ethdev=DEVICE, script=SCRIPT
 
591
#
 
592
# ioaddr, irq: You probably won't need to change ioaddr and irq, unless there
 
593
# are IRQ conflicts.
 
594
#
 
595
# mac: The MAC address MUST NOT match the address of any machine on the net.
 
596
# Also, the first byte must be an even number (bit 0 set means a multicast
 
597
# address), and you cannot use ff:ff:ff:ff:ff:ff because that's the broadcast
 
598
# address.  For the ethertap module, you must use fe:fd:00:00:00:01.  There may
 
599
# be other restrictions too.  To be safe, just use the b0:c4... address.
 
600
#
 
601
# ethdev: The ethdev value is the name of the network interface on your host
 
602
# platform.  On UNIX machines, you can get the name by running ifconfig.  On
 
603
# Windows machines, you must run niclist to get the name of the ethdev.
 
604
# Niclist source code is in misc/niclist.c and it is included in Windows
 
605
# binary releases.
 
606
#
 
607
# script: The script value is optional, and is the name of a script that
 
608
# is executed after bochs initialize the network interface. You can use
 
609
# this script to configure this network interface, or enable masquerading.
 
610
# This is mainly useful for the tun/tap devices that only exist during
 
611
# Bochs execution. The network interface name is supplied to the script
 
612
# as first parameter
 
613
#
 
614
# If you don't want to make connections to any physical networks,
 
615
# you can use the following 'ethmod's to simulate a virtual network.
 
616
#   null: All packets are discarded, but logged to a few files.
 
617
#   arpback: ARP is simulated. Disabled by default.
 
618
#   vde:  Virtual Distributed Ethernet
 
619
#   vnet: ARP, ICMP-echo(ping), DHCP and read/write TFTP are simulated.
 
620
#         The virtual host uses 192.168.10.1.
 
621
#         DHCP assigns 192.168.10.2 to the guest.
 
622
#         TFTP uses the ethdev value for the root directory and doesn't
 
623
#         overwrite files.
 
624
#
 
625
#=======================================================================
 
626
# ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=fbsd, ethdev=en0 #macosx
 
627
# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:00, ethmod=fbsd, ethdev=xl0
 
628
# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:00, ethmod=linux, ethdev=eth0
 
629
# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=win32, ethdev=MYCARD
 
630
# ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=tap, ethdev=tap0
 
631
# ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=tuntap, ethdev=/dev/net/tun0, script=./tunconfig
 
632
# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=null, ethdev=eth0
 
633
# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=vde, ethdev="/tmp/vde.ctl"
 
634
# ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:01, ethmod=vnet, ethdev="c:/temp"
 
635
pnic: mac=fe:fd:00:00:00:01, ethmod=tuntap, ethdev=/dev/net/tun:tap0
 
636
#ne2k: ioaddr=0x240, irq=9, mac=fe:fd:00:00:00:01, ethmod=tuntap, ethdev=/dev/net/tun:tap0
 
637
 
 
638
#=======================================================================
 
639
# KEYBOARD_MAPPING:
 
640
# This enables a remap of a physical localized keyboard to a
 
641
# virtualized us keyboard, as the PC architecture expects.
 
642
# If enabled, the keymap file must be specified.
 
643
#
 
644
# Examples:
 
645
#   keyboard_mapping: enabled=1, map=gui/keymaps/x11-pc-de.map
 
646
#=======================================================================
 
647
keyboard_mapping: enabled=0, map=
 
648
 
 
649
#=======================================================================
 
650
# KEYBOARD_TYPE:
 
651
# Type of keyboard return by a "identify keyboard" command to the
 
652
# keyboard controler. It must be one of "xt", "at" or "mf".
 
653
# Defaults to "mf". It should be ok for almost everybody. A known
 
654
# exception is french macs, that do have a "at"-like keyboard.
 
655
#
 
656
# Examples:
 
657
#   keyboard_type: mf
 
658
#=======================================================================
 
659
#keyboard_type: mf
 
660
 
 
661
#=======================================================================
 
662
# USER_SHORTCUT:
 
663
# This defines the keyboard shortcut to be sent when you press the "user"
 
664
# button in the headerbar. The shortcut string is a combination of maximum
 
665
# 3 key names (listed below) separated with a '-' character. The old-style
 
666
# syntax (without the '-') still works for the key combinations supported
 
667
# in Bochs 2.2.1.
 
668
# Valid key names:
 
669
# "alt", "bksl", "bksp", "ctrl", "del", "down", "end", "enter", "esc",
 
670
# "f1", ... "f12", "home", "ins", "left", "menu", "minus", "pgdwn", "pgup",
 
671
# "plus", "right", "shift", "space", "tab", "up", and "win".
 
672
#
 
673
# Example:
 
674
#   user_shortcut: keys=ctrl-alt-del
 
675
#=======================================================================
 
676
user_shortcut: keys=ctrl-alt-del
 
677
 
 
678
#=======================================================================
 
679
# I440FXSUPPORT:
 
680
# This option controls the presence of the i440FX PCI chipset. You can
 
681
# also specify the devices connected to PCI slots. Up to 5 slots are
 
682
# available now. These devices are currently supported: ne2k, pcivga,
 
683
# pcidev and pcipnic. If Bochs is compiled with Cirrus SVGA support
 
684
# you'll have the additional choice 'cirrus'.
 
685
#
 
686
# Example:
 
687
#   i440fxsupport: enabled=1, slot1=pcivga, slot2=ne2k
 
688
#=======================================================================
 
689
i440fxsupport: enabled=1, slot1=pcipnic
 
690
#i440fxsupport: enabled=1, slot1=ne2k
 
691
 
 
692
#=======================================================================
 
693
# USB1:
 
694
# This option controls the presence of the USB root hub which is a part
 
695
# of the i440FX PCI chipset. With the portX option you can connect devices
 
696
# to the hub (currently supported: 'mouse' and 'keypad'). If you connect
 
697
# the mouse to one of the ports and use the mouse option 'type=usb' you'll
 
698
# have a 3-button USB mouse.
 
699
#
 
700
# Example:
 
701
#   usb1: enabled=1, port1=mouse, port2=keypad
 
702
#=======================================================================
 
703
#usb1: enabled=1
 
704
 
 
705
#=======================================================================
 
706
# CMOSIMAGE:
 
707
# This defines image file that can be loaded into the CMOS RAM at startup.
 
708
# The rtc_init parameter controls whether initialize the RTC with values stored
 
709
# in the image. By default the time0 argument given to the clock option is used.
 
710
# With 'rtc_init=image' the image is the source for the initial time.
 
711
#
 
712
# Example:
 
713
#   cmosimage: file=cmos.img, rtc_init=image
 
714
#=======================================================================
 
715
#cmosimage: file=cmos.img, rtc_init=time0
 
716
 
 
717
#=======================================================================
 
718
# other stuff
 
719
#=======================================================================
 
720
magic_break: enabled=1
 
721
#load32bitOSImage: os=nullkernel, path=../kernel.img, iolog=../vga_io.log
 
722
#load32bitOSImage: os=linux, path=../linux.img, iolog=../vga_io.log, initrd=../initrd.img
 
723
#text_snapshot_check: enable
 
724
 
 
725
#-------------------------
 
726
# PCI host device mapping
 
727
#-------------------------
 
728
#pcidev: vendor=0x1234, device=0x5678
 
729
 
 
730
#=======================================================================
 
731
# GDBSTUB:
 
732
# Enable GDB stub. See user documentation for details.
 
733
# Default value is enabled=0.
 
734
#=======================================================================
 
735
#gdbstub: enabled=0, port=1234, text_base=0, data_base=0, bss_base=0
 
736
 
 
737
#=======================================================================
 
738
# IPS:
 
739
# The IPS directive is DEPRECATED. Use the parameter IPS of the CPU
 
740
# directive instead.
 
741
#=======================================================================
 
742
#ips: 10000000
 
743
 
 
744
#=======================================================================
 
745
# for Macintosh, use the style of pathnames in the following
 
746
# examples.
 
747
#
 
748
# vgaromimage: :bios:VGABIOS-elpin-2.40
 
749
# romimage: file=:bios:BIOS-bochs-latest, address=0xf0000
 
750
# floppya: 1_44=[fd:], status=inserted
 
751
#=======================================================================