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 | #=======================================================================
|
---|