Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Notice: Windows XP is officially unsupported, may bitrot unless others wish to submit patches to maintain unofficial support #403
Until further notice, released binaries will no longer support Windows XP because there's nothing for DOSBox-X to mount or attach to.
Microsoft broke stat() and that is why nothing mounts in Windows XP.
Why bother emulating if there's no way to mount C: to emulate from?
Notice this was opened in 2015. It's almost 2018. That's a pretty important function to break in the C runtime!
Anyone with VS2013 or earlier is welcome to take this code and compile for Windows XP as those versions are reported to have a working _stat implementation.
referenced this issue
Dec 23, 2017
The POSIX compatibility on Windows is so minimal and broken it's only useful for bare minimum portability and should be avoided if feasible, period. I think it was added only because the US government required POSIX support and they wanted to win that contract back in the NT days.
Also honestly I'd remove Windows XP support permanently, it's long unsupported and such a massive security headache that nobody should be using it unless really needed (and in the latter case you probably shouldn't be running DOSBox-X on that machine anyway). At least that's my opinion.
I've decided personally that supporting XP isn't worth it, however I do intend to accept patches that allow the code to run on XP, from others who care if they're willing to invest their time and energy to make it work.
It does mean that binaries I release won't run under XP, but others are free to support and build for XP if they want.
As previously stated, supporting Windows XP with VS2017 is infeasible because Microsoft somehow managed to break _stat and _wstat functions in the C runtime on Windows XP (a very crucial function to DOSBox-X's file management).
My official policy is that the releases I provide here will no longer support Windows XP, and that I will personally not test code changes on XP.
Unofficially, a VS2013 project file is provided in the source tree for those who want to make Windows XP builds (provided by another GitHub user here).
Anyone who wants to continue running DOSBox-X on Windows XP is free to submit patches to keep it working. Otherwise, support for Windows XP will bitrot from the code and disappear.
referenced this issue
Jan 4, 2018
There is a way to build with the right toolset under 2017:
Now instead of screwing the 2017 solution by changing the platform toolset, use Developer Command Prompt for VS 2017 to target XP but using 2013 toolset:
A little test program:
Show that indeed it works,
(1st test is to assert of the failure with 2017 toolset, 2nd test is with above msbuild command)
I didn't try with DOSBox itself but I see no reason why it wouldn't work :)
Now remains the question of whether the current code base will compile flawlessly with