joncampbell123 / dosbox-x

DOSBox-X fork of the DOSBox project
GNU General Public License v2.0
2.65k stars 376 forks source link

[Experimenting] Linux within DosBox-X within Linux #449

Open Metalhead33 opened 6 years ago

Metalhead33 commented 6 years ago

Not sure if Dosbox-X ever intends to allow DosBox to boot into any system other than MS-DOS and Windows 9x, but I did some experimentation with attempting to boot Linux within DosBox, believe it or not.

Without further ado, I present the results:

slackware.conf

# This is the configuration file for DOSBox SVN-Daum. (Please use the latest version of DOSBox)
# Lines starting with a # are comment lines and are ignored by DOSBox.
# They are used to (briefly) document the effect of each option.

[sdl]
#       fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back)
#       fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox.
#   fullresolution: What resolution to use for fullscreen: original, desktop or a fixed size (e.g. 1024x768).
#                     Using your monitor's native resolution with aspect=true might give the best results.
#                     If you end up with small window on a large screen, try an output different from surface.
# windowresolution: Scale the window to this size IF the output device supports hardware scaling.
#                     (output=surface does not!)
#           output: What video system to use for output.
#                   Possible values: surface, overlay, opengl, openglnb, openglhq.
#         autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock)
#      sensitivity: Mouse sensitivity.
#      waitonerror: Wait before closing the console if dosbox has an error.
#         priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized.
#                     pause is only valid for the second entry.
#                   Possible values: lowest, lower, normal, higher, highest, pause.
#       mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the default value.
#     usescancodes: Avoid usage of symkeys, might not work on all operating systems.
#         overscan: Width of overscan border (0 to 10). (works only if output=surface)
fullscreen=false
fulldouble=true
fullresolution=desktop
windowresolution=original
output=opengl
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper-SVN-Daum.map
usescancodes=false
overscan=0

[log]
#     logfile: file where the log messages will be saved to
#         vga: Enable/Disable logging of this type.
#      vgagfx: Enable/Disable logging of this type.
#     vgamisc: Enable/Disable logging of this type.
#       int10: Enable/Disable logging of this type.
#    sblaster: Enable/Disable logging of this type.
# dma_control: Enable/Disable logging of this type.
#         fpu: Enable/Disable logging of this type.
#         cpu: Enable/Disable logging of this type.
#      paging: Enable/Disable logging of this type.
#         fcb: Enable/Disable logging of this type.
#       files: Enable/Disable logging of this type.
#       ioctl: Enable/Disable logging of this type.
#        exec: Enable/Disable logging of this type.
#     dosmisc: Enable/Disable logging of this type.
#         pit: Enable/Disable logging of this type.
#    keyboard: Enable/Disable logging of this type.
#         pic: Enable/Disable logging of this type.
#       mouse: Enable/Disable logging of this type.
#        bios: Enable/Disable logging of this type.
#         gui: Enable/Disable logging of this type.
#        misc: Enable/Disable logging of this type.
#          io: Enable/Disable logging of this type.
#         pci: Enable/Disable logging of this type.
#         sst: Enable/Disable logging of this type.
logfile=
vga=true
vgagfx=true
vgamisc=true
int10=true
sblaster=true
dma_control=true
fpu=true
cpu=true
paging=true
fcb=true
files=true
ioctl=true
exec=true
dosmisc=true
pit=true
keyboard=true
pic=true
mouse=true
bios=true
gui=true
misc=true
io=true
pci=true
sst=true

[dosbox]
#                                          language: Select another language file.
#                                           machine: The type of machine DOSBox tries to emulate.
#                                                    Possible values: hercules, cga, cga_mono, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe, amstrad.
#                                          vmemsize: Amount of video memory in megabytes.
#                                                      The maximum resolution and color depth the svga_s3 will be able to display
#                                                      is determined by this value.
#                                                       0: 512k (800x600  at 256 colors)
#                                                      1: 1024x768  at 256 colors or 800x600  at 64k colors
#                                                      2: 1600x1200 at 256 colors or 1024x768 at 64k colors or 640x480 at 16M colors
#                                                      4: 1600x1200 at 64k colors or 1024x768 at 16M colors
#                                                      8: up to 1600x1200 at 16M colors
#                                                    For build engine games, use more memory than in the list above so it can
#                                                    use triple buffering and thus won't flicker.
#                                                    
#                                        vmemsizekb: Amount of video memory in kilobytes, in addition to vmemsize
#                                          captures: Directory where things like wave, midi, screenshot get captured.
#                       mainline compatible mapping: If set, arrange private areas, UMBs, and DOS kernel structures by default in the same way the mainline branch would do it.
#                                                    If cleared, these areas are allocated dynamically which may improve available memory and emulation accuracy.
#                                                    If your DOS game breaks under DOSBox-X but works with mainline DOSBox setting this option may help.
#                  mainline compatible bios mapping: If set, arrange the BIOS area in the same way that the mainline branch would do it.
#                                                    If cleared, these areas are allocated dynamically which may improve available memory and emulation accuracy.
#                                                    If your DOS game breaks under DOSBox-X but works with mainline DOSBox setting this option may help.
#                                adapter rom is ram: Map adapter ROM as RAM (mainline DOSBox 0.74 behavior). When clear, unused adapter ROM is mapped out
#                            shell environment size: Size of the DOSBox shell environment block, in bytes
#                                 private area size: Set DOSBox-X private memory area size. This area contains private memory structures used by the DOS kernel.
#                                                    It is discarded when you boot into another OS. Mainline DOSBox uses 32KB. Testing shows that it is possible
#                                                    to run DOSBox with as little as 4KB. If DOSBox-X aborts with error "not enough memory for internal tables"
#                                                    then you need to increase this value.
#                                               a20: A20 gate emulation mode.
#                                                    The on/off/on_fake/off_fake options are intended for testing and debugging DOS development,
#                                                    or to emulate obscure hardware, or to work around potential extended memory problems with DOS programs.
#                                                    on_fake/off_fake are intended to test whether a program carries out a memory test to ensure the A20
#                                                    gate is set as intended (as HIMEM.SYS does). If it goes by the gate bit alone, it WILL crash.
#                                                    This parameter is also changeable from the builtin A20GATE command.
#                                                      fast                         Emulate A20 gating by remapping the first 64KB @ 1MB boundary (fast, mainline DOSBox behavior)
#                                                      mask                         Emulate A20 gating by masking memory I/O address (accurate)
#                                                      off                          Lock A20 gate off (Software/OS cannot enable A20)
#                                                      on                           Lock A20 gate on (Software/OS cannot disable A20)
#                                                      off_fake                     Lock A20 gate off but allow bit to toggle (hope your DOS game tests the HMA!)
#                                                      on_fake                      Lock A20 gate on but allow bit to toggle
#                                     isa bus clock: ISA BCLK frequency.
#                                                    WARNING: In future revisions, PCI/motherboard chipset emulation will allow the guest OS/program to alter this value at runtime.
#                                                      std8.3                       8.333MHz (typical 386-class or higher)
#                                                      std8                         8MHz
#                                                      std6                         6MHz
#                                                      std4.77                      4.77MHz (precisely 1/3 x 14.31818MHz). Bus frequency of older PC/XT systems.
#                                                      oc10                         10MHz
#                                                      oc12                         12MHz
#                                                      oc15                         15MHz
#                                                      oc16                         16MHz
#                                                      <integer or float>           Any integer or floating point value will be used as the clock frequency in Hz
#                                                      <integer/integer ratio>      If a ratio is given (num/den), the ratio will be used as the clock frequency
#                                     pci bus clock: PCI bus frequency.
#                                                    WARNING: In future revisions, PCI/motherboard chipset emulation will allow the guest OS/program to alter this value at runtime.
#                                                      std33.3                      33.333MHz (very common setting on motherboards)
#                                                      std30                        30MHz (some older mid-1990's Pentium systems)
#                                                      std25                        25MHz
#                                                      <integer or float>           Any integer or floating point value will be used as the clock frequency in Hz
#                                                      <integer/integer ratio>      If a ratio is given (num/den), the ratio will be used as the clock frequency
#                           rom bios allocation max: Maximum size (top down from 1MB) allowed for ROM BIOS dynamic allocation in KB
#                             rom bios minimum size: Once ROM BIOS layout is finalized, trim total region down to a minimum amount in KB
#                                           memsize: Amount of memory DOSBox has in megabytes.
#                                                      This value is best left at its default to avoid problems with some games,
#                                                      though few games might require a higher value.
#                                                      There is generally no speed advantage when raising this value.
#                                                      Programs that use 286 protected mode like Windows 3.0 in Standard Mode may crash with more than 15MB.
#                                         memsizekb: Amount of memory DOSBox has in kilobytes.
#                                                      This value should normally be set to 0.
#                                                      If nonzero, overrides the memsize parameter.
#                                                      Finer grained control of total memory may be useful in
#                                                      emulating ancient DOS machines with less than 640KB of
#                                                      RAM or early 386 systems with odd extended memory sizes.
#                                     dos mem limit: Limit DOS conventional memory to this amount. Does not affect extended memory.
#                                                    Some DOS programs may find < 640KB + extended memory an unusual situation. For diagnostic purposes.
#                          isa memory hole at 512kb: If set, emulate an ISA memory hole at the 512KB to 640KB area (0x80000-0x9FFFF).
#                                          memalias: Memory aliasing emulation, in number of valid address bits.
#                                                    . Many 386/486 class motherboards and processors prior to 1995
#                                                      suffered from memory aliasing for various technical reasons. If the software you are
#                                                      trying to run assumes aliasing, or otherwise plays cheap tricks with paging,
#                                                      enabling this option can help. Note that enabling this option can cause slight performance degredation. Set to 0 to disable.
#                                                      Recommended values when enabled:
#                                                        24: 16MB aliasing. Common on 386SX systems (CPU had 24 external address bits)
#                                                            or 386DX and 486 systems where the CPU communicated directly with the ISA bus (A24-A31 tied off)
#                                                        26: 64MB aliasing. Some 486s had only 26 external address bits, some motherboards tied off A26-A31
#                            vga bios size override: VGA BIOS size override. Override the size of the VGA BIOS (normally 32KB in compatible or 12KB in non-compatible).
# video bios dont duplicate cga first half rom font: If set, save 4KB of EGA/VGA ROM space by pointing to the copy in the ROM BIOS of the first 128 chars
#    video bios always offer 14-pixel high rom font: If set, video BIOS will always carry the 14-pixel ROM font. If clear, 14-pixel rom font will not be offered except for EGA/VGA emulation.
#    video bios always offer 16-pixel high rom font: If set, video BIOS will always carry the 16-pixel ROM font. If clear, 16-pixel rom font will not be offered except for VGA emulation.
#        video bios enable cga second half rom font: If set, and emulating CGA/PCjr/Tandy, automatically provide the second half of the 8x8 ROM font.
#                                                    This setting is ignored for EGA/VGA emulation. If not set, you will need a utility like GRAFTABL.COM to load the second half of the ROM font for graphics.
#                                                    NOTE: if you disable the 14 & 16 pixel high font AND the second half when machine=cga, you will disable video bios completely.
#                                         forcerate: Force the VGA framerate to a specific value(ntsc, pal, or specific hz), no matter what
#                                     sierra ramdac: Whether or not to emulate a Sierra or compatible RAMDAC at port 3C6h-3C9h.
#                                                    Some DOS games expect to access port 3C6h to enable highcolor/truecolor SVGA modes on older chipsets.
#                                                    Disable if you wish to emulate SVGA hardware that lacks a RAMDAC or (depending on the chipset) does
#                                                    not emulate a RAMDAC that is accessible through port 3C6h. This option has no effect for non-VGA video hardware.
#                            sierra ramdac lock 565: When emulating High Sierra highcolor RAMDAC, assume 5:6:5 at all times if set. Else,
#                                                    bit 6 of the DAC command selects between 5:5:5 and 5:6:5. Set this option for demos or
#                                                    games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is
#                                                    not rendering highcolor 16bpp correctly.
#                              page flip debug line: VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written.
#                                                    This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering.
#                  vertical retrace poll debug line: VGA debugging switch. If set, an inverse green dotted line will be drawn on the exact scanline that the CRTC status port (0x3DA) was read.
#                                                    This can be used to help diagnose whether the DOS game is propertly waiting for vertical retrace.
#                                           cgasnow: When machine=cga, determines whether or not to emulate CGA snow
#                               allow port 92 reset: If set (default), allow the application to reset the CPU through port 92h
#                                    enable port 92: Emulate port 92h (PS/2 system control port A). If you want to emulate a system that predates the PS/2, set to 0.
#                         enable 1st dma controller: Emulate 1st (AT) DMA controller (default). Set to 0 if you wish to emulate a system that lacks DMA (PCjr and some Tandy systems)
#                         enable 2nd dma controller: Emulate 2nd (AT) DMA controller (default). Set to 0 if you wish to emulate a PC/XT system without 16-bit DMA.
#                                                    Note: mainline DOSBox automatically disables 16-bit DMA when machine=cga or machine=hercules, while DOSBox-X does not.
#                       allow dma address decrement: If set, allow increment & decrement modes as specified in the 8237 datasheet.
#                                                    If clear, always increment the address (as if to emulate clone 8237 implementations that skipped the inc/dec bit).
#                   enable dma extra page registers: If set, emulate the extra page registers (I/O ports 0x80, 0x84-0x86, 0x88, 0x8C-0x8E), like actual hardware.
#                                                    Note that mainline DOSBox behavior is to NOT emulate these registers.
#                     dma page registers write-only: Normally (on AT hardware) the DMA page registers are read/write. Set this option if you want to emulate PC/XT hardware where the page registers are write-only.
#                                  enable slave pic: Enable slave PIC (IRQ 8-15). Set this to 0 if you want to emulate a PC/XT type arrangement with IRQ 0-7 and no IRQ 2 cascade.
#                                enable pc nmi mask: Enable PC/XT style NMI mask register (0xA0). Note that this option conflicts with the secondary PIC and will be ignored if the slave PIC is enabled.
#                             rom bios 8x8 CGA font: If set, or mainline compatible bios mapping, a legacy 8x8 CGA font (first 128 characters) is stored at 0xF000:0xFA6E. DOS programs that do not use INT 10h to locate fonts might require that font to be located there.
#                    rom bios video parameter table: If set, or mainline compatible bios mapping, DOSBox will emulate the video parameter table and assign that to INT 1Dh. If clear, table will not be provided.
#                 allow more than 640kb base memory: If set, and space is available, allow conventional memory to extend past 640KB.
#                                                    For example, if machine=cga, conventional memory can extend out to 0xB800 and provide up to 736KB of RAM.
#                                                    This allows you to emulate PC/XT style memory extensions.
#                     vesa lfb base scanline adjust: If non-zero, the VESA BIOS will report the linear framebuffer as offset by this many scanlines.
#                                                    For example, if the LFB is at 0xC0000000 and you need the demo to draw 2 scan lines lower,
#                                                    at 0xC0000000 + (320*2) (320x240x256 mode), you would set this to 2. This option should be set
#                                                    to zero by default unless needed for certain DOS demos that have sloppy VESA linear framebuffer
#                                                    rendering code that renders a few scanlines UP into undefined memory preceeding the linear framebuffer.
#                                                    This option DOES NOT affect the visible offset of the linear framebuffer, it only affects the physical
#                                                    memory location reported by VESA BIOS emulation.
#                                allow hpel effects: If set, allow the DOS demo or program to change the horizontal pel (panning) register per scanline.
#                                                    Some early DOS demos use this to create waving or sinus effects on the picture. Not very many VGA
#                                                    chipsets allow this, so far, only ATI chipsets are known to support this effect. Disabled by default.
#                            allow hretrace effects: If set, allow the DOS demo or program to make the picture wavy by playing with the 'start horizontalretrace' register of the CRTC during the active picture. Some early DOS demos (Copper by Surprise!productions) need this option set for some demo effects to work. Disabled by default.
#                            hretrace effect weight: If emulating hretrace effects, this parameter adds 'weight' to the offset to smooth it out.
#                                                    the larger the number, the more averaging is applied. This is intended to emulate the inertia
#                                                    of the electron beam in a CRT monitor
#                      vesa vbe 1.2 modes are 32bpp: If set, truecolor (16M color) VESA BIOS modes in the 0x100-0x11F range are 32bpp. If clear, they are 24bpp.
#                                                    Some DOS games and demos assume one bit depth or the other and do not enumerate VESA BIOS modes, which is why this
#                                                    option exists.
#                   allow low resolution vesa modes: If set, allow low resolution VESA modes (320x200x16/24/32bpp and so on). You could set this to false to simulate
#                                                    SVGA hardware with a BIOS that does not support the lowres modes for testing purposes.
#                            allow 32bpp vesa modes: If the DOS game or demo has problems with 32bpp VESA modes, set to 'false'
#                            allow 24bpp vesa modes: If the DOS game or demo has problems with 24bpp VESA modes, set to 'false'
#                            allow 16bpp vesa modes: If the DOS game or demo has problems with 16bpp VESA modes, set to 'false'
#                            allow 15bpp vesa modes: If the DOS game or demo has problems with 15bpp VESA modes, set to 'false'
#                             allow 8bpp vesa modes: If the DOS game or demo has problems with 8bpp VESA modes, set to 'false'
#                             allow 4bpp vesa modes: If the DOS game or demo has problems with 4bpp VESA modes, set to 'false'
#                              allow tty vesa modes: If the DOS game or demo has problems with text VESA modes, set to 'false'
#                           enable vga resize delay: If the DOS game you are running relies on certain VGA raster tricks that affect active display area, enable this option.
#                                                    This adds a delay between VGA mode changes and window updates. It also means that if you are capturing a demo or game,
#                                                    that your capture will also show a few garbled frames at any point mode changes occur, which is why this option is disabled
#                                                    by default. If you intend to run certain DOS games and demos like DoWhackaDo, enable this option.
#  resize only on vga active display width increase: If set, changes to the Display End register of the CRTC do not trigger DOSBox to resize it's window
#                                                    IF the value written is less than the current value. Some demos like DoWhackaDo need this option set
#                                                    because of the way it's raster effects work. If the DOSBox window rapidly changes size during a demo
#                                                    try setting this option. Else, leave it turned off. Changes to other VGA CRTC registers will trigger
#                                                    a DOSBox mode change as normal regardless of this setting.
#                                    enable pci bus: Enable PCI bus emulation
#                                          pit hack: If set, demo/game-specific hacks are applied to PIT timer emulation to help
#                                                    stabilize the demo and run more reliably. Valid values are:
#                                                      'project_angel_demo'            If you intend to run the Project Angel demo, use this
#                                                                                      setting. The PIT timer is forced to one of two values
#                                                                                      to resolve hangups, timing issues, music skipping on
#                                                                                      video mode changes, and VGA tearlines.
#                                                      'pc_speaker_as_timer'           A few early DOS demos apparently like to use PIT 2 as
#                                                                                      a timer source (where normally PIT 2 is used to generate
#                                                                                      a square wave to drive the PC speaker). If the demo you
#                                                                                      are running seems to run at half the normal speed for no
#                                                                                      logical reason, try this hack. Demos that need this hack:
#                                                                                         - Impact Studios, Legend
#                                                    Possible values: , project_angel_demo, pc_speaker_as_timer.
language=
#machine=svga_s3
machine=vgaonly
vmemsize=4
vmemsizekb=0
captures=capture
mainline compatible mapping=true
mainline compatible bios mapping=true
adapter rom is ram=false
shell environment size=0
private area size=32768
a20=mask
isa bus clock=std8.3
pci bus clock=std33.3
rom bios allocation max=0
rom bios minimum size=0
#memsize=16
memsize=128
memsizekb=0
dos mem limit=0
isa memory hole at 512kb=false
memalias=0
vga bios size override=0
video bios dont duplicate cga first half rom font=false
video bios always offer 14-pixel high rom font=true
video bios always offer 16-pixel high rom font=true
video bios enable cga second half rom font=true
forcerate=
sierra ramdac=true
sierra ramdac lock 565=false
page flip debug line=false
vertical retrace poll debug line=false
cgasnow=true
allow port 92 reset=true
enable port 92=true
enable 1st dma controller=true
enable 2nd dma controller=true
allow dma address decrement=true
enable dma extra page registers=true
dma page registers write-only=false
enable slave pic=true
enable pc nmi mask=true
rom bios 8x8 CGA font=true
rom bios video parameter table=true
allow more than 640kb base memory=false
vesa lfb base scanline adjust=0
allow hpel effects=false
allow hretrace effects=false
hretrace effect weight=4.00
vesa vbe 1.2 modes are 32bpp=true
allow low resolution vesa modes=true
allow 32bpp vesa modes=true
allow 24bpp vesa modes=true
allow 16bpp vesa modes=true
allow 15bpp vesa modes=true
allow 8bpp vesa modes=true
allow 4bpp vesa modes=true
allow tty vesa modes=true
enable vga resize delay=false
resize only on vga active display width increase=false
enable pci bus=true
pit hack=

[render]
#  frameskip: How many frames DOSBox skips before drawing one.
#     aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!.
#   linewise: Draw the display line by line. Needed for certain special graphics effects in games and demos. Can be changed at runtime but will be put in effect at the next mode switch.
#      char9: Allow 9-pixel wide text mode fonts.
# doublescan: If set, doublescanned output emits two scanlines for each source line, in the
#             same manner as the actual VGA output (320x200 is rendered as 640x400 for example).
#             If clear, doublescanned output is rendered at the native source resolution (320x200 as 320x200).
#             This affects the raster PRIOR to the software or hardware scalers. Choose wisely.
#             
#     scaler: Scaler used to enlarge/enhance low resolution modes. If 'forced' is appended,
#             then the scaler will be used even if the result might not be desired.
#             Possible values: none, normal2x, normal3x, normal4x, normal5x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x, hardware_none, hardware2x, hardware3x, hardware4x, hardware5x, xbrz.
#    autofit: Best fits image to window
#             - Intended for output=direct3d, fullresolution=original, aspect=true
frameskip=0
aspect=false
linewise=false
char9=false
doublescan=true
scaler=hardware2x
autofit=true

[vsync]
# vsyncmode: Synchronize vsync timing to the host display. Requires calibration within dosbox.
#            Possible values: off, on, force, host.
# vsyncrate: Vsync rate used if vsync is enabled. Ignored if vsyncmode is set to host (win32).
#            Possible values:.
vsyncmode=off
vsyncrate=75

[cpu]
#                                core: CPU Core used in emulation. auto will switch to dynamic if available and
#                                      appropriate.
#                                      Possible values: auto, dynamic, normal, full, simple.
#                          enable msr: Allow RDMSR/WRMSR instructions. This option is only meaningful when cputype=pentium.
#                ignore undefined msr: Ignore RDMSR/WRMSR on undefined registers. Normally the CPU will fire an Invalid Opcode exception in that case.
#                                      This option is off by default, enable if using software or drivers that assumes the presence of
#                                      certain MSR registers without checking. If you are using certain versions of the 3Dfx glide drivers for MS-DOS
#                                      you will need to set this to TRUE as 3Dfx appears to have coded GLIDE2.OVL to assume the presence
#                                      of Pentium Pro/Pentium II MTRR registers.
#       dynamic core cache block size: dynamic core cache block size. default value is 32. change this value carefully.
#                                      according to forum discussion, setting this to 1 can aid debugging, however doing so
#                                      also causes problems with 32-bit protected mode DOS games and reduces the performance
#                                      of the dynamic core.
#                                      
#                             cputype: CPU Type used in emulation. auto emulates a 486 which tolerates Pentium instructions.
#                                      Possible values: auto, 386, 486, pentium, 386_prefetch, pentium_mmx.
#                              cycles: Amount of instructions DOSBox tries to emulate each millisecond.
#                                      Setting this value too high results in sound dropouts and lags.
#                                      Cycles can be set in 3 ways:
#                                        'auto'          tries to guess what a game needs.
#                                                        It usually works, but can fail for certain games.
#                                        'fixed #number' will set a fixed amount of cycles. This is what you usually
#                                                        need if 'auto' fails (Example: fixed 4000).
#                                        'max'           will allocate as much cycles as your computer is able to
#                                                        handle.
#                                      Possible values: auto, fixed, max.
#                             cycleup: Amount of cycles to decrease/increase with keycombos.(CTRL-F11/CTRL-F12)
#                           cycledown: Setting it lower than 100 will be a percentage.
#            non-recursive page fault: Determines whether CPU emulation attempts to use a non-recursive method to emulate guest OS page fault exceptions.
#                                      If false (mainline DOSBox compatible), page faults are emulated using a recursive method, which is fine
#                                      for MS-DOS and Windows 3.1 emulation scenarios where the exception handler will always return directly to the fault location.
#                                      However, that assumption is not necessarily true for preemptive multitasking operating systems like Windows 95, for which
#                                      this setting should be enabled to help avoid recursion issues in DOSBox.
#                                      WARNING: this feature is not entirely stable yet especially if the dynamic core is involved.
#                    ignore opcode 63: When debugging, do not report illegal opcode 0x63.
#                                      Enable this option to ignore spurious errors while debugging from within Windows 3.1/9x/ME
#                             apmbios: Emulate Advanced Power Management BIOS calls.
#                                      Do not enable if you are running Windows ME.
#              apmbios allow realmode: Allow guest OS to connect from real mode.
# apmbios allow 16-bit protected mode: Allow guest OS to connect from 16-bit protected mode.
# apmbios allow 32-bit protected mode: Allow guest OS to connect from 32-bit protected mode.
#                                      If you want power management in Windows 95/98/ME (beyond using the APM to shutdown the computer) you MUST enable this option.
#                                      Windows 95/98/ME does not support the 16-bit real and protected mode APM BIOS entry points.
#                  integration device: Enable DOSBox integration I/O device. This can be used by the guest OS to match mouse pointer position, for example. EXPERIMENTAL!
#                          isapnpbios: Emulate ISA Plug & Play BIOS. Enable if using DOSBox to run a PnP aware DOS program or if booting Windows 9x.
#                                      Do not disable if Windows 9x is configured around PnP devices, you will likely confuse it.
#                           realbig16: Allow the B (big) bit in real mode. If set, allow the DOS program to set the B bit,
#                                      then jump to realmode with B still set (aka Huge Unreal mode). Needed for Project Angel.
core=auto
enable msr=true
ignore undefined msr=false
dynamic core cache block size=32
cputype=486
cycles=auto
cycleup=10
cycledown=20
non-recursive page fault=true
ignore opcode 63=true
apmbios=true
apmbios allow realmode=true
apmbios allow 16-bit protected mode=true
apmbios allow 32-bit protected mode=true
integration device=true
isapnpbios=true
realbig16=false

[keyboard]
#                     aux: Enable emulation of the 8042 auxiliary port. PS/2 mouse emulation requires this to be enabled.
#                          You should enable this if you will be running Windows ME or any other OS that does not use the BIOS to receive mouse events.
# allow output port reset: If set (default), allow the application to reset the CPU through the keyboard controller.
#                          This option is required to allow Windows ME to reboot properly, whereas Windows 9x and earlier
#                          will reboot without this option using INT 19h
#               auxdevice: Type of PS/2 mouse attached to the AUX port
#                          Possible values: none, 2button, 3button, intellimouse, intellimouse45.
aux=false
allow output port reset=true
auxdevice=intellimouse

[pci]
#    voodoo: Enable VOODOO support.
#            Possible values: false, software, opengl, auto.
# voodoomem: Specify VOODOO card memory size.
#              'standard'      4MB card (2MB front buffer + 1x2MB texture unit)
#              'max'           12MB card (4MB front buffer + 2x4MB texture units)
#            Possible values: standard, max.
voodoo=opengl
voodoomem=max

[mixer]
#    nosound: Enable silent mode, sound is still emulated though.
# swapstereo: Swaps the left and right stereo channels.
#       rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality.
#             Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#  blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged.
#             Possible values: 1024, 2048, 4096, 8192, 512, 256.
#  prebuffer: How many milliseconds of data to keep on top of the blocksize.
nosound=false
swapstereo=false
rate=44100
blocksize=2048
prebuffer=20

[midi]
#              mpu401: Type of MPU-401 to emulate.
#                      Possible values: intelligent, uart, none.
#          mididevice: Device that will receive the MIDI data from MPU-401.
#                      Possible values: default, win32, alsa, oss, coreaudio, coremidi, mt32, synth, timidity, none.
#          midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use.
#                        or in the case of coreaudio, you can specify a soundfont here.
#                        When using a Roland MT-32 rev. 0 as midi output device, some games may require a delay in order to prevent 'buffer overflow' issues.
#                        In that case, add 'delaysysex', for example: midiconfig=2 delaysysex
#                        See the README/Manual for more details.
# mt32.reverse.stereo: Reverse stereo channels for MT-32 output
#                      Possible values: off, on.
#        mt32.verbose: MT-32 debug logging
#                      Possible values: off, on.
#         mt32.thread: MT-32 rendering in separate thread
#                      Possible values: off, on.
#            mt32.dac: MT-32 DAC input emulation mode
#                      Nice = 0 - default
#                      Produces samples at double the volume, without tricks.
#                      Higher quality than the real devices
#                      
#                      Pure = 1
#                      Produces samples that exactly match the bits output from the emulated LA32.
#                      Nicer overdrive characteristics than the DAC hacks (it simply clips samples within range)
#                      Much less likely to overdrive than any other mode.
#                      Half the volume of any of the other modes, meaning its volume relative to the reverb
#                      output when mixed together directly will sound wrong. So, reverb level must be lowered.
#                      Perfect for developers while debugging :)
#                      
#                      GENERATION1 = 2
#                      Re-orders the LA32 output bits as in early generation MT-32s (according to Wikipedia).
#                      Bit order at DAC (where each number represents the original LA32 output bit number, and XX means the bit is always low):
#                      15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 XX
#                      
#                      GENERATION2 = 3
#                      Re-orders the LA32 output bits as in later geneerations (personally confirmed on my CM-32L - KG).
#                      Bit order at DAC (where each number represents the original LA32 output bit number):
#                      15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 14
#                      
#                      Possible values: 0, 1, 2, 3, auto.
#    mt32.reverb.mode: MT-32 reverb mode
#                      Possible values: 0, 1, 2, 3, auto.
#    mt32.reverb.time: MT-32 reverb decaying time
#                      Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
#   mt32.reverb.level: MT-32 reverb level
#                      Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
#       mt32.partials: MT-32 max partials allowed (0-256)
mpu401=intelligent
mididevice=alsa
midiconfig=129:1
mt32.reverse.stereo=off
mt32.verbose=off
mt32.thread=off
mt32.dac=auto
mt32.reverb.mode=auto
mt32.reverb.time=5
mt32.reverb.level=3
mt32.partials=32

[sblaster]
#                               sbtype: Type of Soundblaster to emulate. gb is Gameblaster.
#                                       Possible values: sb1, sb2, sbpro1, sbpro2, sb16, sb16vibra, gb, none.
#                               sbbase: The IO address of the soundblaster.
#                                       Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
#                                  irq: The IRQ number of the soundblaster. Set to -1 to start DOSBox with the IRQ unassigned
#                                       Possible values: 7, 5, 3, 9, 10, 11, 12.
#                                  dma: The DMA number of the soundblaster. Set to -1 to start DOSBox with the IRQ unassigned
#                                       Possible values: 1, 5, 0, 3, 6, 7.
#                                 hdma: The High DMA number of the soundblaster. Set to -1 to start DOSBox with the IRQ unassigned
#                                       Possible values: 1, 5, 0, 3, 6, 7.
#                              sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer.
#                              oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type.
#                                       All OPL modes are Adlib-compatible, except for 'cms'. sbtype=none
#                                       together with oplmode=cms will emulate a Gameblaster.
#                                       Possible values: auto, cms, opl2, dualopl2, opl3, none, hardware, hardwaregb.
# adlib force timer overflow on detect: If set, Adlib/OPL emulation will signal 'overflow' on timers after 50 I/O reads.
#                                       This is a temporary hack to work around timing bugs noted in DOSBox-X. Certain
#                                       games (Wolfenstein 3D) poll the Adlib status port a fixed number of times assuming
#                                       that the poll loop takes long enough for the Adlib timer to run out. If the game
#                                       cannot reliably detect Adlib at higher cycles counts, but can reliably detect at
#                                       lower cycles counts, set this option.
#                                       NOTE: Technically this decreases emulation accuracy, however it also reflects the
#                                             fact that DOSBox-X's I/O timing code needs some work to better match the
#                                             slowness of the ISA bus per I/O read in consideration of DOS games. So this
#                                             option is ON by default.
#                               oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well).
#                                       Possible values: default, compat, fast.
#                              oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly).
#                                       Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000.
#                         hardwarebase: base address of the real hardware soundblaster:
#                                       210,220,230,240,250,260,280
#                  force dsp auto-init: Treat all single-cycle DSP commands as auto-init to keep playback going.
#                                       This option is a workaround for DOS games or demos that use single-cycle DSP playback commands and
#                                       have problems with missing the Sound Blaster IRQ under load. Do not enable unless you need this workaround.
#                                       Needed for:
#                                         - Extreme "lunatic" demo (1993)
#                       force goldplay: Always render Sound Blaster output sample-at-a-time. Testing option. You probably don't want to enable this.
#                             goldplay: Enable goldplay emulation.
#                      goldplay stereo: Enable workaround for goldplay stereo playback. Many DOS demos using this technique
#                                       don't seem to know they need to double the frequency when programming the DSP time constant for Pro stereo output.
#                                       If stereo playback seems to have artifacts consider enabling this option. For accurate emulation of Sound Blaster
#                                       hardware, disable this option.
#    dsp require interrupt acknowledge: If set, the DSP will halt DMA playback until IRQ acknowledgement occurs even in auto-init mode (SB16 behavior).
#                                       If clear, IRQ acknowledgement will have no effect on auto-init playback (SB Pro and earlier & clone behavior)
#                                       If set to 'auto' then behavior is determined by sbtype= setting.
#                                       This is a setting for hardware accuracy in emulation. If audio briefly plays then stops then your DOS game
#                                       and it's not using IRQ (but using DMA), try setting this option to 'false'
#                 dsp write busy delay: Amount of time in nanoseconds the DSP chip signals 'busy' after writing to the DSP (port 2xCh). Set to -1 to use card-specific defaults.
#                                       WARNING: Setting the value too high (above 20000ns) may have detrimental effects to DOS games that use IRQ 0 and DSP command 0x10 to play audio.
#                                                Setting the value way too high (above 1000000ns) can cause significant lag in DOS games.
#         blaster environment variable: Whether or not to set the BLASTER environment variable automatically at startup
#                   sample rate limits: If set (default), limit DSP sample rate to what real hardware is limited to
#                   instant direct dac: If set, direct DAC output commands are instantaneous. This option is intended as a quick fix for
#                                       games or demos that play direct DAC music/sound from the IRQ 0 timer who a) write the DSP command
#                                       and data without polling the DSP to ensure it's ready or b) can get locked into the IRQ 0 handler
#                                       waiting for DSP status when instructed to play at or beyond the DSP's maximum direct DAC sample rate.
#                                       This fix allows broken Sound Blaster code to work and should not be enabled unless necessary.
#       stereo control with sbpro only: Default on. If set, Sound Blaster Pro stereo is not available when emulating sb16 or sb16vibra.
#                                       If clear, sb16 emulation will honor the sbpro stereo bit. Note that Creative SB16 cards do not
#                                       honor the stereo bit, and this option allows DOSBox emulate that fact. Accuracy setting.
#                  dsp busy cycle rate: Sound Blaster 16 DSP chips appear to go busy periodically at some high clock rate
#                                       whether the DSP is actually doing anything for the system or not. This is an accuracy
#                                       option for Sound Blaster emulation. If this option is nonzero, it will be interpreted
#                                       as the busy cycle rate in Hz. If zero, busy cycle will not be emulated. If -1, sound
#                                       blaster emulation will automatically choose a setting based on the sbtype= setting
#                  dsp busy cycle duty: If emulating SB16 busy cycle, this value (0 to 100) controls the duty cycle of the busy cycle.
#                                       If this option is set to -1, Sound Blaster emulation will choose a value automatically according
#                                       to sbtype=. If 0, busy cycle emulation is disabled.
#                     io port aliasing: If set, Sound Blaster ports alias by not decoding the LSB of the I/O port.
#                                       This option only applies when sbtype is set to sb1 or sb2 (not SBPro or SB16).
#                                       This is a hack for the Electromotive Force 'Internal Damage' demo which apparently
#                                       relies on this behavior for Sound Blaster output and should be enabled for accuracy in emulation.
sbtype=sb16
sbbase=220
irq=7
dma=1
hdma=5
sbmixer=true
oplmode=auto
adlib force timer overflow on detect=true
oplemu=default
oplrate=44100
hardwarebase=220
force dsp auto-init=false
force goldplay=false
goldplay=false
goldplay stereo=true
dsp require interrupt acknowledge=auto
dsp write busy delay=-1
blaster environment variable=true
sample rate limits=true
instant direct dac=false
stereo control with sbpro only=true
dsp busy cycle rate=-1
dsp busy cycle duty=-1
io port aliasing=true

[gus]
#      gus: Enable the Gravis Ultrasound emulation.
#  gusrate: Sample rate of Ultrasound emulation.
#           Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#  gusbase: The IO base address of the Gravis Ultrasound.
#           Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
#   gusirq: The IRQ number of the Gravis Ultrasound.
#           Possible values: 5, 3, 7, 9, 10, 11, 12.
#   gusdma: The DMA channel of the Gravis Ultrasound.
#           Possible values: 3, 0, 1, 5, 6, 7.
# ultradir: Path to Ultrasound directory. In this directory
#           there should be a MIDI directory that contains
#           the patch files for GUS playback. Patch sets used
#           with Timidity should work fine.
gus=false
gusrate=44100
gusbase=240
gusirq=5
gusdma=3
ultradir=C:\ULTRASND

[innova]
#     innova: Enable the Innovation SSI-2001 emulation.
# samplerate: Sample rate of Innovation SSI-2001 emulation
#             Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#    sidbase: SID base port (typically 280h).
#             Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
#    quality: Set SID emulation quality level (0 to 3).
#             Possible values: 0, 1, 2, 3.
innova=false
samplerate=22050
sidbase=280
quality=0

[speaker]
#    pcspeaker: Enable PC-Speaker emulation.
#       pcrate: Sample rate of the PC-Speaker sound generation.
#               Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#        tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'.
#               Possible values: auto, on, off.
#    tandyrate: Sample rate of the Tandy 3-Voice generation.
#               Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#       disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible).
#     ps1audio: Enable PS1 audio emulation.
#               Possible values: on, off.
# ps1audiorate: Sample rate of the PS1 audio emulation.
#               Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
pcspeaker=true
pcrate=44100
tandy=auto
tandyrate=44100
disney=false
ps1audio=off
ps1audiorate=22050

[joystick]
# joysticktype: Type of joystick to emulate: auto (default), none,
#               2axis (supports two joysticks),
#               4axis (supports one joystick, first joystick used),
#               4axis_2 (supports one joystick, second joystick used),
#               fcs (Thrustmaster), ch (CH Flightstick).
#               none disables joystick emulation.
#               auto chooses emulation depending on real joystick(s).
#               (Remember to reset dosbox's mapperfile if you saved it earlier)
#               Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none.
#        timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away).
#     autofire: continuously fires as long as you keep the button pressed.
#       swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks.
#   buttonwrap: enable button wrapping at the number of emulated buttons.
joysticktype=auto
timed=true
autofire=false
swap34=false
buttonwrap=false

[serial]
# serial1: set type of device connected to com port.
#          Can be disabled, dummy, modem, nullmodem, directserial.
#          Additional parameters must be in the same line in the form of
#          parameter:value. Parameter for all types is irq (optional).
#          for directserial: realport (required), rxdelay (optional).
#                           (realport:COM1 realport:ttyS0).
#          for modem: listenport (optional).
#          for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
#                         transparent, port, inhsocket (all optional).
#          Example: serial1=modem listenport:5000
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial2: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial3: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial4: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[printer]
#     printer: Enable printer emulation.
#         dpi: Resolution of printer (default 360).
#       width: Width of paper in 1/10 inch (default 85 = 8.5'').
#      height: Height of paper in 1/10 inch (default 110 = 11.0'').
# printoutput: Output method for finished pages: 
#                png     : Creates PNG images (default)
#                ps      : Creates Postscript
#                bmp     : Creates BMP images (very huge files, not recommend)
#              
#   multipage: Adds all pages to one Postscript file or printer job until CTRL-F2 is pressed.
#     docpath: The path where the output files are stored.
#     timeout: (in milliseconds) if nonzero: the time the page will
#              be ejected automatically after when no more data
#              arrives at the printer.
printer=true
dpi=360
width=85
height=110
printoutput=png
multipage=false
docpath=.
timeout=0

[parallel]
# parallel1: parallel1-3 -- set type of device connected to lpt port.
#            Can be:
#               reallpt (direct parallel port passthrough),
#               file (records data to a file or passes it to a device),
#               printer (virtual dot-matrix printer, see [printer] section)
#            Additional parameters must be in the same line in the form of
#            parameter:value.
#              for reallpt:
#              Windows:
#                realbase (the base address of your real parallel port).
#                  Default: 378
#                ecpbase (base address of the ECP registers, optional).
#              Linux: realport (the parallel port device i.e. /dev/parport0).
#              for file: 
#                dev:<devname> (i.e. dev:lpt1) to forward data to a device,
#                or append:<file> appends data to the specified file.
#                Without the above parameters data is written to files in the capture dir.
#                Additional parameters: timeout:<milliseconds> = how long to wait before
#                closing the file on inactivity (default:500), addFF to add a formfeed when
#                closing, addLF to add a linefeed if the app doesn't, cp:<codepage number>
#                to perform codepage translation, i.e. cp:437
#              for printer:
#                printer still has it's own configuration section above.
# parallel2: see parallel1
# parallel3: see parallel1
#    dongle: Enable dongle
parallel1=disabled
parallel2=disabled
parallel3=disabled
dongle=false

[glide]
#  glide: Enable glide emulation: true,false,emu.
#    lfb: LFB access: full,full_noaux,read,read_noaux,write,write_noaux,none.
#         OpenGlide does not support locking aux buffer, please use _noaux modes.
# splash: Show 3dfx splash screen (requires 3dfxSpl2.dll).
glide=emu
lfb=full
splash=true

[dos]
#                                              xms: Enable XMS support.
#                       enable a20 on windows init: If set, DOSBox will enable the A20 gate when Windows 3.1/9x broadcasts the INIT message
#                                                   at startup. Windows 3.1 appears to make assumptions at some key points on startup about
#                                                   A20 that don't quite hold up and cause Windows 3.1 to crash when you set A20 emulation
#                                                   to a20=mask as opposed to a20=fast. This option is enabled by default.
#             zero memory on xms memory allocation: If set, memory returned by XMS allocation call is zeroed first. This is NOT what
#                                                   DOS actually does, but if set, can help certain DOS games and demos cope with problems
#                                                   related to uninitialized variables in extended memory. When enabled this option may
#                                                   incur a slight to moderate performance penalty.
#                                              ems: Enable EMS support. The default (=true) provides the best
#                                                   compatibility but certain applications may run better with
#                                                   other choices, or require EMS support to be disabled (=false)
#                                                   to work at all.
#                                                   Possible values: true, emsboard, emm386, false.
#             zero memory on ems memory allocation: If set, memory returned by EMS allocation call is zeroed first. This is NOT what
#                                                   DOS actually does, but if set, can help certain DOS games and demos cope with problems
#                                                   related to uninitialized variables in expanded memory. When enabled this option may
#                                                   incur a slight to moderate performance penalty.
#                    ems system handle memory size: Amount of memory associated with system handle, in KB
#                                              umb: Enable UMB support.
#                                        umb start: UMB region starting segment
#                                          umb end: UMB region last segment
#                         kernel allocation in umb: If set, dynamic kernel allocation=1, and private area in umb=1, all kernel structures will be allocated from the private area in UMB.
#                                                   If you intend to run Windows 3.1 in DOSBox, you must set this option to false else Windows 3.1 will not start.
#                        dynamic kernel allocation: If set, DOS kernel structures are allocated dynamically. If clear, DOS kernel structures are fixed at specific segments (mainline DOSBox behavior)
#                                 keep umb on boot: If emulating UMBs, keep the UMB around after boot (Mainline DOSBox behavior). If clear, UMB is unmapped when you boot an operating system.
#                        keep private area on boot: If set, keep the DOSBox private area around after boot (Mainline DOSBox behavior). If clear, unmap and discard the private area when you boot an operating system.
#                              private area in umb: If set, keep private DOS segment in upper memory block, usually segment 0xC800 (Mainline DOSBox behavior)
#                                                   If clear, place private DOS segment at the base of system memory (just below the MCB)
#                                        automount: Enable automatic mount.
#                                            int33: Enable INT 33H (mouse) support.
#                                int 13 extensions: Enable INT 13h extensions (functions 0x40-0x48). You will need this enabled if the virtual hard drive image is 8.4GB or larger.
#                                          biosps2: Emulate BIOS INT 15h PS/2 mouse services
#                                                   Note that some OS's like Microsoft Windows neither use INT 33h nor
#                                                   probe the AUX port directly and depend on this BIOS interface exclusively
#                                                   for PS/2 mouse support. In other cases there is no harm in leaving this enabled
# int15 mouse callback does not preserve registers: Set to true if the guest OS or DOS program assigns an INT 15h mouse callback,
#                                                   but does not properly preserve CPU registers. Diagnostic function only (default off).
#                                   keyboardlayout: Language code of the keyboard layout (or none).
#                                             dbcs: Enable DBCS table.
#                                                   CAUTION: Some software will crash without the DBCS table, including the Open Watcom installer.
#                                                   
#                                     filenamechar: Enable filename char table
#                          collating and uppercase: Enable collating and uppercase table
#                                            files: Number of file handles available to DOS programs. (equivalent to "files=" in config.sys)
#  con device use int 16h to detect keyboard input: If set, use INT 16h to detect keyboard input (MS-DOS 6.22 behavior). If clear, detect keyboard input by
#                                                   peeking into the BIOS keyboard buffer (Mainline DOSBox behavior). You will need to set this
#                                                   option for programs that hook INT 16h to handle keyboard input ahead of the DOS console.
#                                                   Microsoft Scandisk needs this option to respond to keyboard input correctly.
#         zero memory on int 21h memory allocation: If set, memory returned by the INT 21h allocation call is zeroed first. This is NOT what
#                                                   DOS actually does, but if set, can help certain DOS games and demos cope with problems
#                                                   related to uninitialized variables in the data or stack segment. If you intend to run a
#                                                   game or demo known to have this problem (Second Unreal, for example), set to true, else
#                                                   set to false. When enabled this option may incur a slight to moderate performance penalty.
xms=true
enable a20 on windows init=true
zero memory on xms memory allocation=false
ems=true
zero memory on ems memory allocation=false
ems system handle memory size=384
umb=true
umb start=0
umb end=0
kernel allocation in umb=false
dynamic kernel allocation=false
keep umb on boot=false
keep private area on boot=false
private area in umb=true
automount=true
int33=true
int 13 extensions=true
biosps2=true
int15 mouse callback does not preserve registers=false
keyboardlayout=auto
dbcs=true
filenamechar=true
collating and uppercase=true
files=127
con device use int 16h to detect keyboard input=true
zero memory on int 21h memory allocation=false

[ipx]
# ipx: Enable ipx over UDP/IP emulation.
ipx=false

[ne2000]
#  ne2000: Enable Ethernet passthrough. Requires [Win]Pcap.
# nicbase: The base address of the NE2000 board.
#  nicirq: The interrupt it uses. Note serial2 uses IRQ3 as default.
# macaddr: The physical address the emulator will use on your network.
#          If you have multiple DOSBoxes running on your network,
#          this has to be changed for each. AC:DE:48 is an address range reserved for
#          private use, so modify the last three number blocks.
#          I.e. AC:DE:48:88:99:AB.
# realnic: Specifies which of your network interfaces is used.
#          Write 'list' here to see the list of devices in the
#          Status Window. Then make your choice and put either the
#          interface number (2 or something) or a part of your adapters
#          name, e.g. VIA here.
ne2000=true
nicbase=300
nicirq=3
macaddr=AC:DE:48:88:99:AA
realnic=1

[fdc, primary]
#                 enable: Enable floppy controller interface
#                    pnp: List floppy controller in ISA PnP BIOS enumeration
#                    irq: IRQ used by floppy controller. Set to 0 for default.
#                         WARNING: Setting the IRQ to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the floppy controller.
#                                  Setting the IRQ to one already occupied by another device or IDE controller will trigger "resource conflict" errors in Windows 95.
#                                  Normally, floppy controllers use IRQ 6.
#                     io: Base I/O port for floppy controller. Set to 0 for default.
#                         WARNING: Setting the I/O port to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the IDE controller.
#                                  Standard I/O ports are 3F0 and 370.
#                    dma: DMA channel for floppy controller. Set to -1 for default.
#                         WARNING: Setting the DMA channel to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the IDE controller.
#                                  Standard DMA channel is 2.
#         int13fakev86io: If set, and int13fakeio is set, certain INT 13h commands will
#                         cause floppy emulation to issue fake CPU I/O traps (GPF) in
#                         virtual 8086 mode and a fake IRQ signal. you must enable this option
#                         if you want 32-bit floppy access in Windows 95 to work with DOSBox.
#           instant mode: If set, all floppy operations are 'instantaneous', they are carried
#                         out without any delay. Real hardware of course has motor, command
#                         and data I/O delays and so this option is off by default for realistic
#                         emulation.
# auto-attach to int 13h: If set, DOSBox-X will automatically attach a disk image as being
#                         inserted into a floppy drive attached to the controller when imgmount is used
#                         to mount a disk image to drive 0/1 or A/B. If not set, you must specify
#                         the -fdc option to imgmount to attach drive A/B to the floppy controller
#                         manually. You must use the -fdc option regardless if loading floppies into
#                         drives attached to any other FDC than the primary controller
#                   mode: Floppy controller mode. What the controller acts like.
#                           ps2                          PS/2 mode (most common)
#                           ps2_model30                  PS/2 model 30
#                           at                           AT mode
#                           xt                           PC/XT mode
#                   chip: Floppy controller chipset
#                           82077aa                      Intel 82077AA chipset
#                           82072                        Intel 82072 chipset
#                           nec_uPD765                   NEC uPD765 chipset
#                           none                         No chipset (For PC/XT mode)
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, secondary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, tertiary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, quaternary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, quinternary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, sexternary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, septernary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, octernary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[ide, primary]
#                  enable: Enable IDE interface
#                     pnp: List IDE device in ISA PnP BIOS enumeration
#                     irq: Alternate I/O port for IDE controller (alt status, etc). Set to 0 for default.
#                          WARNING: Setting the I/O port to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the IDE controller.
#                                   For best compatability set this value to io+0x206, for example, io=1F0 altio=3F6.
#                                   The primary IDE controller will not claim port 3F7 if the primary floppy controller is enabled due to I/O port overlap in the 3F0-3F7 range.
#             int13fakeio: If set, force IDE state change on certain INT 13h commands.
#                          IDE registers will be changed as if BIOS had carried out the action.
#                          If you are running Windows 3.11 or Windows 3.11 Windows for Workgroups
#                          you must enable this option (and use -reservecyl 1) if you want 32-bit
#                          disk access to work correctly in DOSBox.
#          int13fakev86io: If set, and int13fakeio is set, certain INT 13h commands will
#                          cause IDE emulation to issue fake CPU I/O traps (GPF) in
#                          virtual 8086 mode and a fake IRQ signal. you must enable this option
#                          if you want 32-bit disk access in Windows 95 to work with DOSBox.
#            enable pio32: If set, 32-bit I/O reads and writes are handled directly (much like PCI IDE implementations)
#                          If clear, 32-bit I/O will be handled as if two 16-bit I/O (much like ISA IDE implementations)
#            ignore pio32: If 32-bit I/O is enabled, attempts to read/write 32-bit I/O will be ignored entirely.
#                          In this way, you can have DOSBox emulate one of the strange quirks of 1995-1997 era
#                          laptop hardware
#      cd-rom spinup time: Emulated CD-ROM time in ms to spin up if CD is stationary.
#                          Set to 0 to use controller or CD-ROM drive-specific default.
# cd-rom spindown timeout: Emulated CD-ROM time in ms that drive will spin down automatically when not in use
#                          Set to 0 to use controller or CD-ROM drive-specific default.
#  cd-rom insertion delay: Emulated CD-ROM time in ms that drive will report "medium not present"
#                          to emulate the time it takes for someone to take out a CD and insert a new one when
#                          DOSBox is instructed to swap or change CDs.
#                          When running Windows 95 or higher a delay of 4000ms is recommended to ensure that
#                          auto-insert notification triggers properly.
#                          Set to 0 to use controller or CD-ROM drive-specific default.
enable=true
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, secondary]
enable=true
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, tertiary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, quaternary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, quinternary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, sexternary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, septernary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, octernary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[autoexec]
KEYB hu
imgmount 0 "/home/legacy/LINUX CD/floppyA.IMA" -t floppy -fs none
imgmount 1 "/home/legacy/LINUX CD/floppyB.IMA" -t floppy -fs none
imgmount 2 "/home/legacy/VIRT/disks/doslinux.img" -size 512,63,64,1023 -t hdd -fs none
boot -l a

slackware.log

➜  YkwhongDosbox dosbox-x -conf slackware.conf
LOG: Early LOG Init complete
LOG: Logging init: beginning logging proper. This is the end of the early init logging
LOG: Logging: No logfile was given. All further logging will be discarded.
LOG: DOSBox-X version 0.82.1
LOG:          0       MISC:Copyright 2002-2015 enhanced branch by The Great Codeholio, forked from the main project by the DOSBox Team, published under GNU GPL.
LOG:          0       GUI:Press Ctrl-F10 to capture/release mouse, Alt-F10 for configuration.
LOG: USING AVI+ZMBV
LOG: One joystick reported, initializing with 4axis
LOG: Using joystick GreenAsia Inc.      USB  Joystick   with 2 axes, 10 buttons and 1 hat(s)
LOG:          0 WARN  MISC:Can't find matching event for hand_redraw = "key 284 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_savestate = "key 286 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_loadstate = "key 290 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_prevslot = "key 287 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_nextslot = "key 288 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_dynamic = "key 51 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_caprawopl = "key 288" "key 288 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_ejectpage = "key 283 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0       MISC:MAPPER: Loading mapper settings from mapper-SVN-Daum.map
LOG: VOODOO LFB now at d0000000
LOG:          0       MISC:MPU IRQ 9
LOG:          0       VGA:Video RAM: 4096KB
LOG: GetDesktopResolution reading X11 desktop resolution
LOG: Root window (ID 467) is 1360 x 768
LOG: Allocated APM BIOS pm entry point at f000:13e0
LOG: Writing code to f13e0
LOG:          0 WARN  MISC:Found pending event for hand_caprawopl from user's file, applying now
LOG:          0       SBLASTER:DSP:Reset
LOG:          2       INT10:Set Video Mode 3
LOG:          2       VGA:Blinking 8
LOG:          2       KEYBOARD:INT 15H PS/2 emulation enabled
LOG: ISA Plug & Play BIOS enabled
LOG: VGA ROM BIOS init callback
LOG:          6       INT10:Set Video Mode 3
LOG:          6       MOUSE:New video is the same as the old
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page c8
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page c9
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page ca
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cb
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cc
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cd
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page ce
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cf
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d0
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d1
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d2
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d3
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d4
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d5
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d6
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d7
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d8
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d9
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page da
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page db
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page dc
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page dd
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page de
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page df
LOG:         14       INT10:Set Video Mode 12
LOG:         14       VGA:Blinking 0
LOG:         38       VGA:VGA refresh rate is now, 59.940
LOG: pixratio 1.000, dw false, dh false
LOG:    2968746       INT10:Set Video Mode 3
LOG:    2968746       VGA:Blinking 8
LOG: kernel allocation in umb option incompatible with other settings, disabling.
LOG:    2968749 ERROR BIOS:Keyboard layout file auto not found
LOG:    2968749 ERROR BIOS:Keyboard layout file auto not found
LOG:    2968749       MISC:UMB assigned region is 0xd000-0xdfff
LOG: EMS page frame at 0xe000-0xefff
LOG:    2968749       FILES:file open command 2 file CON
LOG:    2968749       FILES:file open command 2 file CON
LOG:    2968749       FILES:file open command 2 file CON
LOG:    2968749       FILES:file open command 2 file PRN
LOG:    2968749       FILES:file open command 2 file CON
LOG:    2968749       KEYBOARD:INT 33H emulation enabled
LOG:    2969676       VGA:VGA refresh rate is now, 70.087
LOG: pixratio 1.200, dw false, dh false
LOG:    2979889       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    2979889       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    2980281       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    2980424       EXEC:Execute KEYB.COM 0
LOG:    2980424       FILES:file open command 0 file KEYB.COM
LOG:    2980434       BIOS:Keyboard layout hu successfully loaded
LOG:    3287583       BIOS:Codepage 852 successfully loaded
LOG:    3288101       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3288940       EXEC:Execute imgmount.COM 0
LOG:    3288940       FILES:file open command 0 file imgmount.COM
LOG: IDE: index -1 slave=0
LOG: Identified '/home/legacy/LINUX CD/floppyA.IMA' as C/H/S 80/2/18 512 bytes/sector
LOG:    3288950       MISC:Mounting image as C/H/S 2/16/63 with 512 bytes/sector
LOG:    3289672       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3290511       EXEC:Execute imgmount.COM 0
LOG:    3290511       FILES:file open command 0 file imgmount.COM
LOG: IDE: index -1 slave=0
LOG: Identified '/home/legacy/LINUX CD/floppyB.IMA' as C/H/S 80/2/18 512 bytes/sector
LOG:    3290521       MISC:Mounting image as C/H/S 2/16/63 with 512 bytes/sector
LOG:    3291243       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3292338       EXEC:Execute imgmount.COM 0
LOG:    3292338       FILES:file open command 0 file imgmount.COM
LOG: IDE: index 0 slave=0
LOG:    3292348       MISC:Mounting image as C/H/S 1023/64/63 with 512 bytes/sector
LOG: Mapping BIOS DISK C/H/S 1023/64/63 as IDE 4092/16/63
LOG:    3293106       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3293277       EXEC:Execute boot.COM 0
LOG:    3293277       FILES:file open command 0 file boot.COM
LOG: Booting guest OS stack_seg=0x7000 load_seg=0x07c0
LOG: Removing UMB block 0xd000-0xdfff
LOG: Alright: DOS kernel shutdown, booting a guest OS
LOG:   CS:IP=0000:7c00 SS:SP=7000:0100 AX=0000 BX=7c00 CX=0001 DX=0000
LOG:   37052092 ERROR BIOS:INT13: Function 15 called on drive 81 (dos drive 3)
LOG:   37052125       BIOS:INT15:Function 0x88 Remaining FFFF kb
LOG:   37052269 ERROR BIOS:INT13: Function 15 called on drive 81 (dos drive 3)
LOG:   37052420       PIC:0:Base vector 20
LOG:   37052425       PIC:1:Base vector 28
LOG:   37052430       PIC:0:ICW 3 4
LOG:   37052435       PIC:1:ICW 3 2
LOG:   37052440       PIC:0:ICW 4 1
LOG:   37052444       PIC:1:ICW 4 1
LOG: DOSBox switched to max cycles, because of the setting: cycles=auto. If the game runs too fast try a fixed cycles amount in DOSBox's options.
LOG:  104307712       PIT:PIT 0 Timer at 99.9985 Hz mode 2
LOG:  120934755 ERROR KEYBOARD:Program is writing 8042 AUX. If you intend to use PS/2 mouse emulation you may consider adding aux=1 to your dosbox.conf
LOG:  120934781 ERROR KEYBOARD:60:Unhandled command 5A
LOG: IDE ATA command ec dh=0xa0 count=0x00 chs=00/00/00
LOG:  146730801       SBLASTER:IDE ATA command ec
LOG: IDE ATA command 91 dh=0xaf count=0x3f chs=ffc/0f/3f
LOG:  630528408       SBLASTER:IDE ATA command 91
LOG: IDE ATA command 10 dh=0xe0 count=0x3f lba=00ffc3f/03ef040
LOG:  631037687       SBLASTER:IDE ATA command 10
LOG: IDE ATA command c6 dh=0xe0 count=0x00 lba=0000000/03ef040
LOG:  631038637       SBLASTER:IDE ATA command c6
LOG: IDE abort dh=0xe0 with error on 0x1f0
LOG: IDE ATA command 10 dh=0xe0 count=0x3f lba=0000000/03ef040
LOG:  631056210       SBLASTER:IDE ATA command 10
LOG: IDE ATA command 20 dh=0xe0 count=0x02 lba=0000000/03ef040
LOG:  631057009       SBLASTER:IDE ATA command 20

gentoo.conf

# This is the configuration file for DOSBox SVN-Daum. (Please use the latest version of DOSBox)
# Lines starting with a # are comment lines and are ignored by DOSBox.
# They are used to (briefly) document the effect of each option.

[sdl]
#       fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back)
#       fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox.
#   fullresolution: What resolution to use for fullscreen: original, desktop or a fixed size (e.g. 1024x768).
#                     Using your monitor's native resolution with aspect=true might give the best results.
#                     If you end up with small window on a large screen, try an output different from surface.
# windowresolution: Scale the window to this size IF the output device supports hardware scaling.
#                     (output=surface does not!)
#           output: What video system to use for output.
#                   Possible values: surface, overlay, opengl, openglnb, openglhq.
#         autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock)
#      sensitivity: Mouse sensitivity.
#      waitonerror: Wait before closing the console if dosbox has an error.
#         priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized.
#                     pause is only valid for the second entry.
#                   Possible values: lowest, lower, normal, higher, highest, pause.
#       mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the default value.
#     usescancodes: Avoid usage of symkeys, might not work on all operating systems.
#         overscan: Width of overscan border (0 to 10). (works only if output=surface)
fullscreen=false
fulldouble=true
fullresolution=desktop
windowresolution=original
output=opengl
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper-SVN-Daum.map
usescancodes=false
overscan=0

[log]
#     logfile: file where the log messages will be saved to
#         vga: Enable/Disable logging of this type.
#      vgagfx: Enable/Disable logging of this type.
#     vgamisc: Enable/Disable logging of this type.
#       int10: Enable/Disable logging of this type.
#    sblaster: Enable/Disable logging of this type.
# dma_control: Enable/Disable logging of this type.
#         fpu: Enable/Disable logging of this type.
#         cpu: Enable/Disable logging of this type.
#      paging: Enable/Disable logging of this type.
#         fcb: Enable/Disable logging of this type.
#       files: Enable/Disable logging of this type.
#       ioctl: Enable/Disable logging of this type.
#        exec: Enable/Disable logging of this type.
#     dosmisc: Enable/Disable logging of this type.
#         pit: Enable/Disable logging of this type.
#    keyboard: Enable/Disable logging of this type.
#         pic: Enable/Disable logging of this type.
#       mouse: Enable/Disable logging of this type.
#        bios: Enable/Disable logging of this type.
#         gui: Enable/Disable logging of this type.
#        misc: Enable/Disable logging of this type.
#          io: Enable/Disable logging of this type.
#         pci: Enable/Disable logging of this type.
#         sst: Enable/Disable logging of this type.
logfile=
vga=true
vgagfx=true
vgamisc=true
int10=true
sblaster=true
dma_control=true
fpu=true
cpu=true
paging=true
fcb=true
files=true
ioctl=true
exec=true
dosmisc=true
pit=true
keyboard=true
pic=true
mouse=true
bios=true
gui=true
misc=true
io=true
pci=true
sst=true

[dosbox]
#                                          language: Select another language file.
#                                           machine: The type of machine DOSBox tries to emulate.
#                                                    Possible values: hercules, cga, cga_mono, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe, amstrad.
#                                          vmemsize: Amount of video memory in megabytes.
#                                                      The maximum resolution and color depth the svga_s3 will be able to display
#                                                      is determined by this value.
#                                                       0: 512k (800x600  at 256 colors)
#                                                      1: 1024x768  at 256 colors or 800x600  at 64k colors
#                                                      2: 1600x1200 at 256 colors or 1024x768 at 64k colors or 640x480 at 16M colors
#                                                      4: 1600x1200 at 64k colors or 1024x768 at 16M colors
#                                                      8: up to 1600x1200 at 16M colors
#                                                    For build engine games, use more memory than in the list above so it can
#                                                    use triple buffering and thus won't flicker.
#                                                    
#                                        vmemsizekb: Amount of video memory in kilobytes, in addition to vmemsize
#                                          captures: Directory where things like wave, midi, screenshot get captured.
#                       mainline compatible mapping: If set, arrange private areas, UMBs, and DOS kernel structures by default in the same way the mainline branch would do it.
#                                                    If cleared, these areas are allocated dynamically which may improve available memory and emulation accuracy.
#                                                    If your DOS game breaks under DOSBox-X but works with mainline DOSBox setting this option may help.
#                  mainline compatible bios mapping: If set, arrange the BIOS area in the same way that the mainline branch would do it.
#                                                    If cleared, these areas are allocated dynamically which may improve available memory and emulation accuracy.
#                                                    If your DOS game breaks under DOSBox-X but works with mainline DOSBox setting this option may help.
#                                adapter rom is ram: Map adapter ROM as RAM (mainline DOSBox 0.74 behavior). When clear, unused adapter ROM is mapped out
#                            shell environment size: Size of the DOSBox shell environment block, in bytes
#                                 private area size: Set DOSBox-X private memory area size. This area contains private memory structures used by the DOS kernel.
#                                                    It is discarded when you boot into another OS. Mainline DOSBox uses 32KB. Testing shows that it is possible
#                                                    to run DOSBox with as little as 4KB. If DOSBox-X aborts with error "not enough memory for internal tables"
#                                                    then you need to increase this value.
#                                               a20: A20 gate emulation mode.
#                                                    The on/off/on_fake/off_fake options are intended for testing and debugging DOS development,
#                                                    or to emulate obscure hardware, or to work around potential extended memory problems with DOS programs.
#                                                    on_fake/off_fake are intended to test whether a program carries out a memory test to ensure the A20
#                                                    gate is set as intended (as HIMEM.SYS does). If it goes by the gate bit alone, it WILL crash.
#                                                    This parameter is also changeable from the builtin A20GATE command.
#                                                      fast                         Emulate A20 gating by remapping the first 64KB @ 1MB boundary (fast, mainline DOSBox behavior)
#                                                      mask                         Emulate A20 gating by masking memory I/O address (accurate)
#                                                      off                          Lock A20 gate off (Software/OS cannot enable A20)
#                                                      on                           Lock A20 gate on (Software/OS cannot disable A20)
#                                                      off_fake                     Lock A20 gate off but allow bit to toggle (hope your DOS game tests the HMA!)
#                                                      on_fake                      Lock A20 gate on but allow bit to toggle
#                                     isa bus clock: ISA BCLK frequency.
#                                                    WARNING: In future revisions, PCI/motherboard chipset emulation will allow the guest OS/program to alter this value at runtime.
#                                                      std8.3                       8.333MHz (typical 386-class or higher)
#                                                      std8                         8MHz
#                                                      std6                         6MHz
#                                                      std4.77                      4.77MHz (precisely 1/3 x 14.31818MHz). Bus frequency of older PC/XT systems.
#                                                      oc10                         10MHz
#                                                      oc12                         12MHz
#                                                      oc15                         15MHz
#                                                      oc16                         16MHz
#                                                      <integer or float>           Any integer or floating point value will be used as the clock frequency in Hz
#                                                      <integer/integer ratio>      If a ratio is given (num/den), the ratio will be used as the clock frequency
#                                     pci bus clock: PCI bus frequency.
#                                                    WARNING: In future revisions, PCI/motherboard chipset emulation will allow the guest OS/program to alter this value at runtime.
#                                                      std33.3                      33.333MHz (very common setting on motherboards)
#                                                      std30                        30MHz (some older mid-1990's Pentium systems)
#                                                      std25                        25MHz
#                                                      <integer or float>           Any integer or floating point value will be used as the clock frequency in Hz
#                                                      <integer/integer ratio>      If a ratio is given (num/den), the ratio will be used as the clock frequency
#                           rom bios allocation max: Maximum size (top down from 1MB) allowed for ROM BIOS dynamic allocation in KB
#                             rom bios minimum size: Once ROM BIOS layout is finalized, trim total region down to a minimum amount in KB
#                                           memsize: Amount of memory DOSBox has in megabytes.
#                                                      This value is best left at its default to avoid problems with some games,
#                                                      though few games might require a higher value.
#                                                      There is generally no speed advantage when raising this value.
#                                                      Programs that use 286 protected mode like Windows 3.0 in Standard Mode may crash with more than 15MB.
#                                         memsizekb: Amount of memory DOSBox has in kilobytes.
#                                                      This value should normally be set to 0.
#                                                      If nonzero, overrides the memsize parameter.
#                                                      Finer grained control of total memory may be useful in
#                                                      emulating ancient DOS machines with less than 640KB of
#                                                      RAM or early 386 systems with odd extended memory sizes.
#                                     dos mem limit: Limit DOS conventional memory to this amount. Does not affect extended memory.
#                                                    Some DOS programs may find < 640KB + extended memory an unusual situation. For diagnostic purposes.
#                          isa memory hole at 512kb: If set, emulate an ISA memory hole at the 512KB to 640KB area (0x80000-0x9FFFF).
#                                          memalias: Memory aliasing emulation, in number of valid address bits.
#                                                    . Many 386/486 class motherboards and processors prior to 1995
#                                                      suffered from memory aliasing for various technical reasons. If the software you are
#                                                      trying to run assumes aliasing, or otherwise plays cheap tricks with paging,
#                                                      enabling this option can help. Note that enabling this option can cause slight performance degredation. Set to 0 to disable.
#                                                      Recommended values when enabled:
#                                                        24: 16MB aliasing. Common on 386SX systems (CPU had 24 external address bits)
#                                                            or 386DX and 486 systems where the CPU communicated directly with the ISA bus (A24-A31 tied off)
#                                                        26: 64MB aliasing. Some 486s had only 26 external address bits, some motherboards tied off A26-A31
#                            vga bios size override: VGA BIOS size override. Override the size of the VGA BIOS (normally 32KB in compatible or 12KB in non-compatible).
# video bios dont duplicate cga first half rom font: If set, save 4KB of EGA/VGA ROM space by pointing to the copy in the ROM BIOS of the first 128 chars
#    video bios always offer 14-pixel high rom font: If set, video BIOS will always carry the 14-pixel ROM font. If clear, 14-pixel rom font will not be offered except for EGA/VGA emulation.
#    video bios always offer 16-pixel high rom font: If set, video BIOS will always carry the 16-pixel ROM font. If clear, 16-pixel rom font will not be offered except for VGA emulation.
#        video bios enable cga second half rom font: If set, and emulating CGA/PCjr/Tandy, automatically provide the second half of the 8x8 ROM font.
#                                                    This setting is ignored for EGA/VGA emulation. If not set, you will need a utility like GRAFTABL.COM to load the second half of the ROM font for graphics.
#                                                    NOTE: if you disable the 14 & 16 pixel high font AND the second half when machine=cga, you will disable video bios completely.
#                                         forcerate: Force the VGA framerate to a specific value(ntsc, pal, or specific hz), no matter what
#                                     sierra ramdac: Whether or not to emulate a Sierra or compatible RAMDAC at port 3C6h-3C9h.
#                                                    Some DOS games expect to access port 3C6h to enable highcolor/truecolor SVGA modes on older chipsets.
#                                                    Disable if you wish to emulate SVGA hardware that lacks a RAMDAC or (depending on the chipset) does
#                                                    not emulate a RAMDAC that is accessible through port 3C6h. This option has no effect for non-VGA video hardware.
#                            sierra ramdac lock 565: When emulating High Sierra highcolor RAMDAC, assume 5:6:5 at all times if set. Else,
#                                                    bit 6 of the DAC command selects between 5:5:5 and 5:6:5. Set this option for demos or
#                                                    games that got the command byte wrong (MFX Transgrassion 2) or any other demo that is
#                                                    not rendering highcolor 16bpp correctly.
#                              page flip debug line: VGA debugging switch. If set, an inverse line will be drawn on the exact scanline that the CRTC display offset registers were written.
#                                                    This can be used to help diagnose whether or not the DOS game is page flipping properly according to vertical retrace if the display on-screen is flickering.
#                  vertical retrace poll debug line: VGA debugging switch. If set, an inverse green dotted line will be drawn on the exact scanline that the CRTC status port (0x3DA) was read.
#                                                    This can be used to help diagnose whether the DOS game is propertly waiting for vertical retrace.
#                                           cgasnow: When machine=cga, determines whether or not to emulate CGA snow
#                               allow port 92 reset: If set (default), allow the application to reset the CPU through port 92h
#                                    enable port 92: Emulate port 92h (PS/2 system control port A). If you want to emulate a system that predates the PS/2, set to 0.
#                         enable 1st dma controller: Emulate 1st (AT) DMA controller (default). Set to 0 if you wish to emulate a system that lacks DMA (PCjr and some Tandy systems)
#                         enable 2nd dma controller: Emulate 2nd (AT) DMA controller (default). Set to 0 if you wish to emulate a PC/XT system without 16-bit DMA.
#                                                    Note: mainline DOSBox automatically disables 16-bit DMA when machine=cga or machine=hercules, while DOSBox-X does not.
#                       allow dma address decrement: If set, allow increment & decrement modes as specified in the 8237 datasheet.
#                                                    If clear, always increment the address (as if to emulate clone 8237 implementations that skipped the inc/dec bit).
#                   enable dma extra page registers: If set, emulate the extra page registers (I/O ports 0x80, 0x84-0x86, 0x88, 0x8C-0x8E), like actual hardware.
#                                                    Note that mainline DOSBox behavior is to NOT emulate these registers.
#                     dma page registers write-only: Normally (on AT hardware) the DMA page registers are read/write. Set this option if you want to emulate PC/XT hardware where the page registers are write-only.
#                                  enable slave pic: Enable slave PIC (IRQ 8-15). Set this to 0 if you want to emulate a PC/XT type arrangement with IRQ 0-7 and no IRQ 2 cascade.
#                                enable pc nmi mask: Enable PC/XT style NMI mask register (0xA0). Note that this option conflicts with the secondary PIC and will be ignored if the slave PIC is enabled.
#                             rom bios 8x8 CGA font: If set, or mainline compatible bios mapping, a legacy 8x8 CGA font (first 128 characters) is stored at 0xF000:0xFA6E. DOS programs that do not use INT 10h to locate fonts might require that font to be located there.
#                    rom bios video parameter table: If set, or mainline compatible bios mapping, DOSBox will emulate the video parameter table and assign that to INT 1Dh. If clear, table will not be provided.
#                 allow more than 640kb base memory: If set, and space is available, allow conventional memory to extend past 640KB.
#                                                    For example, if machine=cga, conventional memory can extend out to 0xB800 and provide up to 736KB of RAM.
#                                                    This allows you to emulate PC/XT style memory extensions.
#                     vesa lfb base scanline adjust: If non-zero, the VESA BIOS will report the linear framebuffer as offset by this many scanlines.
#                                                    For example, if the LFB is at 0xC0000000 and you need the demo to draw 2 scan lines lower,
#                                                    at 0xC0000000 + (320*2) (320x240x256 mode), you would set this to 2. This option should be set
#                                                    to zero by default unless needed for certain DOS demos that have sloppy VESA linear framebuffer
#                                                    rendering code that renders a few scanlines UP into undefined memory preceeding the linear framebuffer.
#                                                    This option DOES NOT affect the visible offset of the linear framebuffer, it only affects the physical
#                                                    memory location reported by VESA BIOS emulation.
#                                allow hpel effects: If set, allow the DOS demo or program to change the horizontal pel (panning) register per scanline.
#                                                    Some early DOS demos use this to create waving or sinus effects on the picture. Not very many VGA
#                                                    chipsets allow this, so far, only ATI chipsets are known to support this effect. Disabled by default.
#                            allow hretrace effects: If set, allow the DOS demo or program to make the picture wavy by playing with the 'start horizontalretrace' register of the CRTC during the active picture. Some early DOS demos (Copper by Surprise!productions) need this option set for some demo effects to work. Disabled by default.
#                            hretrace effect weight: If emulating hretrace effects, this parameter adds 'weight' to the offset to smooth it out.
#                                                    the larger the number, the more averaging is applied. This is intended to emulate the inertia
#                                                    of the electron beam in a CRT monitor
#                      vesa vbe 1.2 modes are 32bpp: If set, truecolor (16M color) VESA BIOS modes in the 0x100-0x11F range are 32bpp. If clear, they are 24bpp.
#                                                    Some DOS games and demos assume one bit depth or the other and do not enumerate VESA BIOS modes, which is why this
#                                                    option exists.
#                   allow low resolution vesa modes: If set, allow low resolution VESA modes (320x200x16/24/32bpp and so on). You could set this to false to simulate
#                                                    SVGA hardware with a BIOS that does not support the lowres modes for testing purposes.
#                            allow 32bpp vesa modes: If the DOS game or demo has problems with 32bpp VESA modes, set to 'false'
#                            allow 24bpp vesa modes: If the DOS game or demo has problems with 24bpp VESA modes, set to 'false'
#                            allow 16bpp vesa modes: If the DOS game or demo has problems with 16bpp VESA modes, set to 'false'
#                            allow 15bpp vesa modes: If the DOS game or demo has problems with 15bpp VESA modes, set to 'false'
#                             allow 8bpp vesa modes: If the DOS game or demo has problems with 8bpp VESA modes, set to 'false'
#                             allow 4bpp vesa modes: If the DOS game or demo has problems with 4bpp VESA modes, set to 'false'
#                              allow tty vesa modes: If the DOS game or demo has problems with text VESA modes, set to 'false'
#                           enable vga resize delay: If the DOS game you are running relies on certain VGA raster tricks that affect active display area, enable this option.
#                                                    This adds a delay between VGA mode changes and window updates. It also means that if you are capturing a demo or game,
#                                                    that your capture will also show a few garbled frames at any point mode changes occur, which is why this option is disabled
#                                                    by default. If you intend to run certain DOS games and demos like DoWhackaDo, enable this option.
#  resize only on vga active display width increase: If set, changes to the Display End register of the CRTC do not trigger DOSBox to resize it's window
#                                                    IF the value written is less than the current value. Some demos like DoWhackaDo need this option set
#                                                    because of the way it's raster effects work. If the DOSBox window rapidly changes size during a demo
#                                                    try setting this option. Else, leave it turned off. Changes to other VGA CRTC registers will trigger
#                                                    a DOSBox mode change as normal regardless of this setting.
#                                    enable pci bus: Enable PCI bus emulation
#                                          pit hack: If set, demo/game-specific hacks are applied to PIT timer emulation to help
#                                                    stabilize the demo and run more reliably. Valid values are:
#                                                      'project_angel_demo'            If you intend to run the Project Angel demo, use this
#                                                                                      setting. The PIT timer is forced to one of two values
#                                                                                      to resolve hangups, timing issues, music skipping on
#                                                                                      video mode changes, and VGA tearlines.
#                                                      'pc_speaker_as_timer'           A few early DOS demos apparently like to use PIT 2 as
#                                                                                      a timer source (where normally PIT 2 is used to generate
#                                                                                      a square wave to drive the PC speaker). If the demo you
#                                                                                      are running seems to run at half the normal speed for no
#                                                                                      logical reason, try this hack. Demos that need this hack:
#                                                                                         - Impact Studios, Legend
#                                                    Possible values: , project_angel_demo, pc_speaker_as_timer.
language=
#machine=svga_s3
machine=vgaonly
vmemsize=4
vmemsizekb=0
captures=capture
mainline compatible mapping=true
mainline compatible bios mapping=true
adapter rom is ram=false
shell environment size=0
private area size=32768
a20=mask
isa bus clock=std8.3
pci bus clock=std33.3
rom bios allocation max=0
rom bios minimum size=0
#memsize=16
memsize=128
memsizekb=0
dos mem limit=0
isa memory hole at 512kb=false
memalias=0
vga bios size override=0
video bios dont duplicate cga first half rom font=false
video bios always offer 14-pixel high rom font=true
video bios always offer 16-pixel high rom font=true
video bios enable cga second half rom font=true
forcerate=
sierra ramdac=true
sierra ramdac lock 565=false
page flip debug line=false
vertical retrace poll debug line=false
cgasnow=true
allow port 92 reset=true
enable port 92=true
enable 1st dma controller=true
enable 2nd dma controller=true
allow dma address decrement=true
enable dma extra page registers=true
dma page registers write-only=false
enable slave pic=true
enable pc nmi mask=true
rom bios 8x8 CGA font=true
rom bios video parameter table=true
allow more than 640kb base memory=false
vesa lfb base scanline adjust=0
allow hpel effects=false
allow hretrace effects=false
hretrace effect weight=4.00
vesa vbe 1.2 modes are 32bpp=true
allow low resolution vesa modes=true
allow 32bpp vesa modes=true
allow 24bpp vesa modes=true
allow 16bpp vesa modes=true
allow 15bpp vesa modes=true
allow 8bpp vesa modes=true
allow 4bpp vesa modes=true
allow tty vesa modes=true
enable vga resize delay=false
resize only on vga active display width increase=false
enable pci bus=true
pit hack=

[render]
#  frameskip: How many frames DOSBox skips before drawing one.
#     aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!.
#   linewise: Draw the display line by line. Needed for certain special graphics effects in games and demos. Can be changed at runtime but will be put in effect at the next mode switch.
#      char9: Allow 9-pixel wide text mode fonts.
# doublescan: If set, doublescanned output emits two scanlines for each source line, in the
#             same manner as the actual VGA output (320x200 is rendered as 640x400 for example).
#             If clear, doublescanned output is rendered at the native source resolution (320x200 as 320x200).
#             This affects the raster PRIOR to the software or hardware scalers. Choose wisely.
#             
#     scaler: Scaler used to enlarge/enhance low resolution modes. If 'forced' is appended,
#             then the scaler will be used even if the result might not be desired.
#             Possible values: none, normal2x, normal3x, normal4x, normal5x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x, hardware_none, hardware2x, hardware3x, hardware4x, hardware5x, xbrz.
#    autofit: Best fits image to window
#             - Intended for output=direct3d, fullresolution=original, aspect=true
frameskip=0
aspect=false
linewise=false
char9=false
doublescan=true
scaler=hardware2x
autofit=true

[vsync]
# vsyncmode: Synchronize vsync timing to the host display. Requires calibration within dosbox.
#            Possible values: off, on, force, host.
# vsyncrate: Vsync rate used if vsync is enabled. Ignored if vsyncmode is set to host (win32).
#            Possible values:.
vsyncmode=off
vsyncrate=75

[cpu]
#                                core: CPU Core used in emulation. auto will switch to dynamic if available and
#                                      appropriate.
#                                      Possible values: auto, dynamic, normal, full, simple.
#                          enable msr: Allow RDMSR/WRMSR instructions. This option is only meaningful when cputype=pentium.
#                ignore undefined msr: Ignore RDMSR/WRMSR on undefined registers. Normally the CPU will fire an Invalid Opcode exception in that case.
#                                      This option is off by default, enable if using software or drivers that assumes the presence of
#                                      certain MSR registers without checking. If you are using certain versions of the 3Dfx glide drivers for MS-DOS
#                                      you will need to set this to TRUE as 3Dfx appears to have coded GLIDE2.OVL to assume the presence
#                                      of Pentium Pro/Pentium II MTRR registers.
#       dynamic core cache block size: dynamic core cache block size. default value is 32. change this value carefully.
#                                      according to forum discussion, setting this to 1 can aid debugging, however doing so
#                                      also causes problems with 32-bit protected mode DOS games and reduces the performance
#                                      of the dynamic core.
#                                      
#                             cputype: CPU Type used in emulation. auto emulates a 486 which tolerates Pentium instructions.
#                                      Possible values: auto, 386, 486, pentium, 386_prefetch, pentium_mmx.
#                              cycles: Amount of instructions DOSBox tries to emulate each millisecond.
#                                      Setting this value too high results in sound dropouts and lags.
#                                      Cycles can be set in 3 ways:
#                                        'auto'          tries to guess what a game needs.
#                                                        It usually works, but can fail for certain games.
#                                        'fixed #number' will set a fixed amount of cycles. This is what you usually
#                                                        need if 'auto' fails (Example: fixed 4000).
#                                        'max'           will allocate as much cycles as your computer is able to
#                                                        handle.
#                                      Possible values: auto, fixed, max.
#                             cycleup: Amount of cycles to decrease/increase with keycombos.(CTRL-F11/CTRL-F12)
#                           cycledown: Setting it lower than 100 will be a percentage.
#            non-recursive page fault: Determines whether CPU emulation attempts to use a non-recursive method to emulate guest OS page fault exceptions.
#                                      If false (mainline DOSBox compatible), page faults are emulated using a recursive method, which is fine
#                                      for MS-DOS and Windows 3.1 emulation scenarios where the exception handler will always return directly to the fault location.
#                                      However, that assumption is not necessarily true for preemptive multitasking operating systems like Windows 95, for which
#                                      this setting should be enabled to help avoid recursion issues in DOSBox.
#                                      WARNING: this feature is not entirely stable yet especially if the dynamic core is involved.
#                    ignore opcode 63: When debugging, do not report illegal opcode 0x63.
#                                      Enable this option to ignore spurious errors while debugging from within Windows 3.1/9x/ME
#                             apmbios: Emulate Advanced Power Management BIOS calls.
#                                      Do not enable if you are running Windows ME.
#              apmbios allow realmode: Allow guest OS to connect from real mode.
# apmbios allow 16-bit protected mode: Allow guest OS to connect from 16-bit protected mode.
# apmbios allow 32-bit protected mode: Allow guest OS to connect from 32-bit protected mode.
#                                      If you want power management in Windows 95/98/ME (beyond using the APM to shutdown the computer) you MUST enable this option.
#                                      Windows 95/98/ME does not support the 16-bit real and protected mode APM BIOS entry points.
#                  integration device: Enable DOSBox integration I/O device. This can be used by the guest OS to match mouse pointer position, for example. EXPERIMENTAL!
#                          isapnpbios: Emulate ISA Plug & Play BIOS. Enable if using DOSBox to run a PnP aware DOS program or if booting Windows 9x.
#                                      Do not disable if Windows 9x is configured around PnP devices, you will likely confuse it.
#                           realbig16: Allow the B (big) bit in real mode. If set, allow the DOS program to set the B bit,
#                                      then jump to realmode with B still set (aka Huge Unreal mode). Needed for Project Angel.
core=auto
enable msr=true
ignore undefined msr=false
dynamic core cache block size=32
cputype=486
cycles=auto
cycleup=10
cycledown=20
non-recursive page fault=true
ignore opcode 63=true
apmbios=true
apmbios allow realmode=true
apmbios allow 16-bit protected mode=true
apmbios allow 32-bit protected mode=true
integration device=true
isapnpbios=true
realbig16=false

[keyboard]
#                     aux: Enable emulation of the 8042 auxiliary port. PS/2 mouse emulation requires this to be enabled.
#                          You should enable this if you will be running Windows ME or any other OS that does not use the BIOS to receive mouse events.
# allow output port reset: If set (default), allow the application to reset the CPU through the keyboard controller.
#                          This option is required to allow Windows ME to reboot properly, whereas Windows 9x and earlier
#                          will reboot without this option using INT 19h
#               auxdevice: Type of PS/2 mouse attached to the AUX port
#                          Possible values: none, 2button, 3button, intellimouse, intellimouse45.
aux=false
allow output port reset=true
auxdevice=intellimouse

[pci]
#    voodoo: Enable VOODOO support.
#            Possible values: false, software, opengl, auto.
# voodoomem: Specify VOODOO card memory size.
#              'standard'      4MB card (2MB front buffer + 1x2MB texture unit)
#              'max'           12MB card (4MB front buffer + 2x4MB texture units)
#            Possible values: standard, max.
voodoo=opengl
voodoomem=max

[mixer]
#    nosound: Enable silent mode, sound is still emulated though.
# swapstereo: Swaps the left and right stereo channels.
#       rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality.
#             Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#  blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged.
#             Possible values: 1024, 2048, 4096, 8192, 512, 256.
#  prebuffer: How many milliseconds of data to keep on top of the blocksize.
nosound=false
swapstereo=false
rate=44100
blocksize=2048
prebuffer=20

[midi]
#              mpu401: Type of MPU-401 to emulate.
#                      Possible values: intelligent, uart, none.
#          mididevice: Device that will receive the MIDI data from MPU-401.
#                      Possible values: default, win32, alsa, oss, coreaudio, coremidi, mt32, synth, timidity, none.
#          midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use.
#                        or in the case of coreaudio, you can specify a soundfont here.
#                        When using a Roland MT-32 rev. 0 as midi output device, some games may require a delay in order to prevent 'buffer overflow' issues.
#                        In that case, add 'delaysysex', for example: midiconfig=2 delaysysex
#                        See the README/Manual for more details.
# mt32.reverse.stereo: Reverse stereo channels for MT-32 output
#                      Possible values: off, on.
#        mt32.verbose: MT-32 debug logging
#                      Possible values: off, on.
#         mt32.thread: MT-32 rendering in separate thread
#                      Possible values: off, on.
#            mt32.dac: MT-32 DAC input emulation mode
#                      Nice = 0 - default
#                      Produces samples at double the volume, without tricks.
#                      Higher quality than the real devices
#                      
#                      Pure = 1
#                      Produces samples that exactly match the bits output from the emulated LA32.
#                      Nicer overdrive characteristics than the DAC hacks (it simply clips samples within range)
#                      Much less likely to overdrive than any other mode.
#                      Half the volume of any of the other modes, meaning its volume relative to the reverb
#                      output when mixed together directly will sound wrong. So, reverb level must be lowered.
#                      Perfect for developers while debugging :)
#                      
#                      GENERATION1 = 2
#                      Re-orders the LA32 output bits as in early generation MT-32s (according to Wikipedia).
#                      Bit order at DAC (where each number represents the original LA32 output bit number, and XX means the bit is always low):
#                      15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 XX
#                      
#                      GENERATION2 = 3
#                      Re-orders the LA32 output bits as in later geneerations (personally confirmed on my CM-32L - KG).
#                      Bit order at DAC (where each number represents the original LA32 output bit number):
#                      15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 14
#                      
#                      Possible values: 0, 1, 2, 3, auto.
#    mt32.reverb.mode: MT-32 reverb mode
#                      Possible values: 0, 1, 2, 3, auto.
#    mt32.reverb.time: MT-32 reverb decaying time
#                      Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
#   mt32.reverb.level: MT-32 reverb level
#                      Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
#       mt32.partials: MT-32 max partials allowed (0-256)
mpu401=intelligent
mididevice=alsa
midiconfig=129:1
mt32.reverse.stereo=off
mt32.verbose=off
mt32.thread=off
mt32.dac=auto
mt32.reverb.mode=auto
mt32.reverb.time=5
mt32.reverb.level=3
mt32.partials=32

[sblaster]
#                               sbtype: Type of Soundblaster to emulate. gb is Gameblaster.
#                                       Possible values: sb1, sb2, sbpro1, sbpro2, sb16, sb16vibra, gb, none.
#                               sbbase: The IO address of the soundblaster.
#                                       Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
#                                  irq: The IRQ number of the soundblaster. Set to -1 to start DOSBox with the IRQ unassigned
#                                       Possible values: 7, 5, 3, 9, 10, 11, 12.
#                                  dma: The DMA number of the soundblaster. Set to -1 to start DOSBox with the IRQ unassigned
#                                       Possible values: 1, 5, 0, 3, 6, 7.
#                                 hdma: The High DMA number of the soundblaster. Set to -1 to start DOSBox with the IRQ unassigned
#                                       Possible values: 1, 5, 0, 3, 6, 7.
#                              sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer.
#                              oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type.
#                                       All OPL modes are Adlib-compatible, except for 'cms'. sbtype=none
#                                       together with oplmode=cms will emulate a Gameblaster.
#                                       Possible values: auto, cms, opl2, dualopl2, opl3, none, hardware, hardwaregb.
# adlib force timer overflow on detect: If set, Adlib/OPL emulation will signal 'overflow' on timers after 50 I/O reads.
#                                       This is a temporary hack to work around timing bugs noted in DOSBox-X. Certain
#                                       games (Wolfenstein 3D) poll the Adlib status port a fixed number of times assuming
#                                       that the poll loop takes long enough for the Adlib timer to run out. If the game
#                                       cannot reliably detect Adlib at higher cycles counts, but can reliably detect at
#                                       lower cycles counts, set this option.
#                                       NOTE: Technically this decreases emulation accuracy, however it also reflects the
#                                             fact that DOSBox-X's I/O timing code needs some work to better match the
#                                             slowness of the ISA bus per I/O read in consideration of DOS games. So this
#                                             option is ON by default.
#                               oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well).
#                                       Possible values: default, compat, fast.
#                              oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly).
#                                       Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000.
#                         hardwarebase: base address of the real hardware soundblaster:
#                                       210,220,230,240,250,260,280
#                  force dsp auto-init: Treat all single-cycle DSP commands as auto-init to keep playback going.
#                                       This option is a workaround for DOS games or demos that use single-cycle DSP playback commands and
#                                       have problems with missing the Sound Blaster IRQ under load. Do not enable unless you need this workaround.
#                                       Needed for:
#                                         - Extreme "lunatic" demo (1993)
#                       force goldplay: Always render Sound Blaster output sample-at-a-time. Testing option. You probably don't want to enable this.
#                             goldplay: Enable goldplay emulation.
#                      goldplay stereo: Enable workaround for goldplay stereo playback. Many DOS demos using this technique
#                                       don't seem to know they need to double the frequency when programming the DSP time constant for Pro stereo output.
#                                       If stereo playback seems to have artifacts consider enabling this option. For accurate emulation of Sound Blaster
#                                       hardware, disable this option.
#    dsp require interrupt acknowledge: If set, the DSP will halt DMA playback until IRQ acknowledgement occurs even in auto-init mode (SB16 behavior).
#                                       If clear, IRQ acknowledgement will have no effect on auto-init playback (SB Pro and earlier & clone behavior)
#                                       If set to 'auto' then behavior is determined by sbtype= setting.
#                                       This is a setting for hardware accuracy in emulation. If audio briefly plays then stops then your DOS game
#                                       and it's not using IRQ (but using DMA), try setting this option to 'false'
#                 dsp write busy delay: Amount of time in nanoseconds the DSP chip signals 'busy' after writing to the DSP (port 2xCh). Set to -1 to use card-specific defaults.
#                                       WARNING: Setting the value too high (above 20000ns) may have detrimental effects to DOS games that use IRQ 0 and DSP command 0x10 to play audio.
#                                                Setting the value way too high (above 1000000ns) can cause significant lag in DOS games.
#         blaster environment variable: Whether or not to set the BLASTER environment variable automatically at startup
#                   sample rate limits: If set (default), limit DSP sample rate to what real hardware is limited to
#                   instant direct dac: If set, direct DAC output commands are instantaneous. This option is intended as a quick fix for
#                                       games or demos that play direct DAC music/sound from the IRQ 0 timer who a) write the DSP command
#                                       and data without polling the DSP to ensure it's ready or b) can get locked into the IRQ 0 handler
#                                       waiting for DSP status when instructed to play at or beyond the DSP's maximum direct DAC sample rate.
#                                       This fix allows broken Sound Blaster code to work and should not be enabled unless necessary.
#       stereo control with sbpro only: Default on. If set, Sound Blaster Pro stereo is not available when emulating sb16 or sb16vibra.
#                                       If clear, sb16 emulation will honor the sbpro stereo bit. Note that Creative SB16 cards do not
#                                       honor the stereo bit, and this option allows DOSBox emulate that fact. Accuracy setting.
#                  dsp busy cycle rate: Sound Blaster 16 DSP chips appear to go busy periodically at some high clock rate
#                                       whether the DSP is actually doing anything for the system or not. This is an accuracy
#                                       option for Sound Blaster emulation. If this option is nonzero, it will be interpreted
#                                       as the busy cycle rate in Hz. If zero, busy cycle will not be emulated. If -1, sound
#                                       blaster emulation will automatically choose a setting based on the sbtype= setting
#                  dsp busy cycle duty: If emulating SB16 busy cycle, this value (0 to 100) controls the duty cycle of the busy cycle.
#                                       If this option is set to -1, Sound Blaster emulation will choose a value automatically according
#                                       to sbtype=. If 0, busy cycle emulation is disabled.
#                     io port aliasing: If set, Sound Blaster ports alias by not decoding the LSB of the I/O port.
#                                       This option only applies when sbtype is set to sb1 or sb2 (not SBPro or SB16).
#                                       This is a hack for the Electromotive Force 'Internal Damage' demo which apparently
#                                       relies on this behavior for Sound Blaster output and should be enabled for accuracy in emulation.
sbtype=sb16
sbbase=220
irq=7
dma=1
hdma=5
sbmixer=true
oplmode=auto
adlib force timer overflow on detect=true
oplemu=default
oplrate=44100
hardwarebase=220
force dsp auto-init=false
force goldplay=false
goldplay=false
goldplay stereo=true
dsp require interrupt acknowledge=auto
dsp write busy delay=-1
blaster environment variable=true
sample rate limits=true
instant direct dac=false
stereo control with sbpro only=true
dsp busy cycle rate=-1
dsp busy cycle duty=-1
io port aliasing=true

[gus]
#      gus: Enable the Gravis Ultrasound emulation.
#  gusrate: Sample rate of Ultrasound emulation.
#           Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#  gusbase: The IO base address of the Gravis Ultrasound.
#           Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
#   gusirq: The IRQ number of the Gravis Ultrasound.
#           Possible values: 5, 3, 7, 9, 10, 11, 12.
#   gusdma: The DMA channel of the Gravis Ultrasound.
#           Possible values: 3, 0, 1, 5, 6, 7.
# ultradir: Path to Ultrasound directory. In this directory
#           there should be a MIDI directory that contains
#           the patch files for GUS playback. Patch sets used
#           with Timidity should work fine.
gus=false
gusrate=44100
gusbase=240
gusirq=5
gusdma=3
ultradir=C:\ULTRASND

[innova]
#     innova: Enable the Innovation SSI-2001 emulation.
# samplerate: Sample rate of Innovation SSI-2001 emulation
#             Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#    sidbase: SID base port (typically 280h).
#             Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
#    quality: Set SID emulation quality level (0 to 3).
#             Possible values: 0, 1, 2, 3.
innova=false
samplerate=22050
sidbase=280
quality=0

[speaker]
#    pcspeaker: Enable PC-Speaker emulation.
#       pcrate: Sample rate of the PC-Speaker sound generation.
#               Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#        tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'.
#               Possible values: auto, on, off.
#    tandyrate: Sample rate of the Tandy 3-Voice generation.
#               Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
#       disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible).
#     ps1audio: Enable PS1 audio emulation.
#               Possible values: on, off.
# ps1audiorate: Sample rate of the PS1 audio emulation.
#               Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
pcspeaker=true
pcrate=44100
tandy=auto
tandyrate=44100
disney=false
ps1audio=off
ps1audiorate=22050

[joystick]
# joysticktype: Type of joystick to emulate: auto (default), none,
#               2axis (supports two joysticks),
#               4axis (supports one joystick, first joystick used),
#               4axis_2 (supports one joystick, second joystick used),
#               fcs (Thrustmaster), ch (CH Flightstick).
#               none disables joystick emulation.
#               auto chooses emulation depending on real joystick(s).
#               (Remember to reset dosbox's mapperfile if you saved it earlier)
#               Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none.
#        timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away).
#     autofire: continuously fires as long as you keep the button pressed.
#       swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks.
#   buttonwrap: enable button wrapping at the number of emulated buttons.
joysticktype=auto
timed=true
autofire=false
swap34=false
buttonwrap=false

[serial]
# serial1: set type of device connected to com port.
#          Can be disabled, dummy, modem, nullmodem, directserial.
#          Additional parameters must be in the same line in the form of
#          parameter:value. Parameter for all types is irq (optional).
#          for directserial: realport (required), rxdelay (optional).
#                           (realport:COM1 realport:ttyS0).
#          for modem: listenport (optional).
#          for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
#                         transparent, port, inhsocket (all optional).
#          Example: serial1=modem listenport:5000
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial2: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial3: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
# serial4: see serial1
#          Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[printer]
#     printer: Enable printer emulation.
#         dpi: Resolution of printer (default 360).
#       width: Width of paper in 1/10 inch (default 85 = 8.5'').
#      height: Height of paper in 1/10 inch (default 110 = 11.0'').
# printoutput: Output method for finished pages: 
#                png     : Creates PNG images (default)
#                ps      : Creates Postscript
#                bmp     : Creates BMP images (very huge files, not recommend)
#              
#   multipage: Adds all pages to one Postscript file or printer job until CTRL-F2 is pressed.
#     docpath: The path where the output files are stored.
#     timeout: (in milliseconds) if nonzero: the time the page will
#              be ejected automatically after when no more data
#              arrives at the printer.
printer=true
dpi=360
width=85
height=110
printoutput=png
multipage=false
docpath=.
timeout=0

[parallel]
# parallel1: parallel1-3 -- set type of device connected to lpt port.
#            Can be:
#               reallpt (direct parallel port passthrough),
#               file (records data to a file or passes it to a device),
#               printer (virtual dot-matrix printer, see [printer] section)
#            Additional parameters must be in the same line in the form of
#            parameter:value.
#              for reallpt:
#              Windows:
#                realbase (the base address of your real parallel port).
#                  Default: 378
#                ecpbase (base address of the ECP registers, optional).
#              Linux: realport (the parallel port device i.e. /dev/parport0).
#              for file: 
#                dev:<devname> (i.e. dev:lpt1) to forward data to a device,
#                or append:<file> appends data to the specified file.
#                Without the above parameters data is written to files in the capture dir.
#                Additional parameters: timeout:<milliseconds> = how long to wait before
#                closing the file on inactivity (default:500), addFF to add a formfeed when
#                closing, addLF to add a linefeed if the app doesn't, cp:<codepage number>
#                to perform codepage translation, i.e. cp:437
#              for printer:
#                printer still has it's own configuration section above.
# parallel2: see parallel1
# parallel3: see parallel1
#    dongle: Enable dongle
parallel1=disabled
parallel2=disabled
parallel3=disabled
dongle=false

[glide]
#  glide: Enable glide emulation: true,false,emu.
#    lfb: LFB access: full,full_noaux,read,read_noaux,write,write_noaux,none.
#         OpenGlide does not support locking aux buffer, please use _noaux modes.
# splash: Show 3dfx splash screen (requires 3dfxSpl2.dll).
glide=emu
lfb=full
splash=true

[dos]
#                                              xms: Enable XMS support.
#                       enable a20 on windows init: If set, DOSBox will enable the A20 gate when Windows 3.1/9x broadcasts the INIT message
#                                                   at startup. Windows 3.1 appears to make assumptions at some key points on startup about
#                                                   A20 that don't quite hold up and cause Windows 3.1 to crash when you set A20 emulation
#                                                   to a20=mask as opposed to a20=fast. This option is enabled by default.
#             zero memory on xms memory allocation: If set, memory returned by XMS allocation call is zeroed first. This is NOT what
#                                                   DOS actually does, but if set, can help certain DOS games and demos cope with problems
#                                                   related to uninitialized variables in extended memory. When enabled this option may
#                                                   incur a slight to moderate performance penalty.
#                                              ems: Enable EMS support. The default (=true) provides the best
#                                                   compatibility but certain applications may run better with
#                                                   other choices, or require EMS support to be disabled (=false)
#                                                   to work at all.
#                                                   Possible values: true, emsboard, emm386, false.
#             zero memory on ems memory allocation: If set, memory returned by EMS allocation call is zeroed first. This is NOT what
#                                                   DOS actually does, but if set, can help certain DOS games and demos cope with problems
#                                                   related to uninitialized variables in expanded memory. When enabled this option may
#                                                   incur a slight to moderate performance penalty.
#                    ems system handle memory size: Amount of memory associated with system handle, in KB
#                                              umb: Enable UMB support.
#                                        umb start: UMB region starting segment
#                                          umb end: UMB region last segment
#                         kernel allocation in umb: If set, dynamic kernel allocation=1, and private area in umb=1, all kernel structures will be allocated from the private area in UMB.
#                                                   If you intend to run Windows 3.1 in DOSBox, you must set this option to false else Windows 3.1 will not start.
#                        dynamic kernel allocation: If set, DOS kernel structures are allocated dynamically. If clear, DOS kernel structures are fixed at specific segments (mainline DOSBox behavior)
#                                 keep umb on boot: If emulating UMBs, keep the UMB around after boot (Mainline DOSBox behavior). If clear, UMB is unmapped when you boot an operating system.
#                        keep private area on boot: If set, keep the DOSBox private area around after boot (Mainline DOSBox behavior). If clear, unmap and discard the private area when you boot an operating system.
#                              private area in umb: If set, keep private DOS segment in upper memory block, usually segment 0xC800 (Mainline DOSBox behavior)
#                                                   If clear, place private DOS segment at the base of system memory (just below the MCB)
#                                        automount: Enable automatic mount.
#                                            int33: Enable INT 33H (mouse) support.
#                                int 13 extensions: Enable INT 13h extensions (functions 0x40-0x48). You will need this enabled if the virtual hard drive image is 8.4GB or larger.
#                                          biosps2: Emulate BIOS INT 15h PS/2 mouse services
#                                                   Note that some OS's like Microsoft Windows neither use INT 33h nor
#                                                   probe the AUX port directly and depend on this BIOS interface exclusively
#                                                   for PS/2 mouse support. In other cases there is no harm in leaving this enabled
# int15 mouse callback does not preserve registers: Set to true if the guest OS or DOS program assigns an INT 15h mouse callback,
#                                                   but does not properly preserve CPU registers. Diagnostic function only (default off).
#                                   keyboardlayout: Language code of the keyboard layout (or none).
#                                             dbcs: Enable DBCS table.
#                                                   CAUTION: Some software will crash without the DBCS table, including the Open Watcom installer.
#                                                   
#                                     filenamechar: Enable filename char table
#                          collating and uppercase: Enable collating and uppercase table
#                                            files: Number of file handles available to DOS programs. (equivalent to "files=" in config.sys)
#  con device use int 16h to detect keyboard input: If set, use INT 16h to detect keyboard input (MS-DOS 6.22 behavior). If clear, detect keyboard input by
#                                                   peeking into the BIOS keyboard buffer (Mainline DOSBox behavior). You will need to set this
#                                                   option for programs that hook INT 16h to handle keyboard input ahead of the DOS console.
#                                                   Microsoft Scandisk needs this option to respond to keyboard input correctly.
#         zero memory on int 21h memory allocation: If set, memory returned by the INT 21h allocation call is zeroed first. This is NOT what
#                                                   DOS actually does, but if set, can help certain DOS games and demos cope with problems
#                                                   related to uninitialized variables in the data or stack segment. If you intend to run a
#                                                   game or demo known to have this problem (Second Unreal, for example), set to true, else
#                                                   set to false. When enabled this option may incur a slight to moderate performance penalty.
xms=true
enable a20 on windows init=true
zero memory on xms memory allocation=false
ems=true
zero memory on ems memory allocation=false
ems system handle memory size=384
umb=true
umb start=0
umb end=0
kernel allocation in umb=false
dynamic kernel allocation=false
keep umb on boot=false
keep private area on boot=false
private area in umb=true
automount=true
int33=true
int 13 extensions=true
biosps2=true
int15 mouse callback does not preserve registers=false
keyboardlayout=auto
dbcs=true
filenamechar=true
collating and uppercase=true
files=127
con device use int 16h to detect keyboard input=true
zero memory on int 21h memory allocation=false

[ipx]
# ipx: Enable ipx over UDP/IP emulation.
ipx=false

[ne2000]
#  ne2000: Enable Ethernet passthrough. Requires [Win]Pcap.
# nicbase: The base address of the NE2000 board.
#  nicirq: The interrupt it uses. Note serial2 uses IRQ3 as default.
# macaddr: The physical address the emulator will use on your network.
#          If you have multiple DOSBoxes running on your network,
#          this has to be changed for each. AC:DE:48 is an address range reserved for
#          private use, so modify the last three number blocks.
#          I.e. AC:DE:48:88:99:AB.
# realnic: Specifies which of your network interfaces is used.
#          Write 'list' here to see the list of devices in the
#          Status Window. Then make your choice and put either the
#          interface number (2 or something) or a part of your adapters
#          name, e.g. VIA here.
ne2000=true
nicbase=300
nicirq=3
macaddr=AC:DE:48:88:99:AA
realnic=1

[fdc, primary]
#                 enable: Enable floppy controller interface
#                    pnp: List floppy controller in ISA PnP BIOS enumeration
#                    irq: IRQ used by floppy controller. Set to 0 for default.
#                         WARNING: Setting the IRQ to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the floppy controller.
#                                  Setting the IRQ to one already occupied by another device or IDE controller will trigger "resource conflict" errors in Windows 95.
#                                  Normally, floppy controllers use IRQ 6.
#                     io: Base I/O port for floppy controller. Set to 0 for default.
#                         WARNING: Setting the I/O port to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the IDE controller.
#                                  Standard I/O ports are 3F0 and 370.
#                    dma: DMA channel for floppy controller. Set to -1 for default.
#                         WARNING: Setting the DMA channel to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the IDE controller.
#                                  Standard DMA channel is 2.
#         int13fakev86io: If set, and int13fakeio is set, certain INT 13h commands will
#                         cause floppy emulation to issue fake CPU I/O traps (GPF) in
#                         virtual 8086 mode and a fake IRQ signal. you must enable this option
#                         if you want 32-bit floppy access in Windows 95 to work with DOSBox.
#           instant mode: If set, all floppy operations are 'instantaneous', they are carried
#                         out without any delay. Real hardware of course has motor, command
#                         and data I/O delays and so this option is off by default for realistic
#                         emulation.
# auto-attach to int 13h: If set, DOSBox-X will automatically attach a disk image as being
#                         inserted into a floppy drive attached to the controller when imgmount is used
#                         to mount a disk image to drive 0/1 or A/B. If not set, you must specify
#                         the -fdc option to imgmount to attach drive A/B to the floppy controller
#                         manually. You must use the -fdc option regardless if loading floppies into
#                         drives attached to any other FDC than the primary controller
#                   mode: Floppy controller mode. What the controller acts like.
#                           ps2                          PS/2 mode (most common)
#                           ps2_model30                  PS/2 model 30
#                           at                           AT mode
#                           xt                           PC/XT mode
#                   chip: Floppy controller chipset
#                           82077aa                      Intel 82077AA chipset
#                           82072                        Intel 82072 chipset
#                           nec_uPD765                   NEC uPD765 chipset
#                           none                         No chipset (For PC/XT mode)
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, secondary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, tertiary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, quaternary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, quinternary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, sexternary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, septernary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[fdc, octernary]
enable=false
pnp=true
irq=0
io=0
dma=-1
int13fakev86io=false
instant mode=false
auto-attach to int 13h=true
mode=ps2
chip=82077aa

[ide, primary]
#                  enable: Enable IDE interface
#                     pnp: List IDE device in ISA PnP BIOS enumeration
#                     irq: Alternate I/O port for IDE controller (alt status, etc). Set to 0 for default.
#                          WARNING: Setting the I/O port to non-standard values will not work unless the guest OS is using the ISA PnP BIOS to detect the IDE controller.
#                                   For best compatability set this value to io+0x206, for example, io=1F0 altio=3F6.
#                                   The primary IDE controller will not claim port 3F7 if the primary floppy controller is enabled due to I/O port overlap in the 3F0-3F7 range.
#             int13fakeio: If set, force IDE state change on certain INT 13h commands.
#                          IDE registers will be changed as if BIOS had carried out the action.
#                          If you are running Windows 3.11 or Windows 3.11 Windows for Workgroups
#                          you must enable this option (and use -reservecyl 1) if you want 32-bit
#                          disk access to work correctly in DOSBox.
#          int13fakev86io: If set, and int13fakeio is set, certain INT 13h commands will
#                          cause IDE emulation to issue fake CPU I/O traps (GPF) in
#                          virtual 8086 mode and a fake IRQ signal. you must enable this option
#                          if you want 32-bit disk access in Windows 95 to work with DOSBox.
#            enable pio32: If set, 32-bit I/O reads and writes are handled directly (much like PCI IDE implementations)
#                          If clear, 32-bit I/O will be handled as if two 16-bit I/O (much like ISA IDE implementations)
#            ignore pio32: If 32-bit I/O is enabled, attempts to read/write 32-bit I/O will be ignored entirely.
#                          In this way, you can have DOSBox emulate one of the strange quirks of 1995-1997 era
#                          laptop hardware
#      cd-rom spinup time: Emulated CD-ROM time in ms to spin up if CD is stationary.
#                          Set to 0 to use controller or CD-ROM drive-specific default.
# cd-rom spindown timeout: Emulated CD-ROM time in ms that drive will spin down automatically when not in use
#                          Set to 0 to use controller or CD-ROM drive-specific default.
#  cd-rom insertion delay: Emulated CD-ROM time in ms that drive will report "medium not present"
#                          to emulate the time it takes for someone to take out a CD and insert a new one when
#                          DOSBox is instructed to swap or change CDs.
#                          When running Windows 95 or higher a delay of 4000ms is recommended to ensure that
#                          auto-insert notification triggers properly.
#                          Set to 0 to use controller or CD-ROM drive-specific default.
enable=true
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, secondary]
enable=true
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, tertiary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, quaternary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, quinternary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, sexternary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, septernary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[ide, octernary]
enable=false
pnp=true
irq=0
io=0
altio=0
int13fakeio=false
int13fakev86io=false
enable pio32=false
ignore pio32=false
cd-rom spinup time=0
cd-rom spindown timeout=0
cd-rom insertion delay=0

[autoexec]
KEYB hu
imgmount 2 "/home/legacy/VIRT/disks/doslinux.img" -size 512,63,64,1023 -t hdd -fs none
imgmount 3 "/home/legacy/LINUX CD/install-x86-minimal-20160419.iso" -size 512,63,64,506 -t hdd -fs none
# imgmount 3 "/home/legacy/LINUX CD/gparted-live-0.24.0-2-i586.iso" -size 512,63,64,504 -t hdd -fs none
boot -l d

gentoo.log

➜  YkwhongDosbox dosbox-x -conf gentoo.conf
LOG: Early LOG Init complete
LOG: Logging init: beginning logging proper. This is the end of the early init logging
LOG: Logging: No logfile was given. All further logging will be discarded.
LOG: DOSBox-X version 0.82.1
LOG:          0       MISC:Copyright 2002-2015 enhanced branch by The Great Codeholio, forked from the main project by the DOSBox Team, published under GNU GPL.
LOG:          0       GUI:Press Ctrl-F10 to capture/release mouse, Alt-F10 for configuration.
LOG: USING AVI+ZMBV
LOG: One joystick reported, initializing with 4axis
LOG: Using joystick GreenAsia Inc.      USB  Joystick   with 2 axes, 10 buttons and 1 hat(s)
LOG:          0 WARN  MISC:Can't find matching event for hand_redraw = "key 284 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_savestate = "key 286 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_loadstate = "key 290 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_prevslot = "key 287 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_nextslot = "key 288 mod2" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_dynamic = "key 51 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_caprawopl = "key 288" "key 288 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0 WARN  MISC:Can't find matching event for hand_ejectpage = "key 283 mod1" yet. It may exist later when registered elsewhere in this emulator.
LOG:          0       MISC:MAPPER: Loading mapper settings from mapper-SVN-Daum.map
LOG: VOODOO LFB now at d0000000
LOG:          0       MISC:MPU IRQ 9
LOG:          0       VGA:Video RAM: 4096KB
LOG: GetDesktopResolution reading X11 desktop resolution
LOG: Root window (ID 467) is 1360 x 768
LOG: Allocated APM BIOS pm entry point at f000:13e0
LOG: Writing code to f13e0
LOG:          0 WARN  MISC:Found pending event for hand_caprawopl from user's file, applying now
LOG:          0       SBLASTER:DSP:Reset
LOG:          2       INT10:Set Video Mode 3
LOG:          2       VGA:Blinking 8
LOG:          2       KEYBOARD:INT 15H PS/2 emulation enabled
LOG: ISA Plug & Play BIOS enabled
LOG: VGA ROM BIOS init callback
LOG:          6       INT10:Set Video Mode 3
LOG:          6       MOUSE:New video is the same as the old
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page c8
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page c9
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page ca
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cb
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cc
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cd
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page ce
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page cf
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d0
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d1
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d2
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d3
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d4
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d5
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d6
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d7
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d8
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page d9
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page da
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page db
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page dc
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page dd
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page de
LOG:         11 WARN  MISC:MEM_SlowPath called within system RAM at page df
LOG:         14       INT10:Set Video Mode 12
LOG:         14       VGA:Blinking 0
LOG:         38       VGA:VGA refresh rate is now, 59.940
LOG: pixratio 1.000, dw false, dh false
LOG:    2966289       INT10:Set Video Mode 3
LOG:    2966289       VGA:Blinking 8
LOG: kernel allocation in umb option incompatible with other settings, disabling.
LOG:    2966292 ERROR BIOS:Keyboard layout file auto not found
LOG:    2966292 ERROR BIOS:Keyboard layout file auto not found
LOG:    2966292       MISC:UMB assigned region is 0xd000-0xdfff
LOG: EMS page frame at 0xe000-0xefff
LOG:    2966292       FILES:file open command 2 file CON
LOG:    2966292       FILES:file open command 2 file CON
LOG:    2966292       FILES:file open command 2 file CON
LOG:    2966292       FILES:file open command 2 file PRN
LOG:    2966292       FILES:file open command 2 file CON
LOG:    2966292       KEYBOARD:INT 33H emulation enabled
LOG:    2967222       VGA:VGA refresh rate is now, 70.087
LOG: pixratio 1.200, dw false, dh false
LOG:    2977446       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    2977446       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    2977838       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    2977981       EXEC:Execute KEYB.COM 0
LOG:    2977981       FILES:file open command 0 file KEYB.COM
LOG:    2977991       BIOS:Keyboard layout hu successfully loaded
LOG:    3285160       BIOS:Codepage 852 successfully loaded
LOG:    3285678       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3286773       EXEC:Execute imgmount.COM 0
LOG:    3286773       FILES:file open command 0 file imgmount.COM
LOG: IDE: index 0 slave=0
LOG:    3286783       MISC:Mounting image as C/H/S 1023/64/63 with 512 bytes/sector
LOG: Mapping BIOS DISK C/H/S 1023/64/63 as IDE 4092/16/63
LOG:    3287541       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3288840       EXEC:Execute imgmount.COM 0
LOG:    3288840       FILES:file open command 0 file imgmount.COM
LOG: IDE: index 0 slave=1
LOG:    3288850       MISC:Mounting image as C/H/S 506/64/63 with 512 bytes/sector
LOG: Mapping BIOS DISK C/H/S 506/64/63 as IDE 2024/16/63
LOG:    3289828       FILES:Special file open command 80 file Z:\AUTOEXEC.BAT
LOG:    3289999       EXEC:Execute boot.COM 0
LOG:    3289999       FILES:file open command 0 file boot.COM
LOG: Booting guest OS stack_seg=0x7000 load_seg=0x07c0
LOG: Removing UMB block 0xd000-0xdfff
LOG: Alright: DOS kernel shutdown, booting a guest OS
LOG:   CS:IP=0000:7c00 SS:SP=7000:0100 AX=0000 BX=7c00 CX=0001 DX=0081
LOG: INT13: Check Extensions Present for drive: 0x81
LOG:    3334233 ERROR BIOS:INT15:Unknown call ax=2401
LOG: DOSBox switched to max cycles, because of the setting: cycles=auto. If the game runs too fast try a fixed cycles amount in DOSBox's options.
LOG: INT13: Check Extensions Present for drive: 0x81
LOG:    4703286 ERROR BIOS:Disk 0 not active
LOG:    5165403       BIOS:INT15:Function 0x88 Remaining FFFF kb
LOG: 1163886486       INT10:Set Video Mode 3
LOG: 1163886486       MOUSE:New video is the same as the old
LOG: 1163886563 WARN  INT10:Function 12:Call 30 (select vertical resolution)
LOG: 1163886610       INT10:Set Video Mode 3
LOG: 1163886610       MOUSE:New video is the same as the old
LOG: 1163895944       VGA:VGA refresh rate is now, 70.086
LOG: pixratio 1.261, dw false, dh false
LOG: 1163983567       VGAMISC:Lines left: 39
LOG: 2297533315       PIC:0:Base vector 30
LOG: 2297533335       PIC:0:ICW 3 4
LOG: 2297533358       PIC:0:ICW 4 1
LOG: 2297533398       PIC:1:Base vector 38
LOG: 2297533418       PIC:1:ICW 3 2
LOG: 2297533438       PIC:1:ICW 4 1
LOG: 2298028580       PIT:PIT 0 Timer at 99.9985 Hz mode 2
LOG: Serial1: Errors: Framing 0, Parity 0, Overrun RX:3 (IF0:3), TX:237, Break 0
LOG: Serial2: Errors: Framing 0, Parity 0, Overrun RX:3 (IF0:3), TX:237, Break 0
joncampbell123 commented 6 years ago

But, did they work?

Metalhead33 commented 6 years ago

No, in both cases, there is a failure to boot up. In both cases, the end result is a kernel panic that prevents even installation of Linux, let alone anything to work with.

joncampbell123 commented 6 years ago

What CPU did you ask DOSBox-X to emulate?

Most Linux distributions I'm aware of tend to target the Pentium Pro (i686) and they won't run on Pentium and 486 systems.

Metalhead33 commented 6 years ago

I got DosBox to emulate 486, and I deliberately picked two variants of Linux that are known for working on 486.

I used this for a reference.

fuel-pcbox commented 6 years ago

@Metalhead33 When I tested Gentoo's latest install media on 86Box, it wouldn't boot unless Pentium Pro processors or higher were used, even though the distro itself claims to support 486. I got this answer from their IRC channel.

joncampbell123 commented 6 years ago

@MoochMcGee Do they mean then that the packages are compatible with the 486? It might be possible to get it to boot if you replace the Linux kernel in the hard disk image with one recompiled for the 486.

fuel-pcbox commented 6 years ago

I guess so.

ghost commented 6 years ago

CentOS 2 installer boots from floppy in lowres nofb mode, so theoretically it should be possible to run it at least from floppy. Won't test further though ) With enough RAM it even enters installer, but continuing would require ISO+HDD image mounted and stuff.

image

NuSynth commented 2 years ago

@ghost cool!

Clockiscool1234 commented 1 year ago

i got debian 2.0 and basiclinux working in dosbox-x but its only read-only

yilmazdurmaz commented 7 months ago

I am about to complete an installation for a 1998 version debian, hamm. get the iso here: https://mirror.debianforum.de/debian-iso-archive/hamm/i386/

I have almost zero reconfig from default for the current version of DosBox-X.

the same steps might help for other distros too.

after you succeed installing linux, reboot to DOS again, mount CD image and , from install folder, copy these files to C drive

then mount both disk images again (package installations will need CD) and run the following:

loadlin.exe linux root=/dev/hda1

The device path to CD, when installing packages, will possibly be the same as before. Package installation may take hours depending on your selections.

At the end, use the same command every time you want to start linux, or add it to autoexec.bat, so it will start immediately

It has been few hours I am working on this. It took this long because of mistakes I took lessons from:

EDIT: installation is fine. I just seem to messed up with packages. I tried to install everything, thus got error in few packages along with lots of configuration questions so took very long. I think X windowing works, I messed installing it as there are many managers, and the last one retained did not have mouse working, yet graphics mode seems to work. (not that I need a desktop).

yilmazdurmaz commented 7 months ago

addition: installation is fine. I just seem to messed up with packages. I tried to install everything, thus got error in few packages along with lots of configuration questions so took very long. I think X windowing works, I messed installing it as there are many managers, and the last one retained did not have mouse working, yet graphics mode seems to work. (not that I need a desktop).

BloodyIron commented 4 months ago

Subbing because this is super neat. Keep at it hacker! \o/