diff --git a/CHANGELOG b/CHANGELOG
index 8e080cc1b..dfc5ad722 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,4 @@
-NEXT
+2024.10.01
- Allow the ".inst" extension for CUE sheets. (Allofich)
- Add SET /FIRST, a DOSBox-X extension, that takes the specified
variable if it exists and moves it to the front of the environment
diff --git a/configure.ac b/configure.ac
index b8b2e71a2..edb5b3c0f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
dnl Init.
-AC_INIT(dosbox-x,2024.07.01,[https://github.com/joncampbell123/dosbox-x/issues],[],[https://dosbox-x.com])
+AC_INIT(dosbox-x,2024.10.01,[https://github.com/joncampbell123/dosbox-x/issues],[],[https://dosbox-x.com])
AC_PREREQ(2.60)
AC_CONFIG_SRCDIR(README.md)
diff --git a/contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml.in b/contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml.in
index 9b06d39d7..8ef6ab7e5 100644
--- a/contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml.in
+++ b/contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml.in
@@ -10,7 +10,7 @@
Emulation
-
+
diff --git a/contrib/translations/de/de_DE.lng b/contrib/translations/de/de_DE.lng
index e911baaf9..4154af9ac 100644
--- a/contrib/translations/de/de_DE.lng
+++ b/contrib/translations/de/de_DE.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:German
:DOSBOX-X:CODEPAGE:858
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:PROGRAM_BOOT_BOOTING
Starte von Laufwerk
diff --git a/contrib/translations/de/de_pc98.lng b/contrib/translations/de/de_pc98.lng
index 604b1f195..be3e04a6e 100644
--- a/contrib/translations/de/de_pc98.lng
+++ b/contrib/translations/de/de_pc98.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:German
:DOSBOX-X:CODEPAGE:858
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:PROGRAM_BOOT_BOOTING
Starte von Laufwerk
diff --git a/contrib/translations/en/en_US.lng b/contrib/translations/en/en_US.lng
index 1fd3c6492..7b5114354 100644
--- a/contrib/translations/en/en_US.lng
+++ b/contrib/translations/en/en_US.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:English (United States)
:DOSBOX-X:CODEPAGE:437
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Lines in this section will be run at startup.
diff --git a/contrib/translations/es/es_ES.lng b/contrib/translations/es/es_ES.lng
index 4be9e98d8..ad142d20d 100644
--- a/contrib/translations/es/es_ES.lng
+++ b/contrib/translations/es/es_ES.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Spanish (Spain)
:DOSBOX-X:CODEPAGE:858
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Las líneas de esta sección se iniciarán al inicio.
diff --git a/contrib/translations/fr/fr_FR.lng b/contrib/translations/fr/fr_FR.lng
index 03ffe6ed1..96b3db702 100644
--- a/contrib/translations/fr/fr_FR.lng
+++ b/contrib/translations/fr/fr_FR.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:French (France)
:DOSBOX-X:CODEPAGE:859
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Les lignes de cette section seront exécutées au démarrage.
diff --git a/contrib/translations/hu/hu_HU.lng b/contrib/translations/hu/hu_HU.lng
index 3be5e9245..8ca54fbf8 100644
--- a/contrib/translations/hu/hu_HU.lng
+++ b/contrib/translations/hu/hu_HU.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Hungarian (Hungary)
:DOSBOX-X:CODEPAGE:852
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Ebben a szekcióban lévő sorok indításkor lefutnak.
diff --git a/contrib/translations/it/it_IT.lng b/contrib/translations/it/it_IT.lng
index 3787a8d61..b54bcaf77 100644
--- a/contrib/translations/it/it_IT.lng
+++ b/contrib/translations/it/it_IT.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Italiano (Italy)
:DOSBOX-X:CODEPAGE:437
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:PROGRAM_IMGMAKE_BADSIZE
Argomenti errati per -size o -chs.
diff --git a/contrib/translations/ja/ja_JP.lng b/contrib/translations/ja/ja_JP.lng
index ad6281ce7..6ed81e1da 100644
--- a/contrib/translations/ja/ja_JP.lng
+++ b/contrib/translations/ja/ja_JP.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Japanese
:DOSBOX-X:CODEPAGE:932
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:PC-98, JEGA, DOS/V エミュレーション、または とコード ページ 932 の日本語フォントを使用して、日本語の表示と印刷を直接サポートします
:AUTOEXEC_CONFIGFILE_HELP
このセクションに記載の行は起動時に実行されます。
diff --git a/contrib/translations/ko/ko_KR.lng b/contrib/translations/ko/ko_KR.lng
index f792674fd..7845e9b5f 100644
--- a/contrib/translations/ko/ko_KR.lng
+++ b/contrib/translations/ko/ko_KR.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Korean
:DOSBOX-X:CODEPAGE:949
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:DOS/V 에뮬레이션 또는 코드 페이지 949의 한국어 글꼴을 사용하여 한국어 표시 및 인쇄를 직접 지원합니다.
:AUTOEXEC_CONFIGFILE_HELP
이 섹션에 나열된 줄은 시작할 때 실행됩니다.
diff --git a/contrib/translations/nl/nl_NL.lng b/contrib/translations/nl/nl_NL.lng
index 42a95352d..8feef0626 100644
--- a/contrib/translations/nl/nl_NL.lng
+++ b/contrib/translations/nl/nl_NL.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Nederlands (Nederland)
:DOSBOX-X:CODEPAGE:858
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Lijnen in dit gedeelte worden uitgevoerd bij opstarten.
diff --git a/contrib/translations/pt/pt_BR.lng b/contrib/translations/pt/pt_BR.lng
index 0359377bd..884fa26cd 100644
--- a/contrib/translations/pt/pt_BR.lng
+++ b/contrib/translations/pt/pt_BR.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Portuguese (Brazil)
:DOSBOX-X:CODEPAGE:860
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
As linhas nesta seção serão sempre executadas ao se iniciar o DOSBox-X.
diff --git a/contrib/translations/ru/ru_RU.lng b/contrib/translations/ru/ru_RU.lng
index 65a08cdb2..e45fa63da 100644
--- a/contrib/translations/ru/ru_RU.lng
+++ b/contrib/translations/ru/ru_RU.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Русский (Россия)
:DOSBOX-X:CODEPAGE:866
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Строки в этом разделе будут выполнены при запуске.
diff --git a/contrib/translations/tr/tr_TR.lng b/contrib/translations/tr/tr_TR.lng
index 4a58460e3..cb890b737 100644
--- a/contrib/translations/tr/tr_TR.lng
+++ b/contrib/translations/tr/tr_TR.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Turkish (Turkey)
:DOSBOX-X:CODEPAGE:857
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:
:AUTOEXEC_CONFIGFILE_HELP
Lines in this section will be run at startup.
diff --git a/contrib/translations/zh/zh_CN.lng b/contrib/translations/zh/zh_CN.lng
index 35ad46db9..cff1293c8 100644
--- a/contrib/translations/zh/zh_CN.lng
+++ b/contrib/translations/zh/zh_CN.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Simplified Chinese
:DOSBOX-X:CODEPAGE:936
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:建议将国家和代码页设为 86,936 并搭配中文字体; 或使用 chs 或 cn 中文 DOS/V 模式以直接支持中文显示和打印
:AUTOEXEC_CONFIGFILE_HELP
Lines in this section will be run at startup.
diff --git a/contrib/translations/zh/zh_TW.lng b/contrib/translations/zh/zh_TW.lng
index 4a282a981..d76ea9fc1 100644
--- a/contrib/translations/zh/zh_TW.lng
+++ b/contrib/translations/zh/zh_TW.lng
@@ -1,6 +1,6 @@
:DOSBOX-X:LANGUAGE:Traditional Chinese
:DOSBOX-X:CODEPAGE:950
-:DOSBOX-X:VERSION:2024.07.01
+:DOSBOX-X:VERSION:2024.10.01
:DOSBOX-X:REMARK:建議將國家和字碼頁設為 886,950 並搭配中文字型; 或使用 cht 或 tw 中文 DOS/V 模式以直接支援中文顯示和列印
:AUTOEXEC_CONFIGFILE_HELP
區段中的指令行會在啟動時執行.
diff --git a/contrib/windows/installer/DOSBox-X-installer.iss b/contrib/windows/installer/DOSBox-X-installer.iss
index 5f444da35..1e216be3d 100644
--- a/contrib/windows/installer/DOSBox-X-installer.iss
+++ b/contrib/windows/installer/DOSBox-X-installer.iss
@@ -1,5 +1,5 @@
#define MyAppName "DOSBox-X"
-#define MyAppVersion "2024.07.01"
+#define MyAppVersion "2024.10.01"
#define MyAppBit "(32/64bit for Windows)"
#define MyAppPublisher "joncampbell123 [DOSBox-X Team]"
#define MyAppURL "https://dosbox-x.com/"
diff --git a/contrib/windows/installer/DOSBox-X-setup.iss b/contrib/windows/installer/DOSBox-X-setup.iss
index aca9cc535..a07acf20c 100644
--- a/contrib/windows/installer/DOSBox-X-setup.iss
+++ b/contrib/windows/installer/DOSBox-X-setup.iss
@@ -1,5 +1,5 @@
#define MyAppName "DOSBox-X"
-#define MyAppVersion "2024.07.01"
+#define MyAppVersion "2024.10.01"
#define MyAppBit "(32-bit)"
#define MyAppPublisher "joncampbell123 [DOSBox-X Team]"
#define MyAppURL "https://dosbox-x.com/"
diff --git a/contrib/windows/installer/DOSBox-X-setupXP.iss b/contrib/windows/installer/DOSBox-X-setupXP.iss
index 3a408d2f9..86ddc4b9e 100644
--- a/contrib/windows/installer/DOSBox-X-setupXP.iss
+++ b/contrib/windows/installer/DOSBox-X-setupXP.iss
@@ -1,5 +1,5 @@
#define MyAppName "DOSBox-X"
-#define MyAppVersion "2024.07.01"
+#define MyAppVersion "2024.10.01"
#define MyAppBit "(32/64bit for XP)"
#define MyAppPublisher "joncampbell123 [DOSBox-X Team]"
#define MyAppURL "https://dosbox-x.com/"
diff --git a/contrib/windows/installer/dosbox-x.reference.setup.conf b/contrib/windows/installer/dosbox-x.reference.setup.conf
index c14fc42ae..9e60092af 100644
--- a/contrib/windows/installer/dosbox-x.reference.setup.conf
+++ b/contrib/windows/installer/dosbox-x.reference.setup.conf
@@ -1,4 +1,4 @@
-# This is the configuration file for DOSBox-X 2024.07.01. (Please use the latest version of DOSBox-X)
+# This is the configuration file for DOSBox-X 2024.10.01. (Please use the latest version of DOSBox-X)
# Lines starting with a # are comment lines and are ignored by DOSBox-X.
# They are used to (briefly) document the effect of each option.
# To write out ALL options, use command 'config -all' with -wc or -writeconf options.
@@ -207,6 +207,10 @@ debuggerrun = debugger
# startbanner: If set (default), DOSBox-X will display the welcome banner when it starts.
# bannercolortheme: You can specify a different background color theme for the welcome banner from the default one.
# Possible values: default, black, red, green, yellow, blue, magenta, cyan, white.
+# configuration tool theme: Theme for the configuration tool.
+# If not set, host dark mode setting will be followed.
+#
+# Possible values: Windows Default, Arizona, Black Leather Jacket, Bordeaux, Cinnamon, Designer, Emerald City, Fluorescent, HotDog Stand, LCD Default Screen Settings, LCD Reversed - Dark, LCD Reversed - Light, Mahogany, Monochrome, Ocean, Pastel, Patchwork, Plasma Power Saver, Rugby, The Blues, Tweed, Valentine, Wingtips.
# dpi aware: Set this option (auto by default) to indicate to your OS that DOSBox-X is DPI aware.
# If it is not set, Windows Vista/7/8/10 and higher may upscale the DOSBox-X window
# on higher resolution monitors which is probably not what you want.
@@ -450,6 +454,7 @@ fastbioslogo = false
#DOSBOX-X-ADV:disable graphical splash = false
startbanner = true
bannercolortheme = default
+configuration tool theme =
dpi aware = auto
quit warning = auto
#DOSBOX-X-ADV:allow quit after warning = true
@@ -919,6 +924,10 @@ j3100colorscroll = false
#DOSBOX-X-ADV:# This does not affect the linear framebuffer's location. It only affects the linear framebuffer
#DOSBOX-X-ADV:# location reported by the VESA BIOS. Set to nonzero for DOS games with sloppy VESA graphics pointer management.
#DOSBOX-X-ADV:# MFX "Melvindale" (1996): Set this option to 2 to center the picture properly.
+#DOSBOX-X-ADV:# vesa lfb pel scanline adjust: If non-zero, the VESA BIOS will report the linear framebuffer offset by this many pixels.
+#DOSBOX-X-ADV:# This does not affect the linear framebuffer's location. It only affects the linear framebuffer
+#DOSBOX-X-ADV:# location reported by the VESA BIOS. Set to nonzero for DOS games with sloppy VESA graphics pointer management.
+#DOSBOX-X-ADV:# Contract "Out of Control" (1997): Set this option to 128 to fix the display.
#DOSBOX-X-ADV:# vesa map non-lfb modes to 128kb region: If set, VESA BIOS SVGA modes will be set to map 128KB of video memory to A0000-BFFFF instead of
#DOSBOX-X-ADV:# 64KB at A0000-AFFFF. This does not affect the SVGA window size or granularity.
#DOSBOX-X-ADV:# Some games or demoscene productions assume that they can render into the next SVGA window/bank
@@ -1007,7 +1016,7 @@ j3100colorscroll = false
# Possible values: true, false, 1, 0, auto.
#DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
-#DOSBOX-X-ADV-SEE:# -> int 10h use video parameter table; vmemdelay; prevent capture; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; enable supermegazeux tweakmode; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; vga fill active memory; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes; ignore sequencer blanking
+#DOSBOX-X-ADV-SEE:# -> int 10h use video parameter table; vmemdelay; prevent capture; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; enable supermegazeux tweakmode; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; vga fill active memory; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa lfb pel scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes; ignore sequencer blanking
#DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV:int 10h use video parameter table = auto
#DOSBOX-X-ADV:vmemdelay = 0
@@ -1046,6 +1055,7 @@ high intensity blinking = true
#DOSBOX-X-ADV:vesa zero buffer on get information = true
#DOSBOX-X-ADV:vesa set display vsync = -1
#DOSBOX-X-ADV:vesa lfb base scanline adjust = 0
+#DOSBOX-X-ADV:vesa lfb pel scanline adjust = 0
#DOSBOX-X-ADV:vesa map non-lfb modes to 128kb region = false
#DOSBOX-X-ADV:ega per scanline hpel = true
#DOSBOX-X-ADV:allow hpel effects = false
@@ -1613,9 +1623,14 @@ fluid.soundfont =
#DOSBOX-X-ADV:# Option is needed for:
#DOSBOX-X-ADV:# Inconexia by Iguana (1993)
# sbmixer: Allow the Sound Blaster mixer to modify the DOSBox-X mixer.
+#DOSBOX-X-ADV:# cms: Enable CMS emulation ('auto' by default).
+#DOSBOX-X-ADV:# off: Disable CMS emulation (except when the Game Blaster is selected).
+#DOSBOX-X-ADV:# on: Enable CMS emulation on Sound Blaster 1 and 2.
+#DOSBOX-X-ADV:# auto: Auto-enable CMS emulation for Sound Blaster 1 and Game Blaster.
+#DOSBOX-X-ADV:# Possible values: on, off, auto.
# oplmode: Type of OPL emulation. On 'auto' the mode is determined by the 'sbtype' setting.
-# All OPL modes are AdLib-compatible, except for 'cms' (set 'sbtype=none' with 'cms' for a Game Blaster).
-# Possible values: auto, cms, opl2, dualopl2, opl3, opl3gold, none, hardware, hardwaregb, esfm.
+# All OPL modes are AdLib-compatible.
+# Possible values: auto, opl2, dualopl2, opl3, opl3gold, none, hardware, hardwaregb, esfm.
#DOSBOX-X-ADV:# adlib force timer overflow on detect: If set, Adlib/OPL emulation will signal 'overflow' on timers after 50 I/O reads.
#DOSBOX-X-ADV:# This is a temporary hack to work around timing bugs noted in DOSBox-X. Certain
#DOSBOX-X-ADV:# games (Wolfenstein 3D) poll the Adlib status port a fixed number of times assuming
@@ -1678,7 +1693,7 @@ fluid.soundfont =
#DOSBOX-X-ADV:# relies on this behavior for Sound Blaster output and should be enabled for accuracy in emulation.
#DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
-#DOSBOX-X-ADV-SEE:# -> mindma; irq hack; dsp command aliases; pic unmask irq; enable asp; disable filtering; dsp write buffer status must return 0x7f or 0xff; pre-set sbpro stereo; adlib force timer overflow on detect; retrowave_spi_cs; force dsp auto-init; force goldplay; goldplay stereo; dsp require interrupt acknowledge; dsp write busy delay; sample rate limits; instant direct dac; stereo control with sbpro only; dsp busy cycle rate; dsp busy cycle always; dsp busy cycle duty; io port aliasing
+#DOSBOX-X-ADV-SEE:# -> mindma; irq hack; dsp command aliases; pic unmask irq; enable asp; disable filtering; dsp write buffer status must return 0x7f or 0xff; pre-set sbpro stereo; cms; adlib force timer overflow on detect; retrowave_spi_cs; force dsp auto-init; force goldplay; goldplay stereo; dsp require interrupt acknowledge; dsp write busy delay; sample rate limits; instant direct dac; stereo control with sbpro only; dsp busy cycle rate; dsp busy cycle always; dsp busy cycle duty; io port aliasing
#DOSBOX-X-ADV-SEE:#
sbtype = sb16
sbbase = 220
@@ -1697,6 +1712,7 @@ enable speaker = false
#DOSBOX-X-ADV:dsp write buffer status must return 0x7f or 0xff = false
#DOSBOX-X-ADV:pre-set sbpro stereo = false
sbmixer = true
+#DOSBOX-X-ADV:cms = auto
oplmode = auto
#DOSBOX-X-ADV:adlib force timer overflow on detect = false
oplemu = default
@@ -1723,6 +1739,11 @@ blaster environment variable = true
[gus]
# gus: Enable the Gravis Ultrasound emulation.
+# global register read alias: If true, all GUS global registers have a read alias at N and N+0x80.
+# If false, only the voice registers 0x0-0xF have a read alias at 0x80-0x8F as officially documented.
+# If auto, automatically choose based on other settings such as GUS type.
+# This setting may be needed for DOS demoscene entries that assume aliasing behavior such as Out of Control by Contract.
+# Possible values: true, false, 1, 0, auto.
#DOSBOX-X-ADV:# autoamp: If set, GF1 output will reduce in volume automatically if the sum of all channels exceeds full volume.
#DOSBOX-X-ADV:# If not set, then loud music will clip to full volume just as it would on real hardware.
#DOSBOX-X-ADV:# Enable this option for loud music if you want a more pleasing rendition without saturation and distortion.
@@ -1781,6 +1802,7 @@ blaster environment variable = true
#DOSBOX-X-ADV-SEE:# -> autoamp; unmask dma; ignore channel count while active; pic unmask irq; startup initialized; dma enable on dma control polling; clear dma tc irq if excess polling; force master irq enable; gus panning table; gus fixed render rate; irq hack
#DOSBOX-X-ADV-SEE:#
gus = false
+global register read alias = auto
#DOSBOX-X-ADV:autoamp = false
#DOSBOX-X-ADV:unmask dma = false
#DOSBOX-X-ADV:ignore channel count while active = false
@@ -2185,6 +2207,8 @@ timeout = 0
#DOSBOX-X-ADV:# drive z expand path: If set, DOSBox-X will automatically expand the %PATH% environment variable to include the subdirectories on the Z drive.
#DOSBOX-X-ADV:# drive z hide files: The files or directories listed here (separated by space) will be either hidden or removed from the Z drive.
#DOSBOX-X-ADV:# Files with leading forward slashes (e.g. "/DEBUG\BIOSTEST.COM") will become hidden files (DIR /A will list them).
+#DOSBOX-X-ADV:# automount drive directories: If set, DOSBox-X will automatically mount existing drive directories from C drive to Y drive, e.g. "DriveC".
+#DOSBOX-X-ADV:# NOTE: This option is only available under Windows.
#DOSBOX-X-ADV:# hidenonrepresentable: If set, DOSBox-X will hide files on local drives that are non-representative in the current DOS code page.
#DOSBOX-X-ADV:# This may be required for some programs such as Windows 3.x Setup if the drives contain international filenames.
#DOSBOX-X-ADV:# hma minimum allocation: Minimum allocation size for HMA in bytes (equivalent to /HMAMIN= parameter).
@@ -2381,7 +2405,7 @@ timeout = 0
# dos idle api: If set, DOSBox-X can lower the host system's CPU load when a supported guest program is idle.
#DOSBOX-X-ADV-SEE:#
#DOSBOX-X-ADV-SEE:# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
-#DOSBOX-X-ADV-SEE:# -> xms memmove causes flat real mode; xms init causes flat real mode; resized free memory block becomes allocated; badcommandhandler; mscdex device name; hma allow reservation; command shell flush keyboard buffer; special operation file prefix; drive z is remote; drive z convert fat; drive z expand path; drive z hide files; hidenonrepresentable; hma minimum allocation; dos sda size; hma free space; cpm compatibility mode; minimum dos initial private segment; minimum mcb segment; enable dummy device mcb; maximum environment block size on exec; additional environment block size on exec; enable a20 on windows init; zero memory on xms memory allocation; vcpi; unmask timer on disk io; zero int 67h if no ems; zero unused int 68h; emm386 startup active; zero memory on ems memory allocation; ems system handle memory size; ems system handle on even megabyte; ems frame; umb start; umb end; kernel allocation in umb; keep umb on boot; keep private area on boot; private area in umb; autoa20fix; autoloadfix; startincon; int33 max x; int33 max y; int33 xy adjust; int33 hide host cursor if interrupt subroutine; int33 hide host cursor when polling; int33 disable cell granularity; int 13 disk change detect; int 13 extensions; biosps2; int15 wait force unmask irq; int15 mouse callback does not preserve registers; filenamechar; collating and uppercase; con device use int 16h to detect keyboard input; zero memory on int 21h memory allocation; pipe temporary device
+#DOSBOX-X-ADV-SEE:# -> xms memmove causes flat real mode; xms init causes flat real mode; resized free memory block becomes allocated; badcommandhandler; mscdex device name; hma allow reservation; command shell flush keyboard buffer; special operation file prefix; drive z is remote; drive z convert fat; drive z expand path; drive z hide files; automount drive directories; hidenonrepresentable; hma minimum allocation; dos sda size; hma free space; cpm compatibility mode; minimum dos initial private segment; minimum mcb segment; enable dummy device mcb; maximum environment block size on exec; additional environment block size on exec; enable a20 on windows init; zero memory on xms memory allocation; vcpi; unmask timer on disk io; zero int 67h if no ems; zero unused int 68h; emm386 startup active; zero memory on ems memory allocation; ems system handle memory size; ems system handle on even megabyte; ems frame; umb start; umb end; kernel allocation in umb; keep umb on boot; keep private area on boot; private area in umb; autoa20fix; autoloadfix; startincon; int33 max x; int33 max y; int33 xy adjust; int33 hide host cursor if interrupt subroutine; int33 hide host cursor when polling; int33 disable cell granularity; int 13 disk change detect; int 13 extensions; biosps2; int15 wait force unmask irq; int15 mouse callback does not preserve registers; filenamechar; collating and uppercase; con device use int 16h to detect keyboard input; zero memory on int 21h memory allocation; pipe temporary device
#DOSBOX-X-ADV-SEE:#
xms = true
#DOSBOX-X-ADV:xms memmove causes flat real mode = true
@@ -2401,6 +2425,7 @@ floppy drive data rate limit = -1
#DOSBOX-X-ADV:drive z convert fat = false
#DOSBOX-X-ADV:drive z expand path = true
#DOSBOX-X-ADV:drive z hide files = /TEXTUTIL\25.COM /TEXTUTIL\28.COM /TEXTUTIL\50.COM
+#DOSBOX-X-ADV:automount drive directories = false
#DOSBOX-X-ADV:hidenonrepresentable = true
#DOSBOX-X-ADV:hma minimum allocation = 0
ansi.sys = true
diff --git a/dosbox-x.reference.conf b/dosbox-x.reference.conf
index ac5bb4327..30586596b 100644
--- a/dosbox-x.reference.conf
+++ b/dosbox-x.reference.conf
@@ -1,4 +1,4 @@
-# This is the configuration file for DOSBox-X 2024.07.01. (Please use the latest version of DOSBox-X)
+# This is the configuration file for DOSBox-X 2024.10.01. (Please use the latest version of DOSBox-X)
# Lines starting with a # are comment lines and are ignored by DOSBox-X.
# They are used to (briefly) document the effect of each option.
# To write out ALL options, use command 'config -all' with -wc or -writeconf options.
@@ -123,6 +123,10 @@ debuggerrun = debugger
# startbanner: If set (default), DOSBox-X will display the welcome banner when it starts.
# bannercolortheme: You can specify a different background color theme for the welcome banner from the default one.
# Possible values: default, black, red, green, yellow, blue, magenta, cyan, white.
+# configuration tool theme: Theme for the configuration tool.
+# If not set, host dark mode setting will be followed.
+#
+# Possible values: Windows Default, Arizona, Black Leather Jacket, Bordeaux, Cinnamon, Designer, Emerald City, Fluorescent, HotDog Stand, LCD Default Screen Settings, LCD Reversed - Dark, LCD Reversed - Light, Mahogany, Monochrome, Ocean, Pastel, Patchwork, Plasma Power Saver, Rugby, The Blues, Tweed, Valentine, Wingtips.
# dpi aware: Set this option (auto by default) to indicate to your OS that DOSBox-X is DPI aware.
# If it is not set, Windows Vista/7/8/10 and higher may upscale the DOSBox-X window
# on higher resolution monitors which is probably not what you want.
@@ -202,6 +206,7 @@ title =
fastbioslogo = false
startbanner = true
bannercolortheme = default
+configuration tool theme =
dpi aware = auto
quit warning = auto
working directory option = default
@@ -426,7 +431,7 @@ j3100colorscroll = false
# Possible values: true, false, 1, 0, auto.
#
# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
-# -> int 10h use video parameter table; vmemdelay; prevent capture; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; enable supermegazeux tweakmode; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; vga fill active memory; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes; ignore sequencer blanking
+# -> int 10h use video parameter table; vmemdelay; prevent capture; vbe window granularity; vbe window size; enable 8-bit dac; svga lfb base; pci vga; vga attribute controller mapping; enable supermegazeux tweakmode; vga bios use rom image; vga bios rom image; vga bios size override; video bios dont duplicate cga first half rom font; video bios always offer 14-pixel high rom font; video bios always offer 16-pixel high rom font; video bios enable cga second half rom font; forcerate; sierra ramdac; sierra ramdac lock 565; vga fill active memory; page flip debug line; vertical retrace poll debug line; cgasnow; vga 3da undefined bits; rom bios 8x8 CGA font; rom bios video parameter table; int 10h points at vga bios; unmask timer on int 10 setmode; vesa bank switching window mirroring; vesa bank switching window range check; vesa zero buffer on get information; vesa set display vsync; vesa lfb base scanline adjust; vesa lfb pel scanline adjust; vesa map non-lfb modes to 128kb region; ega per scanline hpel; allow hpel effects; allow hretrace effects; hretrace effect weight; vesa modelist cap; vesa modelist width limit; vesa modelist height limit; vesa vbe put modelist in vesa information; vesa vbe 1.2 modes are 32bpp; allow low resolution vesa modes; allow explicit 24bpp vesa modes; allow high definition vesa modes; allow unusual vesa modes; allow 32bpp vesa modes; allow 24bpp vesa modes; allow 16bpp vesa modes; allow 15bpp vesa modes; allow 8bpp vesa modes; allow 4bpp vesa modes; allow 4bpp packed vesa modes; allow tty vesa modes; double-buffered line compare; ignore vblank wraparound; ignore extended memory bit; enable vga resize delay; resize only on vga active display width increase; vga palette update on full load; ignore odd-even mode in non-cga modes; ignore sequencer blanking
#
vmemsize = -1
vmemsizekb = 0
@@ -687,8 +692,8 @@ fluid.soundfont =
# compensate. This setting has no meaning if emulating a Sound Blaster 16 card.
# sbmixer: Allow the Sound Blaster mixer to modify the DOSBox-X mixer.
# oplmode: Type of OPL emulation. On 'auto' the mode is determined by the 'sbtype' setting.
-# All OPL modes are AdLib-compatible, except for 'cms' (set 'sbtype=none' with 'cms' for a Game Blaster).
-# Possible values: auto, cms, opl2, dualopl2, opl3, opl3gold, none, hardware, hardwaregb, esfm.
+# All OPL modes are AdLib-compatible.
+# Possible values: auto, opl2, dualopl2, opl3, opl3gold, none, hardware, hardwaregb, esfm.
# oplemu: Provider for the OPL emulation. 'compat' might provide better quality.
# 'nuked' is the most accurate (but the most CPU-intensive). See oplrate as well.
# Possible values: default, compat, fast, nuked, mame, opl2board, opl3duoboard, retrowave_opl3, esfmu.
@@ -703,7 +708,7 @@ fluid.soundfont =
# blaster environment variable: Whether or not to set the BLASTER environment variable automatically at startup
#
# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
-# -> mindma; irq hack; dsp command aliases; pic unmask irq; enable asp; disable filtering; dsp write buffer status must return 0x7f or 0xff; pre-set sbpro stereo; adlib force timer overflow on detect; retrowave_spi_cs; force dsp auto-init; force goldplay; goldplay stereo; dsp require interrupt acknowledge; dsp write busy delay; sample rate limits; instant direct dac; stereo control with sbpro only; dsp busy cycle rate; dsp busy cycle always; dsp busy cycle duty; io port aliasing
+# -> mindma; irq hack; dsp command aliases; pic unmask irq; enable asp; disable filtering; dsp write buffer status must return 0x7f or 0xff; pre-set sbpro stereo; cms; adlib force timer overflow on detect; retrowave_spi_cs; force dsp auto-init; force goldplay; goldplay stereo; dsp require interrupt acknowledge; dsp write busy delay; sample rate limits; instant direct dac; stereo control with sbpro only; dsp busy cycle rate; dsp busy cycle always; dsp busy cycle duty; io port aliasing
#
sbtype = sb16
sbbase = 220
@@ -725,40 +730,46 @@ goldplay = true
blaster environment variable = true
[gus]
-# gus: Enable the Gravis Ultrasound emulation.
-# gusrate: Sample rate of Ultrasound emulation.
-# Possible values: 49716, 48000, 44100, 32000, 22050, 16000, 11025, 8000.
-# gusmemsize: Amount of RAM on the Gravis Ultrasound in KB. Set to -1 for default.
-# gus master volume: Master Gravis Ultrasound GF1 volume, in decibels. Reducing the master volume can help with games or demoscene productions where the music is too loud and clipping.
-# gusbase: The IO base address of the Gravis Ultrasound.
-# Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300, 210, 230, 250.
-# 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.
-# gustype: Type of Gravis Ultrasound to emulate.
-# classic Original Gravis Ultrasound chipset
-# classic37 Original Gravis Ultrasound with ICS Mixer (rev 3.7)
-# max Gravis Ultrasound MAX emulation (with CS4231 codec)
-# interwave Gravis Ultrasound Plug & Play (interwave)
-# Possible values: classic, classic37, max, interwave.
-# 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: Enable the Gravis Ultrasound emulation.
+# global register read alias: If true, all GUS global registers have a read alias at N and N+0x80.
+# If false, only the voice registers 0x0-0xF have a read alias at 0x80-0x8F as officially documented.
+# If auto, automatically choose based on other settings such as GUS type.
+# This setting may be needed for DOS demoscene entries that assume aliasing behavior such as Out of Control by Contract.
+# Possible values: true, false, 1, 0, auto.
+# gusrate: Sample rate of Ultrasound emulation.
+# Possible values: 49716, 48000, 44100, 32000, 22050, 16000, 11025, 8000.
+# gusmemsize: Amount of RAM on the Gravis Ultrasound in KB. Set to -1 for default.
+# gus master volume: Master Gravis Ultrasound GF1 volume, in decibels. Reducing the master volume can help with games or demoscene productions where the music is too loud and clipping.
+# gusbase: The IO base address of the Gravis Ultrasound.
+# Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300, 210, 230, 250.
+# 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.
+# gustype: Type of Gravis Ultrasound to emulate.
+# classic Original Gravis Ultrasound chipset
+# classic37 Original Gravis Ultrasound with ICS Mixer (rev 3.7)
+# max Gravis Ultrasound MAX emulation (with CS4231 codec)
+# interwave Gravis Ultrasound Plug & Play (interwave)
+# Possible values: classic, classic37, max, interwave.
+# 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.
#
# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
# -> autoamp; unmask dma; ignore channel count while active; pic unmask irq; startup initialized; dma enable on dma control polling; clear dma tc irq if excess polling; force master irq enable; gus panning table; gus fixed render rate; irq hack
#
-gus = false
-gusrate = 48000
-gusmemsize = -1
-gus master volume = 0.00
-gusbase = 240
-gusirq = 5
-gusdma = 3
-gustype = classic
-ultradir = C:\ULTRASND
+gus = false
+global register read alias = auto
+gusrate = 48000
+gusmemsize = -1
+gus master volume = 0.00
+gusbase = 240
+gusirq = 5
+gusdma = 3
+gustype = classic
+ultradir = C:\ULTRASND
[innova]
# innova: Enable the Innovation SSI-2001 emulation.
@@ -1135,7 +1146,7 @@ timeout = 0
# dos idle api: If set, DOSBox-X can lower the host system's CPU load when a supported guest program is idle.
#
# Advanced options (see full configuration reference file [dosbox-x.reference.full.conf] for more details):
-# -> xms memmove causes flat real mode; xms init causes flat real mode; resized free memory block becomes allocated; badcommandhandler; mscdex device name; hma allow reservation; command shell flush keyboard buffer; special operation file prefix; drive z is remote; drive z convert fat; drive z expand path; drive z hide files; hidenonrepresentable; hma minimum allocation; dos sda size; hma free space; cpm compatibility mode; minimum dos initial private segment; minimum mcb segment; enable dummy device mcb; maximum environment block size on exec; additional environment block size on exec; enable a20 on windows init; zero memory on xms memory allocation; vcpi; unmask timer on disk io; zero int 67h if no ems; zero unused int 68h; emm386 startup active; zero memory on ems memory allocation; ems system handle memory size; ems system handle on even megabyte; ems frame; umb start; umb end; kernel allocation in umb; keep umb on boot; keep private area on boot; private area in umb; autoa20fix; autoloadfix; startincon; int33 max x; int33 max y; int33 xy adjust; int33 hide host cursor if interrupt subroutine; int33 hide host cursor when polling; int33 disable cell granularity; int 13 disk change detect; int 13 extensions; biosps2; int15 wait force unmask irq; int15 mouse callback does not preserve registers; filenamechar; collating and uppercase; con device use int 16h to detect keyboard input; zero memory on int 21h memory allocation; pipe temporary device
+# -> xms memmove causes flat real mode; xms init causes flat real mode; resized free memory block becomes allocated; badcommandhandler; mscdex device name; hma allow reservation; command shell flush keyboard buffer; special operation file prefix; drive z is remote; drive z convert fat; drive z expand path; drive z hide files; automount drive directories; hidenonrepresentable; hma minimum allocation; dos sda size; hma free space; cpm compatibility mode; minimum dos initial private segment; minimum mcb segment; enable dummy device mcb; maximum environment block size on exec; additional environment block size on exec; enable a20 on windows init; zero memory on xms memory allocation; vcpi; unmask timer on disk io; zero int 67h if no ems; zero unused int 68h; emm386 startup active; zero memory on ems memory allocation; ems system handle memory size; ems system handle on even megabyte; ems frame; umb start; umb end; kernel allocation in umb; keep umb on boot; keep private area on boot; private area in umb; autoa20fix; autoloadfix; startincon; int33 max x; int33 max y; int33 xy adjust; int33 hide host cursor if interrupt subroutine; int33 hide host cursor when polling; int33 disable cell granularity; int 13 disk change detect; int 13 extensions; biosps2; int15 wait force unmask irq; int15 mouse callback does not preserve registers; filenamechar; collating and uppercase; con device use int 16h to detect keyboard input; zero memory on int 21h memory allocation; pipe temporary device
#
xms = true
xms handles = 0
diff --git a/dosbox-x.reference.full.conf b/dosbox-x.reference.full.conf
index 8f784d360..0a1b001fb 100644
--- a/dosbox-x.reference.full.conf
+++ b/dosbox-x.reference.full.conf
@@ -1,4 +1,4 @@
-# This is the configuration file for DOSBox-X 2024.07.01. (Please use the latest version of DOSBox-X)
+# This is the configuration file for DOSBox-X 2024.10.01. (Please use the latest version of DOSBox-X)
# Lines starting with a # are comment lines and are ignored by DOSBox-X.
# They are used to (briefly) document the effect of each option.
# To write out ALL options, use command 'config -all' with -wc or -writeconf options.
@@ -199,6 +199,10 @@ debuggerrun = debugger
# startbanner: If set (default), DOSBox-X will display the welcome banner when it starts.
# bannercolortheme: You can specify a different background color theme for the welcome banner from the default one.
# Possible values: default, black, red, green, yellow, blue, magenta, cyan, white.
+# configuration tool theme: Theme for the configuration tool.
+# If not set, host dark mode setting will be followed.
+#
+# Possible values: Windows Default, Arizona, Black Leather Jacket, Bordeaux, Cinnamon, Designer, Emerald City, Fluorescent, HotDog Stand, LCD Default Screen Settings, LCD Reversed - Dark, LCD Reversed - Light, Mahogany, Monochrome, Ocean, Pastel, Patchwork, Plasma Power Saver, Rugby, The Blues, Tweed, Valentine, Wingtips.
# dpi aware: Set this option (auto by default) to indicate to your OS that DOSBox-X is DPI aware.
# If it is not set, Windows Vista/7/8/10 and higher may upscale the DOSBox-X window
# on higher resolution monitors which is probably not what you want.
@@ -438,6 +442,7 @@ fastbioslogo = false
disable graphical splash = false
startbanner = true
bannercolortheme = default
+configuration tool theme =
dpi aware = auto
quit warning = auto
allow quit after warning = true
@@ -895,6 +900,10 @@ j3100textcolor =
# This does not affect the linear framebuffer's location. It only affects the linear framebuffer
# location reported by the VESA BIOS. Set to nonzero for DOS games with sloppy VESA graphics pointer management.
# MFX "Melvindale" (1996): Set this option to 2 to center the picture properly.
+# vesa lfb pel scanline adjust: If non-zero, the VESA BIOS will report the linear framebuffer offset by this many pixels.
+# This does not affect the linear framebuffer's location. It only affects the linear framebuffer
+# location reported by the VESA BIOS. Set to nonzero for DOS games with sloppy VESA graphics pointer management.
+# Contract "Out of Control" (1997): Set this option to 128 to fix the display.
# vesa map non-lfb modes to 128kb region: If set, VESA BIOS SVGA modes will be set to map 128KB of video memory to A0000-BFFFF instead of
# 64KB at A0000-AFFFF. This does not affect the SVGA window size or granularity.
# Some games or demoscene productions assume that they can render into the next SVGA window/bank
@@ -1018,6 +1027,7 @@ vesa bank switching window range check = true
vesa zero buffer on get information = true
vesa set display vsync = -1
vesa lfb base scanline adjust = 0
+vesa lfb pel scanline adjust = 0
vesa map non-lfb modes to 128kb region = false
ega per scanline hpel = true
allow hpel effects = false
@@ -1573,9 +1583,14 @@ fluid.chorus.type = 0
# Option is needed for:
# Inconexia by Iguana (1993)
# sbmixer: Allow the Sound Blaster mixer to modify the DOSBox-X mixer.
+# cms: Enable CMS emulation ('auto' by default).
+# off: Disable CMS emulation (except when the Game Blaster is selected).
+# on: Enable CMS emulation on Sound Blaster 1 and 2.
+# auto: Auto-enable CMS emulation for Sound Blaster 1 and Game Blaster.
+# Possible values: on, off, auto.
# oplmode: Type of OPL emulation. On 'auto' the mode is determined by the 'sbtype' setting.
-# All OPL modes are AdLib-compatible, except for 'cms' (set 'sbtype=none' with 'cms' for a Game Blaster).
-# Possible values: auto, cms, opl2, dualopl2, opl3, opl3gold, none, hardware, hardwaregb, esfm.
+# All OPL modes are AdLib-compatible.
+# Possible values: auto, opl2, dualopl2, opl3, opl3gold, none, hardware, hardwaregb, esfm.
# 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
@@ -1653,6 +1668,7 @@ disable filtering = false
dsp write buffer status must return 0x7f or 0xff = false
pre-set sbpro stereo = false
sbmixer = true
+cms = auto
oplmode = auto
adlib force timer overflow on detect = false
oplemu = default
@@ -1679,6 +1695,11 @@ io port aliasing = true
[gus]
# gus: Enable the Gravis Ultrasound emulation.
+# global register read alias: If true, all GUS global registers have a read alias at N and N+0x80.
+# If false, only the voice registers 0x0-0xF have a read alias at 0x80-0x8F as officially documented.
+# If auto, automatically choose based on other settings such as GUS type.
+# This setting may be needed for DOS demoscene entries that assume aliasing behavior such as Out of Control by Contract.
+# Possible values: true, false, 1, 0, auto.
# autoamp: If set, GF1 output will reduce in volume automatically if the sum of all channels exceeds full volume.
# If not set, then loud music will clip to full volume just as it would on real hardware.
# Enable this option for loud music if you want a more pleasing rendition without saturation and distortion.
@@ -1733,6 +1754,7 @@ io port aliasing = true
# the patch files for GUS playback. Patch sets used
# with Timidity should work fine.
gus = false
+global register read alias = auto
autoamp = false
unmask dma = false
ignore channel count while active = false
@@ -2125,6 +2147,8 @@ timeout = 0
# drive z expand path: If set, DOSBox-X will automatically expand the %PATH% environment variable to include the subdirectories on the Z drive.
# drive z hide files: The files or directories listed here (separated by space) will be either hidden or removed from the Z drive.
# Files with leading forward slashes (e.g. "/DEBUG\BIOSTEST.COM") will become hidden files (DIR /A will list them).
+# automount drive directories: If set, DOSBox-X will automatically mount existing drive directories from C drive to Y drive, e.g. "DriveC".
+# NOTE: This option is only available under Windows.
# hidenonrepresentable: If set, DOSBox-X will hide files on local drives that are non-representative in the current DOS code page.
# This may be required for some programs such as Windows 3.x Setup if the drives contain international filenames.
# hma minimum allocation: Minimum allocation size for HMA in bytes (equivalent to /HMAMIN= parameter).
@@ -2337,6 +2361,7 @@ drive z is remote = auto
drive z convert fat = false
drive z expand path = true
drive z hide files = /TEXTUTIL\25.COM /TEXTUTIL\28.COM /TEXTUTIL\50.COM
+automount drive directories = false
hidenonrepresentable = true
hma minimum allocation = 0
ansi.sys = true
diff --git a/include/build_timestamp.h b/include/build_timestamp.h
index df7c30173..48b6dca37 100644
--- a/include/build_timestamp.h
+++ b/include/build_timestamp.h
@@ -1,4 +1,4 @@
/*auto-generated*/
-#define UPDATED_STR "Jul 1, 2024 8:44:00pm"
-#define GIT_COMMIT_HASH "6f1ab09"
+#define UPDATED_STR "Oct 1, 2024 11:12:12pm"
+#define GIT_COMMIT_HASH "70ade1c"
#define COPYRIGHT_END_YEAR "2024"
diff --git a/src/winres.rc b/src/winres.rc
index 96f47cf9f..8825d4f10 100644
--- a/src/winres.rc
+++ b/src/winres.rc
@@ -3,7 +3,7 @@
#include "../include/resource.h"
#include "../vs/config_package.h"
-#define VERSION_NUMBER 2024,07,01,0
+#define VERSION_NUMBER 2024,10,01,0
// icon resource
dosbox_ico ICON "../contrib/icons/dosbox-x.ico"
diff --git a/vs/config_package.h b/vs/config_package.h
index 5595ab6ac..fa8d8facb 100644
--- a/vs/config_package.h
+++ b/vs/config_package.h
@@ -1,8 +1,8 @@
#define PACKAGE "dosbox-x"
#define PACKAGE_BUGREPORT "https://github.com/joncampbell123/dosbox-x/issues"
#define PACKAGE_NAME "dosbox-x"
-#define PACKAGE_STRING "dosbox-x 2024.07.01"
+#define PACKAGE_STRING "dosbox-x 2024.10.01"
#define PACKAGE_TARNAME "dosbox-x"
#define PACKAGE_URL "https://dosbox-x.com"
-#define PACKAGE_VERSION "2024.07.01"
-#define VERSION "2024.07.01"
+#define PACKAGE_VERSION "2024.10.01"
+#define VERSION "2024.10.01"