|
|
1.1 ! root 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: #=======================================================================
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.