Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


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