DOSBox Staging 0.83.0-alpha

0.83.0-alphaPre-releaseDesktop

0.83.0-alpha release notes preview

Added 9
  • Add configurable mouse mickey threshold
  • Add mouse hack for 'Joan of Arc: Siege & the Sword' game on Hercules machine
  • Add dedithering option and generalise shader passes
  • Add FMV video deinterlacer
  • Add forced borderless fullscreen mode and general window config settings rework
  • Add Jinc 2 de-dithering shader
Changed 6
  • Allow 3.5x and 4.5x integer scaling for the adaptive CRT shaders
  • Allow graceful failure if OpenGL context could not be created
  • Always use SDL_PIXELFORMAT_ARGB8888 for the SDL texture renderer
  • Authentic CRT colour emulation, image adjustment settings, and wide gamut monitor support
  • Enable bilinear filtering for the 3dfx Voodoo by default
  • Improve DOS builtin mouse driver configurability
Fixed 5
  • CDROM Audio: Do not continue to the next track if less than 2 seconds remains
  • Do not hard exit when encountering unimplemented PIC functions
  • Fix INT10_SetVideoMode() regression
  • Fix aspect ratio of 40-column text modes on VGA with shaders that force no pixel doubling
  • Fix command line parser bug where an extension-less file prevents execution

[!WARNING] These are the automatically generated release notes of the latest development snapshot builds! This is not a stable release; things might blow up! 💣 🔥 💀

You can download the latest development builds from here: https://www.dosbox-staging.org/releases/development-builds/

Full PR list of game compatibility improvements
  • Add configurable mouse mickey threshold (#4681)
  • Add mouse hack for 'Joan of Arc: Siege & the Sword' game on Hercules machine (#4699)
  • CDROM Audio: Do not continue to the next track if less than 2 seconds remains (#4487)
  • Do not hard exit when encountering unimplemented PIC functions (#4225) [backport]
  • Fix INT10_SetVideoMode() regression (#4182) [backport]
  • Fix aspect ratio of 40-column text modes on VGA with shaders that force no pixel doubling (#4397)
  • Fix command line parser bug where an extension-less file prevents execution (#4185) [backport]
  • Fix edge case where CDROM mixer hangs at the end of a track (#4302)
  • Fix GUS hang in KQ4 enhanced (#4787)
  • Fix ManyMouse support in Windows builds (#4035) [backport]
  • Implement auto config option for file_locking (#4721)
  • Improve DOS builtin mouse driver configurability (#4284)
  • Sync with SVN r4485-r4494 (#4710)
  • VESA 2.0 mode list regression fix (#4245) [backport]
Full PR list of graphics-related changes
  • Add dedithering option & generalise shader passes (#4777)
  • Add FMV video deinterlacer (#4689)
  • Add forced borderless fullscreen mode & general window config settings rework (#4415)
  • Add Jinc 2 de-dithering shader (#4684)
  • Add shader preset support (#4590)
  • Add simple built-in image viewer (#4632)
  • Allow 3.5x and 4.5x integer scaling for the adaptive CRT shaders (#4418)
  • Allow graceful failure if OpenGL context could not be created (#4228)
  • Always use SDL_PIXELFORMAT_ARGB8888 for the SDL texture renderer (#4587)
  • Authentic CRT colour emulation, image adjustment settings, and wide gamut monitor support (#4618)
  • Clean up image capturer (#4701)
  • Clean up vertical bars fix FPU code (#4174)
  • Cross-platform Voodoo cleanup (#4254)
  • Enable bilinear filtering for the 3dfx Voodoo by default (#4250)
  • Fall back if sRGB fails (#4589)
  • Fix INT10_SetVideoMode() regression (#4182) [backport]
  • Fix aspect ratio of 40-column text modes on VGA with shaders that force no pixel doubling (#4397)
  • Fix auto integer scaling when falling back to the sharp shader (#4664)
  • Fix closest video mode calculation in showpic command (#4638)
  • Fix crash on Windows when starting in fullscreen mode (#4619)
  • Fix crash when setting output = texture (#4577)
  • Fix for setting the same shader twice in a row (#4610)
  • Fix host refresh rate always returned as 60 (#4595)
  • Fix OpenGL uniform errors/warnings when using a debug context (#4594)
  • Fix presentation mode regressions (#4605)
  • Fix segfault on exit for some Linux systems (#4829)
  • Fix setting dedithering from the config & some logging fixes and improvements (#4836)
  • Fix setting shader = crt-auto-machine causing a crash at startup (#4660)
  • Fix tripping debug assert when starting with --startmapper and exiting the mapper (#4554)
  • Fix two broken shaders (#4655)
  • Fix VGA double scan regression (#4864)
  • Fix VGA double scanning when setting a shader preset at startup (#4616)
  • Fix VGA draw address calculation (#4062) [backport]
  • Fix video output freezing 35 minutes, 47 seconds, 483 milliseconds, and 648 microseconds after startup (#4490)
  • Fix wrong 640x200 mode ID in SHOWPIC.EXE (#4640)
  • Further render and scaler cleanup & improvements (#4697)
  • Image adjustment fixes & improvements (#4819)
  • Implement in-memory shader caching in the OpenGL renderer (#4551)
  • Improve window_size and window_position help text (#4704)
  • Improve window not in foreground SDL workaround for macOS (#4700)
  • Minor fixes to renderer init. Allows KMSDRM to failover to texture mode. (#4585)
  • Put all custom shader pragmas in multi-line comment blocks (#4745)
  • Remove fullscreen_mode=original config option (#4596)
  • Remove max frame time check in frame presentation (#4499)
  • Rendering and CGA composite cleanup (#4608)
  • Reset OpenGL attributes before creating the mapper's renderer (#4628)
  • SDL main cleanup, part 2 — OpenGL modernisation (some of it) (#4390)
  • SDL main cleanup, part 3 — Refactor window & render backend management + misc fixes & improvements (#4449)
  • Simplify ShaderManager API & fix various shader loading regressions and problems (#4735)
  • Total frame presentation overhaul 😎 (#4438)
  • Use OpenGL 3.3 Core Profile in the OpenGL render backend (#4591)
  • Use std::atomic's wait over busy wait in Voodoo (#4220) [backport]
  • VESA 2.0 mode list regression fix (#4245) [backport]
  • VGA drawing and renderer cleanup (#4677)
Full PR list of sound-related changes
  • soundcanvas_model setting description fix. (#4298)
  • Add soundcanvas_rom_dir config setting and environment variable helpers (#4572)
  • Add bounds checking to SoundBlaster's read_dma_16bit() and read_dma_8bit() (#4188)
  • Add custom vcpkg overlay port for FluidSynth (#4267) [backport]
  • Add denoiser to filter out residual OPL and Sound Canvas mk1 noise (#4230)
  • Add seek-only mode for disk noise emulation, fix hdd noises missing i… (#4486)
  • Add support for Microprose's 'The Entertainer' variant of the Innovation SSI-2001 (#4857)
  • Added disk noise emulation and configurable IO throttling (#4325)
  • Allow changing the current FluidSynth soundfont config and the MT-32 model on-the-fly (#3982)
  • Always set SB per-frame callback for DAC (#4563)
  • Auto-apply optimal FluidSynth chorus & reverb settings for common SoundFonts (#4817)
  • CDROM Audio: Do not continue to the next track if less than 2 seconds remains (#4487)
  • Defer SDL audio subsystem init until mixer init (#4665)
  • Delete the GUS tick handler in the destructor (#4183) [backport]
  • Don't let the mixer request frames for SoundBlaster in fast-forward mode (#4202)
  • Don't save MP3 seek table to fastseek.lut file (#4311)
  • Dynamically load fluidsynth library at runtime (#4222)
  • Fix clang tautological compare warning and related undefined behaviour in stb_vorbis (#4571)
  • Fix crash if opening the soundfont_dir directory failed (#4106)
  • Fix deadlock on exit while LPT DAC is running (#4063)
  • Fix edge case where CDROM mixer hangs at the end of a track (#4302)
  • Fix GUS hang in KQ4 enhanced (#4787)
  • Fix GUS Mix Control Register not getting reset to the correct value (#4271)
  • Fix GUS resampling regression & emulate the GUS' output more authentically (#4219) [backport]
  • Fix HDD disk noises being played for floppies v2 (#4661)
  • Fix incorrect check cast in IMFC (#4226)
  • Fix init order & no sound regression (#4663)
  • Fix recovery from fast-forward when the Sound Canvas can't keep up (#4210)
  • Fix SoundBlaster DMA regression (#4084)
  • Fix SoundBlaster Notify Unlock (#4169)
  • Fixed reversed audio channels for SoundBlaster Pro (#4412)
  • FluidSynth configuration improvements (#4047)
  • Generic Sound Canvas emulation support (#4090)
  • Improve default crossfeed setting behaviour (#4223) [backport]
  • Improve GUS config setting descriptions (#4252)
  • Improvements to the resource loader (#4437)
  • Increase the number of audio frames generated by SoundBlaster when the mixer is underflowing (#4175)
  • Inject Nuked-SC55-CLAP plugin into the release packages (#4425)
  • Lock the mixer thread inside disknoise_destroy() (#4373)
  • Lower default master volume (#4105) [backport]
  • Make mixer master gain volume atomic (#4403)
  • Mute audio when the mapper is active (#4195) [backport]
  • Only register disk noise callback if required (#4376)
  • Paginate MIXER /LISTMIDI output & fix showing the active SoundFount (#4811)
  • Re-enable portamento handling for FluidSynth (#4780)
  • Reinstate FluidSynth as an internal dependency (#4550)
  • Remove std::atomic from performance critical global variables (#4181) [backport]
  • Restore deprecated mixer channel name aliases (#4400)
  • Revert "Keep GUS running (and rendering) on IO port reads" (#4216) [backport]
  • Simplify mididevice and midiconfig settings (#4040)
  • Sort SoundFonts in MIXER /LISTMIDI output & fix current SF2 matching (#3981)
  • Standardize the Sound Blaster against other audio devices (#3875)
  • Tone down FluidSynth logging (#4569)
  • Upgrade external vcpkg dependencies to v0.83.0-1 (#4348)
  • Upgrade Nuked-SC55-CLAP to v0.8.0 (#4442)
  • Upgrade the Nuked-SC55-CLAP plugin to v0.11.0 (#4748)
Full PR list of input-related changes
  • Add configurable mouse mickey threshold (#4681)
  • Add keyboard grabbing support (#4338)
  • Add ManyMouse support to CMake scripts (#4344)
  • Add mouse hack for 'Joan of Arc: Siege & the Sword' game on Hercules machine (#4699)
  • Adjust VMware interface behavior to match VMware Workstation Player (#4564)
  • Builtin DOS mouse driver improvements (#4578)
  • Document Microsoft Digital Media Pro Keyboard scancodes (#4187)
  • DOS mouse driver minor fixes/cleanups (#4356)
  • Enable hotplugging joysticks (#4122)
  • Enable hotplugging joysticks (2nd attempt) (#4146)
  • Enforce no-TSR mouse mode on Tandy/PCJr machines (#4698)
  • Ensure physical host buttons only perform one bound event (#4079)
  • Ensure the line feed follows carriage return when reading from the DOS console (#4009)
  • Fix debugger keypresses not being registered on Windows (#4098)
  • Fix false positive key check in Windows console read multitasking subroutine (#4717)
  • Fix ManyMouse support in Windows builds (#4035) [backport]
  • Fix mouse TSR writing to ROM (#4719)
  • Fix new PVS Studio warning in mouseif_dos_driver.cpp (#4539)
  • Immediately save user mapper changes to disk (#4124)
  • Improve DOS builtin mouse driver configurability (#4284)
  • Improve some mouse setting descriptions (#4206) [backport]
  • Increase bind name display length in the mapper to avoid truncation (#4131)
  • Initial clipboard sharing support (#4036)
  • Keyboard layout / code page autodetection tweaks + macOS support (#4069)
  • Keyboard layout autodetection fixes/improvements (#4082)
  • Mouse code cleanup and serial mouse regression fix (#4706)
  • Remove wrong assertion in the keyboard autodetection code (#4293)
  • Revert "Ensure physical host buttons only perform one bound event" (#4129)
  • Revert CRLF keyboard change (#4067)
  • Revert Hotplug Support #4122,#4138,#4143 (#4145)
  • Rework builtin DOS mouse driver for better guest Windows compatibility (#4381)
  • Rework the VMware mouse emulation, support the official Windows 9x driver (#4555)
  • Silence unknown function warnings for more OEM mouse driver extensions (#4722)
  • Suppress redundant mapper initialization at startup (#4138)
  • Synchronize the reported DOS mouse driver language with the translation (#4669)
  • Unpause the emulator with a remapped pause key (#4851)
  • Use 'reg_dx' for the mouse double speed threshold, as stated in the Microsoft specification (#4838)
  • Use floating point inputs in the mouse emulation code (SDL 3 preparation) (#4065)
  • Warn about MOUSE.COM options which are not going to be implemented (#4544)
Full PR list of DOS integration related changes
  • Abort mounting drives if parameters are invalid (#4806)
  • Add a file_locking config option (#4024) [backport]
  • Automount CD images from drives/[x] folders (#4379)
  • Automount floppy images from drives/a and drives/b folders (#4788)
  • Cleanup AUTOEXEC.BAT regeneration (#4362)
  • Correct EMS Set Handle Name to read from correct registers (#4496)
  • Don't set host permissions for read-only directories on POSIX (#4283) [backport]
  • Filesystem fixes (#4645)
  • Fix AUTOEXEC.BAT being deleted on disk swap (#4360)
  • Fix choice /t repeatedly pressing default key (#4716)
  • Fix command line parser bug where an extension-less file prevents execution (#4185) [backport]
  • Fix emulator becoming unresponsive if the user exits the app while inside the reboot handler (#4274) [backport]
  • Fix file timestamp conversion on Windows (#4339)
  • Fix images sometimes not found on DOS filesystem (#4797)
  • Fix reporting EMS size if large 'memsize' is configured (#4752)
  • Implement auto config option for file_locking (#4721)
  • Implement MDS/MDF CDROM images (#4538)
  • Implement new MAKEIMG command (#4678)
  • Improve MODE command compatibility (#4668)
  • Improve mount message for multiple images (#4759)
  • Introduce notifications subsystem (#4351)
  • Minor DOS command improvements (#4423)
  • New CPI (DOS screen font) loader (#4154)
  • On Windows, clear the read-only attribute before removing a directory. (#4297) [backport]
  • Remove early-exit protection (#4450)
  • Remove std_fs::path and explicitly convert to UTF-16 on Windows (#4764)
  • Rename files on Windows before delete (#4152) [backport]
  • Replace XCOPY.EXE with the one from DOSBox-X 2025.05.03 (#4476)
  • Retain CD-ROM behaviour for directories mounted with -t cdrom (#4833)
  • Rewrite & improve MEM.EXE command (#4749)
  • Unify IMGMOUNT and MOUNT into a single command (#4683)
  • Update bundled FreeDOS xcopy.exe to version 1.9a (#4285) [backport]
  • Use MOUNT command when auto-mounting CD images (#4779)
Full PR list of localisation-related changes
  • Add locale definitions for additional 25 countries (#4715)
  • Allow language change at runtime (#4322)
  • C++ library locale autodetection fixes (#4309)
  • Change 'ux' keyboard layout autodetection priority to low (#4326)
  • Clean up and fix translation scripts and documentation (#4480)
  • Complete support for code page 59829 (#3998)
  • Consider keyboard layout list random on GNOME (#4116)
  • Do not promote code pages to modern replacements (#4528)
  • Enforce using Unix EOL marks in the translation subsystem (#4654)
  • Fix a few issues with the Dutch (NL) translation (#4653)
  • Fix country detection on Windows (#4087)
  • Fix failing assertion when keyboard layout autodetection fails, prefer ROM font for autodetected code pages (#4103)
  • Fix for country '0' (International English) support (#4085)
  • Fix for default config file created without using translations (#4630)
  • Fix for translated '-list-countries' and similar messages (#4386)
  • Fix missing translation error log (#4533)
  • Fix translation for keyb cmd (#4266)
  • Import FreeDOS ISO/KOI/MAC/WIN code page packages (#4121)
  • Improve language (translation) autodetection (#4132)
  • Keyboard layout autodetection priorities (#4107)
  • Kill the transliteration/romanization rules with fire 🔥🔥🔥 (#4117)
  • Locale detection improvements (#4597)
  • Migrate to the gettext .po localisation format (#4511)
  • Minor locale updates (#4607)
  • Review auto-detection priorities for Italian keyboard layouts (#4130)
  • Rework locale settings and autodetection (#3951)
  • Rework translated messages handling (#4074)
  • Simplify 'for' help message handling (#4349)
  • Support both ISO 639 (language) and ISO 3166-1 alpha-2 (territory) in the translation file names (#4541)
  • Translation fixes (#4840)
  • Translation handling improvements (#4656)
  • Unicode engine improvements (#4119)
  • Update de.lng (#4502)
  • Update Dutch (NL) translation (#4827)
  • Update Dutch (NL) translation (#4798)
  • Update Dutch (NL) translation (#4732)
  • Update Dutch (NL) translation (#4646)
  • Update Dutch (nl) translation (#4265)
  • Update italian (it) translation (#4853)
  • Update Italian (it) translation (#4821)
  • Update italian (it) translation (#4488)
  • Update italian (it) translation (#4312)
  • Update italian (it) translation (#4235)
  • Update italian (it) translation (#4125)
  • Update Italian (it_IT) translation (#4808)
  • Update Italian (it_IT) translation (#4625)
  • Update Polish (pl) translation (#4237)
  • Update Polish (pl) translation, English string improvements (#4136)
  • Update Polish (pl) translation, minor English string fix (#4086) [backport]
  • Updated French translation (#4830)
  • Use English strings for important messages if their translation is not up to date (#4707)
  • Use LANG variable as a fallback for LC_* on POSIX systems (#4072)
  • Use untranslated keyboard layout name for logging (#4313)
  • Windows activeCodePage and resource file build improvements (#4526)
Full PR list of documentation-related changes
  • Add ANSI Markup Editor to the translation doco (#4736)
  • At last — user manual! 📚 📜 🤓 (#4822)
  • Build-related documentation updates (#4367)
  • Cleanup Linux build documentation, CMake is now the default build method (#4454)
  • Config setting description fixes (#4820)
  • Config setting help text improvements & fixes (#4761)
  • Convert PVS-Studio workflow to CMake & big build system cleanup (#4299)
  • docs: Add Visual Studio troubleshooting tips (#4718)
  • Fix 'expand_shell_variable' description (#4624)
  • Fix 'lpf' acronym in help text messages (#4615)
  • Fix and improve copyright year updater script & update copyright year (#4765)
  • Fix broken anchor: documenetation -> documentation in DOCUMENTATION.md (#4859)
  • Fix outdated links in the pull request template (#4676)
  • Implement documentation versioning (#4854)
  • Improve setting help formatting (#4606)
  • Improve unit testing instructions (#4659)
  • Minor bundled libraries and legal notes cleanup (#4673)
  • Spring cleaning, part 2 🌷 🧹 🗑️ 🔥 (#4332)
  • The GUIDE and MANUAL commands open a versioned URL now (#4849)
  • Update CONTRIBUTING.md (#4459)
  • Update contribution guidelines (#4327)
  • Update Linux build instructions (#4652)
  • Update macOS build instructions (#4378)
  • Update mapper.cpp - correct comment about ABNT1 (#4482)
  • Update Windows build instructions (#4422)
Full PR list of project maintenance related changes
  • _with_debugger amended to executable name when OPT_DEBUGGER ON. (#4803)
  • Adapt the Linux app_id to the Flatpak requirements (#4288) [backport]
  • Add and fix additional warnings to the CMake build (#4492)
  • Add ccache support to CMake build (#4744)
  • Add CMake tests (#4407)
  • Add cmake_test_discovery* files to gitignore (#4621)
  • Add compile commits script for CMake (#4335)
  • Add FROM_HASH option to the compile commits script (#4408)
  • Add initial Linux CMake CI workflow (#4291)
  • Add macOS CMake + vcpkg release build workflow (#4170)
  • Add more metadata to the macOS executable for better observabilty (#4687)
  • Add release management script & make release notes draft public (#4773)
  • Add release notes differ script (#4845)
  • Add sanitizer options to CMake build system, for Linux and macOS (#4401)
  • Add several missing checks to the CMake build system + other fixes (#4396)
  • Add Windows presets for CMake (#4184)
  • Address PVS warnings (#4783)
  • Allow graceful shutdown on SIGTERM (#4841)
  • Build system improvements, including Linux CMake install rules (#4435)
  • build: Add meson build files for REST API. (#4771)
  • Bump vcpkg baseline (#4747)
  • Bump vcpkg baseline (#4270)
  • Bump vcpkg baseline & update FluidSynth to 2.4.5 (#4295)
  • Clean up config handling code (#4570)
  • Cleanup some code related to machine types (#4414)
  • Cleanup the resources directory (#4479)
  • Define HAVE_STRUCT_DIRENT_D_TYPE in CMake (#4741)
  • Disable narrowing & conversion warnings in the CMake build and reinstate macOS CI build warning checks (#4290)
  • Dynamically load Slirp library at runtime (#4330)
  • Enable additional warnings for Clang and GCC 13+ (#4647)
  • Enable more GCC/clang compiler warnings (#4561)
  • Exclude debugger-related files from non-debugger builds (#4712)
  • Fix building the Windows installer by dropping Icelandic localisation (#4536)
  • Fix building with Meson (#4353)
  • Fix crash when using deprecated settings in the config (#4430)
  • Fix Git hash injection in CI and local builds (#4316)
  • Fix issues found using sanitizer (#4720)
  • Fix Meson build (#4477)
  • Fix Meson build, broken after directserial removal (#4649)
  • Fix missing warnings in CMake (#4641)
  • Fix missing XML tag in Visual Studio solution file (#4092)
  • Fix non UTF-8 characters in ManyMouse library (#4648)
  • Fix platform specific parameters for ppc64le (#3996)
  • Fix PVS-Studio warnings (#4686)
  • Fix release notes preview & Windows installer package (#4801)
  • Fix running unit tests locally on macOS (#4424)
  • Fix several compiler warnings (#4392)
  • Fix several SonarCube warnings (#4420)
  • Fix some warnings in Windows CDROM code as shown by MSYS2 (#4115)
  • Fix vcpkg compilation on Linux for newer compilers (#4828)
  • Fix win32 link errors/omissions involving MIDI and locale (#4088)
  • Fix writing entire autoexec description to config file. Refactor Config::WriteConfig() (#4804)
  • Fixes for ~130 SonarCloud reported issues (#4674)
  • Fixes for ~220 SonarCloud reported issues (#4671)
  • Fixes for ~30 SonarCloud reported issues, ~15 rules cleaned up (#4726)
  • Improve GCC 15.x support (#4518)
  • Improve handling config setting updates & module re-initialisations (#4516)
  • Improve IMGMOUNT backward compatibility mechanism (#4832)
  • Improve our GitHub issue templates (#4166)
  • Improve platform builds workflow (#4000)
  • Improve PVS-Studio workflow (#4194)
  • Improve the handling of invalid integer config settings (#4666)
  • Improve the internal Unicode engine (#4521)
  • Initial Linux support in CMake files (#4186)
  • Major project organisation improvements (#4451)
  • Make CFileInfo's destructor non-virtual (#4739)
  • Make unit test execution more robust on macOS & CI (#4746)
  • Migrate SDL_net to standalone asio (#4679)
  • Minor Windows CMake QoL improvements (#4323)
  • Move plugins dir to the root in the Linux & Windows packages (#4432)
  • Normalise build workflow names & deprecate non-CMake Windows and macOS builds (#4278)
  • Only delete the build dir for the selected CMake preset in compile-commits.sh (#4355)
  • Only show warnings and errors in the build output on macOS (#4399)
  • Optimize FPU code to set flags (#4651)
  • Organise files (part 2) (#4513)
  • Partial macOS and Windows compilation output cleanup (#4398)
  • Print VCPKG error log on workflow failure (#4006)
  • Prune all code for unsupported platforms (#4796)
  • PVS Studio warning fixes (#4363)
  • Recommend and list cmake presets (#4863)
  • Remove ModuleBase (#4556)
  • Remove Coverity static analysis (#4171) [backport]
  • Remove FluidSynth vcpkg port (#4347)
  • Remove function pointer for DOSBOX_Restart (#4558)
  • Remove GHC filesystem library (#4754)
  • Remove KDevelop files (#4404)
  • Remove MSVC project files and make the CMake the only build method on Windows (#4342)
  • Remove references to LGTM and update a few CI related links (#4172)
  • Remove reinterpret_cast for accessing SDL Events (#4143)
  • Remove s390x and ppc64le platform builds & simplify workflow (#4192)
  • Remove Tracy (#4634)
  • Remove Wine support from DOS to host filesystem code (#4753)
  • Replace #if WIN32 with #ifdef WIN32 (#4191)
  • Replace non-ASCII copyright symbol in winres.rc (#4345)
  • Revert object pool stuff (#4111)
  • SDL main cleanup, part 1 (#4384)
  • SDL main cleanup, part 4 — Separate OpenGL and SDL rendering backends & a cornucopia of other improvements (#4542)
  • Set CMAKE_EXPORT_COMPILE_COMMANDS by default (#4209)
  • Show stack trace symbols in Loguru dump (#4467)
  • Simplify build options & remove serial passthrough (#4644)
  • Spring cleaning, part 1 🌷 🧹 🗑️ 🔥 (#4328)
  • Spring cleaning, part 3 🌷 🧹 🗑️ 🔥 (#4464)
  • Sync with SVN r4485-r4494 (#4710)
  • Sync/update Visual Studio filters (#4095)
  • Update and always use the vcpkg baseline in CI (#4012)
  • Update macOS notarize script (#4858)
  • Use CMake to control macOS minimum version (#4692)
  • Use short SPDX copyright headers (#4389)
  • Warn about implicit fall-throughs in switch/case blocks (#4685)
  • Webserver security hardening (#4772)
  • Website release notes draft generation (#4818)
Full PR list of miscellaneous enhancements
  • Add macOS .dosbox package support for double-click launching (#4566)
  • Add REST HTTP API to expose the DOS memory for game modding & tools (#4730)
  • Allow switching between legacy and modern cycles settings (#4781)
  • API: Add more control over allocation strategy (#4776)
  • Change display names of bool conf settings to 'on' and 'off' (#4248)
  • Config setting help shortcut (#4247)
  • Fixes for "toggle" config setting values (#4727)
  • HTTP API improvements (#4847)
  • Improve FPU emulation on non-x86 platforms (#4534)
  • Improve the formatting of the written config file (#4048) [backport]
  • Let unchangeable settings be queued and used on restart (#4055) [backport]
  • Mapper layout fixes (#4600)
  • Platforms builds workflow - add RISC-V, update to Debian 12 (#4025)
  • Use emulated HLT to lower the host CPU usage in some cases (#4535)
  • User manual related fixes (#4843)
Full PR list of miscellaneous fixes
  • Always raise the window after startup on macOS (SDL workaround) (#4657)
  • Destroy the renderer in GFX_Quit() (#4580)
  • Display the correct real or protected mode cycles value in the title bar (#4221) [backport]
  • Do not hard exit when encountering unimplemented PIC functions (#4225) [backport]
  • Eliminate the internal InstantLaunch verbosity level (#4054) [backport]
  • Fix all the unsafe 'sscanf' usage detected by CodeQL (#4670)
  • Fix configuration setting case sensitivity regression (#4057) [backport]
  • Fix double free in TCPClientSocket destructor (#4114)
  • Fix handling of LOCK combined with other prefixes (#4775)
  • Fix icache flush incorrectly tied to W^X policy (#4792)
  • Fix Output label in debugger (#4723)
  • Fix setting queued settings on reboot sometimes failing on Windows (#4782)
  • Fix support for space in the directory name argument (#4150) [backport]
  • Fixed debugger command IV truncating addresses to 16-bit (issue #4515) (#4800)
  • Handle uppercase "-V" argument for version (#4690)
  • Make CALLBACK_Idle() loops more robust (#4629)
  • Make restart_dosbox() go through the normal shutdown routine (#4368) [backport]
  • Small improvements to the web server (#4871)
  • Unhardcode the layout of debugger windows (#4691)
  • Unit tests compilation fix (#4329)
  • Use new GH ARM64 runners and remove debian-cross docker from CI (#4158)
Full PR list of other changes
  • Add HTML release notes to build artifacts (#4774)
  • Bump external DOSBox Staging deps version (#4760)
  • Bump macOS runner to macOS-13 (#4038) [backport]
  • Check HAVE_CLOCK_GETTIME in CMake (#4393)
  • ci: Fix getting the current version with get-version.sh (#4475)
  • ci: Fix PVS failure due to output report change (#4762)
  • Drop the Debian package & platform build CI actions (#4639)
  • Fix release package name generation on macOS (#4510)
  • Fix reporting of failed CI builds on Linux and macOS (#4354)
  • Fix typos Nix0S to NixOS (#4017)
  • Fix Windows + Ninja compilation error (#4470)
  • Library upgrades (#4609)
  • Lower PVS Studio (and compilation) warning limits (#4068)
  • Make Windows CI build errors visible (#4382)
  • meson: Fix a bad relative resource path on macOS (#4675)
  • Reintroduce vcpkg binary caching (#4421)
  • Remove set -e from install-icons.sh (#4405)
  • Replace infinity with max float in prop parser (#4234)
  • Restore Debian 11 dependency file (#4308)
  • Restrict usage of warning flags only with compatible compilers (#4709)
  • Revert "Normalise build workflow names & deprecate non-CMake Windows and macOS builds" (#4286)
  • Set 'actions/cache' to 'v4' (#4153) [backport]
  • Update debian cross docker images and CI to debian 12 (#3950)
  • Update PVS-Studio workflow for the latest version (#4834)
  • Update README.md (#4410)
  • Upgrade download-artifact action manually (#4633)
  • Use CMake to build the Windows release on CI (#4331)
  • Use personal access token for the release drafter (#4319)
Commit authors
View original

Upgraded? How did it go?

Discussion