-
Notifications
You must be signed in to change notification settings - Fork 0
/
1985-tandy1000-8088-7.16mhz.conf
855 lines (814 loc) · 51.9 KB
/
1985-tandy1000-8088-7.16mhz.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
###############################################################################
# DOSBox Staging (0.80.1) Config: 1985 Tandy 1000 i8088 (7.16MHz) #
#------------------------------------------------------------------------------#
# Version: 1.0-2 #
# Author: ColetteDiskette #
# Date: February 10, 2024 #
# GitHub: https://github.com/ColetteDiskette/dosbox-staging-templates #
#------------------------------------------------------------------------------#
# Description: Config file derived from a DBGL template to emulate a system #
# resembling a Tandy 1000 with an i8088 running at 7.16MHz, #
# 640KB RAM, CGA Plus graphics, and Tandy 3-voice sound from #
# around 1985. #
#------------------------------------------------------------------------------#
# NOTES: - I use the "pixellate" shader in the interpolation directory #
# available at https://github.com/tyrells/dosbox-svn-shaders. #
# You will either need to get it and place it in your #
# ~/.config/dosbox/glshaders directory (on Linux) or change the #
# "glshader" entry under "[render]" either to "none" or the #
# shader of your choosing. #
# #
# - RAM is set to 1MB instead of 640KB due to DOSBox limitations. #
###############################################################################
[sdl]
# fullscreen: Start directly in fullscreen.
# Run INTRO and see Special Keys for window control hotkeys.
# display: Number of display to use; values depend on OS and user settings.
# fullresolution: What resolution to use for fullscreen: 'original', 'desktop'
# or a fixed size (e.g. 1024x768).
# windowresolution: Set window size when running in windowed mode:
# default: Select the best option based on your
# environment and other settings.
# small, medium, or large (or s, m, l):
# Size the window relative to the desktop.
# <custom>: Scale the window to the given dimensions in
# WxH format. For example: 1024x768.
# Scaling is not performed for output=surface.
# viewport_resolution: Set the viewport size (drawable area) within the window/screen:
# fit: Fit the viewport to the available window/screen (default).
# <custom>: Limit the viewport within to a custom resolution or percentage of
# the desktop. Specified in WxH, N%, N.M%. Examples: 960x720 or 50%
# window_position: Set initial window position when running in windowed mode:
# auto: Let the window manager decide the position.
# <custom>: Set window position in X,Y format. For example: 250,100
# 0,0 is the top-left corner of the screen.
# window_decorations: Controls whether to display window decorations in windowed mode.
# transparency: Set the transparency of the DOSBox Staging screen.
# From 0 (no transparency) to 90 (high transparency).
# host_rate: Set the host's refresh rate:
# auto: Use SDI rates, or VRR rates when fullscreen on a high-refresh
# display.
# sdi: Use serial device interface (SDI) rates, without further
# adjustment.
# vrr: Deduct 3 Hz from the reported rate (best-practice for VRR
# displays).
# <custom>: Specify a custom rate as a whole or decimal value greater than
# 23.000.
# vsync: Synchronize with display refresh rate if supported. This can
# reduce flickering and tearing, but may also impact performance.
# vsync_skip: Number of microseconds to allow rendering to block before skipping the next
# frame. 0 disables this and will always render.
# presentation_mode: Optionally select the frame presentation mode:
# auto: Intelligently time and drop frames to prevent
# emulation stalls, based on host and DOS frame rates.
# cfr: Always present DOS frames at a constant frame rate.
# vfr: Always present changed DOS frames at a variable frame rate.
# Possible values: auto, cfr, vfr.
# output: What video system to use for output.
# Possible values: surface, texture, texturenb, texturepp, opengl, openglnb, openglpp.
# texture_renderer: Choose a renderer driver when using a texture output mode.
# Use texture_renderer=auto for an automatic choice.
# Possible values: auto, opengl, opengles2, software.
# waitonerror: Keep the console open if an error has occurred.
# priority: Priority levels to apply when active and inactive, respectively.
# auto: Let the host operating system manage the priority (valid for both).
# Default is: 'auto auto'
# Possible values: auto, lowest, lower, normal, higher, highest.
# mute_when_inactive: Mute the sound when the window is inactive.
# pause_when_inactive: Pause emulation when the window is inactive.
# mapperfile: File used to load/save the key/event mappings.
# Pre-configured maps are bundled in the 'resources/mapperfiles' directory.
# They can be loaded by name, for example: mapperfile = xbox/xenon2.map
# Note: the -resetmapper commandline flag only deletes the default mapperfile.
# screensaver: Use 'allow' or 'block' to override the SDL_VIDEO_ALLOW_SCREENSAVER
# environment variable (which usually blocks the OS screensaver
# while the emulator is running).
# Possible values: auto, allow, block.
fullscreen = false
display = 0
fullresolution = desktop
windowresolution = default
viewport_resolution = fit
window_position = auto
window_decorations = true
transparency = 0
host_rate = auto
vsync = false
vsync_skip = 7000
presentation_mode = auto
output = openglnb
texture_renderer = auto
waitonerror = true
priority = auto auto
mute_when_inactive = false
pause_when_inactive = false
mapperfile = mapper-sdl2-0.80.1.map
screensaver = auto
[dosbox]
# language: Select a language to use: de, en, es, fr, it, nl, pl, and ru
# Notes: This setting will override the 'LANG' environment, if set.
# The 'resources/translations' directory bundled with the executable holds
# these files. Please keep it along-side the executable to support this
# feature.
# 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.
# captures: Directory where things like wave, midi, screenshot get captured.
# 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.
# mcb_fault_strategy: How software-corrupted memory chain blocks should be handled:
# deny: Quit (and report) when faults are detected (default).
# repair: Repair (and report) faults using adjacent chain blocks.
# report: Report faults but otherwise proceed as-is.
# allow: Allow faults to go unreported (hardware behavior).
# The default (deny) is recommended unless a game is failing with MCB corruption
# errors.
# Possible values: deny, repair, report, allow.
# vmemsize: Video memory in MiB (1-8) or KiB (256 to 8192). 'auto' uses the default per
# video adapter.
# Possible values: auto, 1, 2, 4, 8, 256, 512, 1024, 2048, 4096, 8192.
# dos_rate: Customize the emulated video mode's frame rate, in Hz:
# default: The DOS video mode determines the rate (recommended).
# host: Match the DOS rate to the host rate (see 'host_rate' setting).
# <value>: Sets the rate to an exact value, between 24.000 and 1000.000 (Hz).
# We recommend the 'default' rate; otherwise test and set on a per-game basis.
# vesa_modes: Controls the selection of VESA 1.2 and 2.0 modes offered:
# compatible A tailored selection that maximizes game compatibility.
# This is recommended along with 4 or 8 MB of video memory.
# halfline Supports the low-resolution halfline VESA 2.0 mode used by
# Extreme Assault. Use only if needed, as it's not S3 compatible.
# all Offers all modes for a given video memory size, however
# some games may not use them properly (flickering) or may need
# more system memory (mem = ) to use them.
# Possible values: compatible, all, halfline.
# speed_mods: Permit changes known to improve performance. Currently no games are known
# to be affected by this. Please file a bug with the project if you find a
# game that fails when this is set to true so we will list them here.
# autoexec_section: How autoexec sections are handled from multiple config files.
# join : combines them into one big section (legacy behavior).
# overwrite : use the last one encountered, like other conf settings.
# Possible values: join, overwrite.
# automount: Mounts 'drives/[c]' directories as drives on startup, where [c] is
# a lower-case drive letter from a to y. The 'drives' folder can be
# provided relative to the current directory or via built-in resources.
# Mount settings can be optionally provided using a [c].conf file along-
# -side the drive's directory, with content as follows:
# [drive]
# type = dir, overlay, floppy, or cdrom
# label = custom_label
# path = path-specification, ie: path = %%path%%;c:\tools
# override_drive = mount the directory to this drive instead (default empty)
# verbose = true or false
# startup_verbosity: Controls verbosity prior to displaying the program:
# Verbosity | Welcome | Early stdout
# high | yes | yes
# low | no | yes
# quiet | no | no
# auto | 'low' if exec or dir is passed, otherwise 'high'
# Possible values: auto, high, low, quiet.
language =
machine = tandy
captures = capture
memsize = 1
mcb_fault_strategy = deny
vmemsize = auto
dos_rate = default
vesa_modes = compatible
speed_mods = true
autoexec_section = join
automount = true
startup_verbosity = auto
[render]
# aspect: Scales the vertical resolution to produce a 4:3 display aspect
# ratio, matching that of the original standard-definition monitors
# for which the majority of DOS games were designed. This setting
# only affects video modes that use non-square pixels, such as
# 320x200 or 640x400; where as square-pixel modes, such as 640x480
# and 800x600, will be displayed as-is.
# monochrome_palette: Select default palette for monochrome display.
# Works only when emulating hercules or cga_mono.
# You can also cycle through available colours using F11.
# Possible values: white, paperwhite, green, amber.
# cga_colors: Sets the interpretation of CGA RGBI colors. Affects all machine types capable
# of displaying CGA or better graphics. Built-in presets:
# default: The canonical CGA palette, as emulated by VGA adapters
# (default).
# tandy [BL]: Emulation of an idealised Tandy monitor with adjustable
# brown level. The brown level can be provided as an optional
# second parameter (0 - red, 50 - brown, 100 - dark yellow;
# defaults to 50). E.g. tandy 100
# tandy-warm: Emulation of the actual color output of an unknown Tandy
# monitor.
# ibm5153 [C]: Emulation of the actual color output of an IBM 5153 monitor
# with a unique contrast control that dims non-bright colors
# only. The contrast can be optionally provided as a second
# parameter (0 to 100; defaults to 100), e.g. ibm5153 60
# agi-amiga-v1, agi-amiga-v2, agi-amiga-v3:
# Palettes used by the Amiga ports of Sierra AGI games
# (see the manual for further details).
# agi-amigaish: A mix of EGA and Amiga colors used by the Sarien
# AGI-interpreter.
# scumm-amiga: Palette used by the Amiga ports of LucasArts EGA games.
# colodore: Commodore 64 inspired colors based on the Colodore palette.
# colodore-sat: Colodore palette with 20% more saturation.
# dga16: A modern take on the canonical CGA palette with dialed back
# contrast.
# You can also set custom colors by specifying 16 space or comma separated color
# values, either as 3 or 6-digit hex codes (e.g. #f00 or #ff0000 for full red),
# or decimal RGB triplets (e.g. (255, 0, 255) for magenta). The 16 colors are
# ordered as follows:
# black, blue, green, cyan, red, magenta, brown, light-grey, dark-grey,
# light-blue, light-green, light-cyan, light-red, light-magenta, yellow,
# and white.
# Their default values, shown here in 6-digit hex code format, are:
# #000000 #0000aa #00aa00 #00aaaa #aa0000 #aa00aa #aa5500 #aaaaaa #555555
# #5555ff #55ff55 #55ffff #ff5555 #ff55ff #ffff55 and #ffffff, respectively.
# glshader: Options include 'default', 'none', a shader listed using the --list-glshaders
# command-line argument, or an absolute or relative path to a file.
# In all cases, you may omit the shader's '.glsl' file extension.
aspect = true
monochrome_palette = white
cga_colors = default
glshader = pixellate
[composite]
# composite: Enable composite mode on start. 'auto' lets the program decide.
# Note: Fine-tune the settings below (ie: hue) using the composite hotkeys.
# Then read the new settings from your console and enter them here.
# Possible values: auto, on, off.
# era: Era of composite technology. When 'auto', PCjr uses new and CGA/Tandy use old.
# Possible values: auto, old, new.
# hue: Appearance of RGB palette. For example, adjust until sky is blue.
# saturation: Intensity of colors, from washed out to vivid.
# contrast: Ratio between the dark and light area.
# brightness: Luminosity of the image, from dark to light.
# convergence: Convergence of subpixel elements, from blurry to sharp (CGA and Tandy-only).
composite = auto
era = auto
hue = 0
saturation = 100
contrast = 100
brightness = 0
convergence = 0
[cpu]
# core: CPU Core used in emulation. auto will switch to dynamic if available and
# appropriate.
# Possible values: auto, dynamic, normal, simple.
# cputype: CPU Type used in emulation. auto is the fastest choice.
# Possible values: auto, 386, 386_slow, 486_slow, pentium_slow, 386_prefetch.
# cycles: Number 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 number 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: Number of cycles added or subtracted with speed control hotkeys.
# Run INTRO and see Special Keys for list of hotkeys.
# cycledown: Setting it lower than 100 will be a percentage.
core = auto
cputype = auto
cycles = fixed 300
cycleup = 10
cycledown = 20
[mouse]
# mouse_capture: Choose a mouse control method:
# onclick: Capture the mouse when clicking any button in the window.
# onstart: Capture the mouse immediately on start. Might not work correctly
# on some host operating systems.
# seamless: Let the mouse move seamlessly; captures only with middle-click or
# hotkey. Seamless mouse does not work correctly with all the games,
# Windows 3.1x can be made compatible with a custom mouse driver.
# nomouse: Hide the mouse and don't send input to the game.
# For touchscreen control use the seamless method.
#
# Possible values: seamless, onclick, onstart, nomouse.
# mouse_middle_release: If true, middle-click will release the captured mouse, and also
# capture when seamless.
# mouse_sensitivity: Default mouse sensitivity. 100 is a base value, 150 is 150% sensitivity, etc.
# Negative values reverse mouse direction, 0 disables the movement completely.
# The optional second parameter specifies vertical sensitivity (e.g. 100,200).
# Setting can be adjusted in runtime (also per mouse interface) using internal
# MOUSECTL.COM tool, available on drive Z:.
# mouse_raw_input: Enable to bypass your operating system's mouse acceleration and sensitivity
# settings. Works in fullscreen or when the mouse is captured in window mode.
# dos_mouse_driver: Enable built-in DOS mouse driver.
# Notes:
# Disable if you intend to use original MOUSE.COM driver in emulated DOS.
# When guest OS is booted, built-in driver gets disabled automatically.
# dos_mouse_immediate: Updates mouse movement counters immediately, without waiting for interrupt.
# May improve gameplay, especially in fast paced games (arcade, FPS, etc.) - as
# for some games it effectively boosts the mouse sampling rate to 1000 Hz, without
# increasing interrupt overhead.
# Might cause compatibility issues. List of known incompatible games:
# - Ultima Underworld: The Stygian Abyss
# - Ultima Underworld II: Labyrinth of Worlds
# Please file a bug with the project if you find another game that fails when
# this is enabled, we will update this list.
# ps2_mouse_model: PS/2 AUX port mouse model:
# standard: 3 buttons, standard PS/2 mouse.
# intellimouse: 3 buttons + wheel, Microsoft IntelliMouse.
# Default: intellimouse
# Possible values: standard, intellimouse.
# com_mouse_model: COM (serial) port default mouse model:
# 2button: 2 buttons, Microsoft mouse.
# 3button: 3 buttons, Logitech mouse,
# mostly compatible with Microsoft mouse.
# wheel: 3 buttons + wheel,
# mostly compatible with Microsoft mouse.
# msm: 3 buttons, Mouse Systems mouse,
# NOT COMPATIBLE with Microsoft mouse.
# 2button+msm: Automatic choice between 2button and msm.
# 3button+msm: Automatic choice between 3button and msm.
# wheel+msm: Automatic choice between wheel and msm.
# Default: wheel+msm
# Notes:
# Go to [serial] section to enable/disable COM port mice.
# Possible values: 2button, 3button, wheel, msm, 2button+msm, 3button+msm, wheel+msm.
mouse_capture = onclick
mouse_middle_release = true
mouse_sensitivity = 100
mouse_raw_input = true
dos_mouse_driver = true
dos_mouse_immediate = false
ps2_mouse_model = intellimouse
com_mouse_model = wheel+msm
[mixer]
# nosound: Enable silent mode, sound is still emulated though.
# rate: Mixer sample rate.
# Possible values: 8000, 11025, 16000, 22050, 32000, 44100, 48000.
# blocksize: Mixer block size; larger values might help with sound stuttering but sound will
# also be more lagged.
# Possible values: 128, 256, 512, 1024, 2048, 4096, 8192.
# prebuffer: How many milliseconds of sound to render on top of the blocksize; larger values
# might help with sound stuttering but sound will also be more lagged.
# negotiate: Let the system audio driver negotiate (possibly) better rate and blocksize
# settings.
# compressor: Enable the auto-leveling compressor on the master channel to prevent clipping
# of the audio output:
# off: Disable compressor.
# on: Enable compressor (default).
# crossfeed: Set crossfeed globally on all stereo channels for headphone listening:
# off: No crossfeed (default).
# on: Enable crossfeed (at strength 40).
# <strength>: Set crossfeed strength from 0 to 100, where 0 means no crossfeed
# (off) and 100 full crossfeed (effectively turning stereo content
# into mono).
# Note: You can set per-channel crossfeed via mixer commands.
# reverb: Enable reverb globally to add a sense of space to the sound:
# off: No reverb (default).
# on: Enable reverb (medium preset).
# tiny: Simulates the sound of a small integrated speaker in a room;
# specifically designed for small-speaker audio systems
# (PC Speaker, Tandy, PS/1 Audio, and LPT DAC devices).
# small: Adds a subtle sense of space; good for games that use a single
# synth channel (typically OPL) for both music and sound effects.
# medium: Medium room preset that works well with a wide variety of games.
# large: Large hall preset recommended for games that use separate
# channels for music and digital audio.
# huge: A stronger variant of the large hall preset; works really well
# in some games with more atmospheric soundtracks.
# Note: You can fine-tune per-channel reverb levels via mixer commands.
# Possible values: off, on, tiny, small, medium, large, huge.
# chorus: Enable chorus globally to add a sense of stereo movement to the sound:
# off: No chorus (default).
# on: Enable chorus (normal preset).
# light: A light chorus effect (especially suited for
# synth music that features lots of white noise.)
# normal: Normal chorus that works well with a wide variety of games.
# strong: An obvious and upfront chorus effect.
# Note: You can fine-tune per-channel chorus levels via mixer commands.
# Possible values: off, on, light, normal, strong.
nosound = false
rate = 48000
blocksize = 512
prebuffer = 20
negotiate = true
compressor = true
crossfeed = off
reverb = off
chorus = off
[midi]
# mididevice: Device that will receive the MIDI data (from the emulated MIDI
# interface - MPU-401). Choose one of the following:
# 'fluidsynth', to use the built-in MIDI synthesizer. See the
# [fluidsynth] section for detailed configuration.
# 'mt32', to use the built-in Roland MT-32 synthesizer.
# See the [mt32] section for detailed configuration.
# 'auto', to use the first working external MIDI player. This
# might be a software synthesizer or physical device.
# Possible values: auto, oss, alsa, fluidsynth, mt32, none.
# midiconfig: Configuration options for the selected MIDI interface.
# This is usually the id or name of the MIDI synthesizer you want
# to use (find the id/name with DOS command 'mixer /listmidi').
# - This option has no effect when using the built-in synthesizers
# (mididevice = fluidsynth or mt32).
# - When using ALSA, use Linux command 'aconnect -l' to list open
# MIDI ports, and select one (for example 'midiconfig=14:0'
# for sequencer client 14, port 0).
# - If you're using a physical Roland MT-32 with revision 0 PCB,
# the hardware may require a delay in order to prevent its
# buffer from overflowing. In that case, add 'delaysysex',
# for example: 'midiconfig=2 delaysysex'.
# See the README/Manual for more details.
# mpu401: Type of MPU-401 to emulate.
# Possible values: intelligent, uart, none.
mididevice = none
midiconfig =
mpu401 = none
[fluidsynth]
# soundfont: Path to a SoundFont file in .sf2 format. You can use an
# absolute or relative path, or the name of an .sf2 inside
# the 'soundfonts' directory within your DOSBox configuration
# directory.
# Note: The optional volume scaling percentage after the filename
# has been deprecated. Please use a mixer command instead to
# change the FluidSynth audio channel's volume, e.g.:
# MIXER FSYNTH 200
# fsynth_chorus: Chorus effect: 'auto', 'on', 'off', or custom values.
# When using custom values:
# All five must be provided in-order and space-separated.
# They are: voice-count level speed depth modulation-wave, where:
# - voice-count is an integer from 0 to 99.
# - level is a decimal from 0.0 to 10.0
# - speed is a decimal, measured in Hz, from 0.1 to 5.0
# - depth is a decimal from 0.0 to 21.0
# - modulation-wave is either 'sine' or 'triangle'
# For example: chorus = 3 1.2 0.3 8.0 sine
# Note: You can disable the FluidSynth chorus and enable the
# mixer-level chorus on the FluidSynth channel instead, or
# enable both chorus effects at the same time. Whether this
# sounds good depends on the SoundFont and the chorus settings
# being used.
# fsynth_reverb: Reverb effect: 'auto', 'on', 'off', or custom values.
# When using custom values:
# All four must be provided in-order and space-separated.
# They are: room-size damping width level, where:
# - room-size is a decimal from 0.0 to 1.0
# - damping is a decimal from 0.0 to 1.0
# - width is a decimal from 0.0 to 100.0
# - level is a decimal from 0.0 to 1.0
# For example: reverb = 0.61 0.23 0.76 0.56
# Note: You can disable the FluidSynth reverb and enable the
# mixer-level reverb on the FluidSynth channel instead, or
# enable both reverb effects at the same time. Whether this
# sounds good depends on the SoundFont and the reverb settings
# being used.
# fsynth_filter: Filter for the FluidSynth audio output:
# off: Don't filter the output (default).
# <custom>: Custom filter definition; see 'sb_filter' for details.
soundfont = default.sf2
fsynth_chorus = auto
fsynth_reverb = auto
fsynth_filter = off
[mt32]
# model: Model of synthesizer to use.
# 'auto' picks the first model with available ROMs, in order as listed.
# 'cm32l' and 'mt32' pick the first model of their type, in the order listed.
# 'mt32_old' and 'mt32_new' are aliases for 1.07 and 2.04, respectively.
# Possible values: auto, cm32l, cm32l_102, cm32l_100, mt32, mt32_old, mt32_107, mt32_106, mt32_105, mt32_104, mt32_bluer, mt32_new, mt32_204.
# romdir: The directory containing ROMs for one or more models.
# The directory can be absolute or relative, or leave it blank to
# use the 'mt32-roms' directory in your DOSBox configuration
# directory. Other common system locations will be checked as well.
# ROM files inside this directory may include any of the following:
# - MT32_CONTROL.ROM and MT32_PCM.ROM, for the 'mt32' model.
# - CM32L_CONTROL.ROM and CM32L_PCM.ROM, for the 'cm32l' model.
# - Unzipped MAME MT-32 and CM-32L ROMs, for the versioned models.
# mt32_filter: Filter for the Roland MT-32/CM-32L audio output:
# off: Don't filter the output (default).
# <custom>: Custom filter definition; see 'sb_filter' for details.
model = auto
romdir =
mt32_filter = off
[sblaster]
# sbtype: Type of Sound Blaster to emulate. 'gb' is Game Blaster.
# Possible values: sb1, sb2, sbpro1, sbpro2, sb16, gb, none.
# sbbase: The IO address of the Sound Blaster.
# Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
# irq: The IRQ number of the Sound Blaster.
# Possible values: 7, 5, 3, 9, 10, 11, 12.
# dma: The DMA number of the Sound Blaster.
# Possible values: 1, 5, 0, 3, 6, 7.
# hdma: The High DMA number of the Sound Blaster.
# Possible values: 1, 5, 0, 3, 6, 7.
# sbmixer: Allow the Sound Blaster mixer to modify the DOSBox mixer.
# sbwarmup: Silence initial DMA audio after card power-on, in milliseconds.
# This mitigates pops heard when starting many SB-based games.
# Reduce this if you notice intial playback is missing audio.
# oplmode: Type of OPL emulation. On 'auto' the mode is determined by 'sbtype'.
# All OPL modes are AdLib-compatible, except for 'cms'.
# Possible values: auto, cms, opl2, dualopl2, opl3, opl3gold, none.
# sb_filter: Type of filter to emulate for the Sound Blaster digital sound output:
# auto: Use the appropriate filter determined by 'sbtype'.
# sb1, sb2, sbpro1, sbpro2, sb16:
# Use the filter of this Sound Blaster model.
# modern: Use linear interpolation upsampling that acts as a low-pass
# filter; this is the legacy DOSBox behaviour (default).
# off: Don't filter the output.
# <custom>: One or two custom filters in the following format:
# TYPE ORDER FREQ
# Where TYPE can be 'hpf' (high-pass) or 'lpf' (low-pass),
# ORDER is the order of the filter from 1 to 16
# (1st order = 6dB/oct slope, 2nd order = 12dB/oct, etc.),
# and FREQ is the cutoff frequency in Hz. Examples:
# lpf 2 12000
# hpf 3 120 lfp 1 6500
# sb_filter_always_on: Force the Sound Blaster filter to be always on
# (disallow programs from turning the filter off).
# opl_filter: Type of filter to emulate for the Sound Blaster OPL output:
# auto: Use the appropriate filter determined by 'sbtype' (default).
# sb1, sb2, sbpro1, sbpro2, sb16:
# Use the filter of this Sound Blaster model.
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
# cms_filter: Filter for the Sound Blaster CMS output:
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
sbtype = none
sbbase = 220
irq = 7
dma = 1
hdma = 5
sbmixer = false
sbwarmup = 100
oplmode = auto
sb_filter = modern
sb_filter_always_on = false
opl_filter = auto
cms_filter = on
[gus]
# gus: Enable Gravis UltraSound emulation.
# 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_filter: Filter for the Gravis UltraSound audio output:
# off: Don't filter the output (default).
# <custom>: Custom filter definition; see 'sb_filter' for details.
gus = false
gusbase = 240
gusirq = 5
gusdma = 3
ultradir = C:\ULTRASND
gus_filter = off
[innovation]
# sidmodel: Model of chip to emulate in the Innovation SSI-2001 card:
# - auto: Selects the 6581 chip.
# - 6581: The original chip, known for its bassy and rich character.
# - 8580: A later revision that more closely matched the SID specification.
# It fixed the 6581's DC bias and is less prone to distortion.
# The 8580 is an option on reproduction cards, like the DuoSID.
# - none: Disables the card.
# Possible values: auto, 6581, 8580, none.
# sidclock: The SID chip's clock frequency, which is jumperable on reproduction cards.
# - default: uses 0.895 MHz, per the original SSI-2001 card.
# - c64ntsc: uses 1.023 MHz, per NTSC Commodore PCs and the DuoSID.
# - c64pal: uses 0.985 MHz, per PAL Commodore PCs and the DuoSID.
# - hardsid: uses 1.000 MHz, available on the DuoSID.
# Possible values: default, c64ntsc, c64pal, hardsid.
# sidport: The IO port address of the Innovation SSI-2001.
# Possible values: 240, 260, 280, 2a0, 2c0.
# 6581filter: The SID's analog filtering meant that each chip was physically unique.
# Adjusts the 6581's filtering strength as a percent from 0 to 100.
# 8580filter: Adjusts the 8580's filtering strength as a percent from 0 to 100.
# innovation_filter: Filter for the Innovation audio output:
# off: Don't filter the output (default).
# <custom>: Custom filter definition; see 'sb_filter' for details.
sidmodel = none
sidclock = default
sidport = 280
6581filter = 50
8580filter = 50
innovation_filter = off
[speaker]
# pcspeaker: PC speaker emulation model:
# discrete: Waveform is created using discrete steps (default).
# Works well for games that use RealSound-type effects.
# impulse: Waveform is created using sinc impulses.
# Recommended for square-wave games, like Commander Keen.
# While improving accuracy, it is more CPU intensive.
# none/off: Don't use the PC Speaker.
# Possible values: discrete, impulse, none, off.
# pcspeaker_filter: Filter for the PC Speaker output:
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
# tandy: Enable Tandy Sound System emulation.
# For 'auto', emulation is present only if machine is set to 'tandy'.
# Possible values: auto, on, off.
# tandy_filter: Filter for the Tandy synth output:
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
# tandy_dac_filter: Filter for the Tandy DAC output:
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
# lpt_dac: Type of DAC plugged into the parallel port:
# disney: Disney Sound Source.
# covox: Covox Speech Thing.
# ston1: Stereo-on-1 DAC, in stereo up to 30 kHz.
# none/off: Don't use a parallel port DAC (default).
# Possible values: none, disney, covox, ston1, off.
# lpt_dac_filter: Filter for the LPT DAC audio device(s):
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
# ps1audio: Enable IBM PS/1 Audio emulation.
# ps1audio_filter: Filter for the PS/1 Audio synth output:
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
# ps1audio_dac_filter: Filter for the PS/1 Audio DAC output:
# on: Filter the output (default).
# off: Don't filter the output.
# <custom>: Custom filter definition; see 'sb_filter' for details.
pcspeaker = discrete
pcspeaker_filter = on
tandy = auto
tandy_filter = on
tandy_dac_filter = on
lpt_dac = none
lpt_dac_filter = on
ps1audio = false
ps1audio_filter = on
ps1audio_dac_filter = on
[reelmagic]
# reelmagic: ReelMagic (aka REALmagic) MPEG playback support.
# off: Disable support (default).
# cardonly: Initialize the card without loading the FMPDRV.EXE driver.
# on: Initialize the card and load the FMPDRV.EXE on start-up.
# reelmagic_key: Set the 32-bit magic key used to decode the game's videos.
# auto: Use the built-in routines to determine the key (default).
# common: Use the most commonly found key, which is 0x40044041.
# thehorde: Use The Horde's key, which is 0xC39D7088.
# <custom>: Set a custom key in hex format (e.g., 0x12345678).
# reelmagic_fcode: Override the frame rate code used during video playback.
# 0: No override: attempt automatic rate discovery (default).
# 1 to 7: Override the frame rate to one the following (use 1 through 7):
# 1=23.976, 2=24, 3=25, 4=29.97, 5=30, 6=50, or 7=59.94 FPS.
reelmagic = off
reelmagic_key = auto
reelmagic_fcode = 0
[joystick]
# joysticktype: Type of joystick to emulate: auto (default),
# auto : Detect and use any joystick(s), if possible.,
# 2axis : Support up to two joysticks, each with 2 axis
# 4axis : Support the first joystick only, as a 4-axis type.
# 4axis_2 : Support the second joystick only, as a 4-axis type.
# fcs : Emulate joystick as an original Thrustmaster FCS.
# ch : Emulate joystick as an original CH Flightstick.
# hidden : Prevent DOS from seeing the joystick(s), but enable them for
# mapping.
# disabled : Fully disable joysticks: won't be polled, mapped, or visible in DOS.
# (Remember to reset DOSBox's mapperfile if you saved it earlier)
# Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, hidden, disabled.
# 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.
# circularinput: enable translation of circular input to square output.
# Try enabling this if your left analog stick can only move in a circle.
# deadzone: the percentage of motion to ignore. 100 turns the stick into a digital one.
# use_joy_calibration_hotkeys: Activates hotkeys to allow realtime calibration of the joystick's x and y axis.
# Only consider this if in-game calibration fails and other settings have been
# tried.
# - Ctrl/Cmd+Arrow-keys adjusts the axis' scalar value:
# - left and right diminish or magnify the x-axis scalar, respectively.
# - down and up diminish or magnify the y-axis scalar, respectively.
# - Alt+Arrow-keys adjusts the axis' offset position:
# - left and right shift x-axis offset in the given direction.
# - down and up shift the y-axis offset in the given direction.
# - Reset the X and Y calibration using Ctrl+Delete and Ctrl+Home, respectively.
# Each tap will report X or Y calibration values you can set below. When you find
# parameters that work, quit the game, switch this setting back to false, and
# populate the reported calibration parameters.
# joy_x_calibration: Apply x-axis calibration parameters from the hotkeys. Default is 'auto'.
# joy_y_calibration: Apply Y-axis calibration parameters from the hotkeys. Default is 'auto'.
joysticktype = auto
timed = true
autofire = false
swap34 = false
buttonwrap = false
circularinput = false
deadzone = 10
use_joy_calibration_hotkeys = false
joy_x_calibration = auto
joy_y_calibration = auto
[serial]
# serial1: set type of device connected to com port.
# Can be disabled, dummy, mouse, modem, nullmodem, direct.
# Additional parameters must be on the same line in the form of
# parameter:value. Parameter for all types is irq (optional).
# for mouse:
# model, overrides setting from [mouse] section
# for direct: realport (required), rxdelay (optional).
# (realport:COM1 realport:ttyS0).
# for modem: listenport, sock, baudrate (all optional).
# for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
# transparent, port, inhsocket, sock (all optional).
# SOCK parameter specifies the protocol to be used by both sides
# of the conection. 0 for TCP and 1 for ENet reliable UDP.
# Example: serial1=modem listenport:5000 sock:1
# Possible values: dummy, disabled, mouse, modem, nullmodem, direct.
# serial2: see serial1
# Possible values: dummy, disabled, mouse, modem, nullmodem, direct.
# serial3: see serial1
# Possible values: dummy, disabled, mouse, modem, nullmodem, direct.
# serial4: see serial1
# Possible values: dummy, disabled, mouse, modem, nullmodem, direct.
# phonebookfile: File used to map fake phone numbers to addresses.
serial1 = dummy
serial2 = dummy
serial3 = disabled
serial4 = disabled
phonebookfile = phonebook.txt
[dos]
# xms: Enable XMS support.
# 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.
# umb: Enable UMB support.
# ver: Set DOS version (5.0 by default). Specify as major.minor format.
# A single number is treated as the major version.
# Common settings are 3.3, 5.0, 6.22, and 7.1.
# country: Set DOS country code which will affect country-specific
# information such as date, time, and decimal formats.
# If set to 0, the country code corresponding to the
# selected keyboard layout will be used.
# expand_shell_variable: Enable expanding environment variables such as %PATH%
# while in the DOS command shell. FreeDOS and MS-DOS 7/8
# COMMAND.COM supports this behavior.
# keyboardlayout: Language code of the keyboard layout (or none).
xms = false
ems = false
umb = false
ver = 5.0
country = 0
expand_shell_variable = false
keyboardlayout = auto
[ipx]
# ipx: Enable ipx over UDP/IP emulation.
ipx = false
[ethernet]
# ne2000: Enable emulation of a Novell NE2000 network card on a software-based
# network (using libslirp) with properties as follows:
# - 255.255.255.0 : Subnet mask of the 10.0.2.0 virtual LAN.
# - 10.0.2.2 : IP of the gateway and DHCP service.
# - 10.0.2.3 : IP of the virtual DNS server.
# - 10.0.2.15 : First IP provided by DHCP, your IP!
# Note: Inside DOS, setting this up requires an NE2000 packet driver,
# DHCP client, and TCP/IP stack. You might need port-forwarding
# from the host into the DOS guest, and from your router to your
# host when acting as the server for multiplayer games.
# nicbase: The base address of the NE2000 card.
# Note: Addresses 220 and 240 might not be available as they're assigned
# to the Sound Blaster and Gravis UltraSound by default.
# Possible values: 200, 220, 240, 260, 280, 2c0, 300, 320, 340, 360.
# nicirq: The interrupt used by the NE2000 card.
# Note: IRQs 3 and 5 might not be available as they're assigned
# to 'serial2' and the Gravis UltraSound by default.
# Possible values: 3, 4, 5, 9, 10, 11, 12, 14, 15.
# macaddr: The MAC address of the NE2000 card.
# tcp_port_forwards: Forwards one or more TCP ports from the host into the DOS guest.
# The format is:
# port1 port2 port3 ... (e.g., 21 80 443)
# This will forward FTP, HTTP, and HTTPS into the DOS guest.
# If the ports are privileged on the host, a mapping can be used
# host:guest ..., (e.g., 8021:21 8080:80)
# This will forward ports 8021 and 8080 to FTP and HTTP in the guest
# A range of adjacent ports can be abbreviated with a dash:
# start-end ... (e.g., 27910-27960)
# This will forward ports 27910 to 27960 into the DOS guest.
# Mappings and ranges can be combined, too:
# hstart-hend:gstart-gend ..., (e.g, 8040-8080:20-60)
# This forwards ports 8040 to 8080 into 20 to 60 in the guest
# Notes:
# - If mapped ranges differ, the shorter range is extended to fit.
# - If conflicting host ports are given, only the first one is setup.
# - If conflicting guest ports are given, the latter rule takes precedent.
# udp_port_forwards: Forwards one or more UDP ports from the host into the DOS guest.
# The format is the same as for TCP port forwards.
ne2000 = true
nicbase = 300
nicirq = 3
macaddr = AC:DE:48:88:99:AA
tcp_port_forwards =
udp_port_forwards =
[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.