diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index cf4fd0e6a1..aef68fedc5 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -42,11 +42,11 @@ jobs:
with:
release: true
- - name: ReleaseWin2000 build
- id: build-releasewin2000
+ - name: ReleaseXP build
+ id: build-releasexp
uses: ./
with:
- releasewin2000: true
+ releasexp: true
- name: Debug build
id: build-debug
@@ -54,40 +54,40 @@ jobs:
with:
debug: true
- - name: DebugLog build
- id: build-debuglog
+ - name: DebugLogXP build
+ id: build-debuglogxp
uses: ./
with:
- debuglog: true
+ debuglogxp: true
- - name: DebugLogMini build
- id: build-debuglogmini
+ - name: DebugLogMiniXP build
+ id: build-debuglogminixp
uses: ./
with:
- debuglogmini: true
+ debuglogminixp: true
- name: Prepare artifact
run: |
:
mkdir -p cnc-ddraw-release
- mkdir -p cnc-ddraw-releasewin2000
+ mkdir -p cnc-ddraw-releasexp
mkdir -p cnc-ddraw-debug
- mkdir -p cnc-ddraw-debuglog
- mkdir -p cnc-ddraw-debuglogmini
+ mkdir -p cnc-ddraw-debuglogxp
+ mkdir -p cnc-ddraw-debuglogminixp
cp "${{ steps.build-release.outputs.release }}" cnc-ddraw-release
- cp "${{ steps.build-releasewin2000.outputs.releasewin2000 }}" cnc-ddraw-releasewin2000
+ cp "${{ steps.build-releasexp.outputs.releasexp }}" cnc-ddraw-releasexp
cp "${{ steps.build-debug.outputs.debug }}" cnc-ddraw-debug
cp "${{ steps.build-debug.outputs.debug-pdb }}" cnc-ddraw-debug
- cp "${{ steps.build-debuglog.outputs.debuglog }}" cnc-ddraw-debuglog
- cp "${{ steps.build-debuglog.outputs.debuglog-pdb }}" cnc-ddraw-debuglog
+ cp "${{ steps.build-debuglogxp.outputs.debuglogxp }}" cnc-ddraw-debuglogxp
+ cp "${{ steps.build-debuglogxp.outputs.debuglogxp-pdb }}" cnc-ddraw-debuglogxp
- cp "${{ steps.build-debuglogmini.outputs.debuglogmini }}" cnc-ddraw-debuglogmini
- cp "${{ steps.build-debuglogmini.outputs.debuglogmini-pdb }}" cnc-ddraw-debuglogmini
+ cp "${{ steps.build-debuglogminixp.outputs.debuglogminixp }}" cnc-ddraw-debuglogminixp
+ cp "${{ steps.build-debuglogminixp.outputs.debuglogminixp-pdb }}" cnc-ddraw-debuglogminixp
shell: bash
@@ -98,11 +98,11 @@ jobs:
path: cnc-ddraw-release
retention-days: 14
- - name: Upload artifacts cnc-ddraw-releasewin2000
+ - name: Upload artifacts cnc-ddraw-releasexp
uses: actions/upload-artifact@v4
with:
- name: cnc-ddraw-releasewin2000
- path: cnc-ddraw-releasewin2000
+ name: cnc-ddraw-releasexp
+ path: cnc-ddraw-releasexp
retention-days: 14
- name: Upload artifacts cnc-ddraw-debug
@@ -112,16 +112,16 @@ jobs:
path: cnc-ddraw-debug
retention-days: 14
- - name: Upload artifacts cnc-ddraw-debuglog
+ - name: Upload artifacts cnc-ddraw-debuglogxp
uses: actions/upload-artifact@v4
with:
- name: cnc-ddraw-debuglog
- path: cnc-ddraw-debuglog
+ name: cnc-ddraw-debuglogxp
+ path: cnc-ddraw-debuglogxp
retention-days: 14
- - name: Upload artifacts cnc-ddraw-debuglogmini
+ - name: Upload artifacts cnc-ddraw-debuglogminixp
uses: actions/upload-artifact@v4
with:
- name: cnc-ddraw-debuglogmini
- path: cnc-ddraw-debuglogmini
+ name: cnc-ddraw-debuglogminixp
+ path: cnc-ddraw-debuglogminixp
retention-days: 14
diff --git a/action.yml b/action.yml
index 0b1e1cc3c4..8917b6db77 100644
--- a/action.yml
+++ b/action.yml
@@ -24,20 +24,20 @@ inputs:
description: 'Set to true to enable building with Release configuration'
required: true
- releasewin2000:
- description: 'Set to true to enable building with ReleaseWin2000 configuration'
+ releasexp:
+ description: 'Set to true to enable building with ReleaseXP configuration'
required: true
debug:
description: 'Set to true to enable building with Debug configuration'
required: true
- debuglog:
- description: 'Set to true to enable building with DebugLog configuration'
+ debuglogxp:
+ description: 'Set to true to enable building with DebugLogXP configuration'
required: true
- debuglogmini:
- description: 'Set to true to enable building with DebugLogMini configuration'
+ debuglogminixp:
+ description: 'Set to true to enable building with DebugLogMiniXP configuration'
required: true
# Outputs are always using Windows directory separator (`\`)
@@ -47,9 +47,9 @@ outputs:
description: 'Full path to ddraw.dll built with Release configuration'
value: ${{ steps.build-release.outputs.ddraw-dll }}
- releasewin2000:
- description: 'Full path to ddraw.dll built with ReleaseWin2000 configuration'
- value: ${{ steps.build-releasewin2000.outputs.ddraw-dll }}
+ releasexp:
+ description: 'Full path to ddraw.dll built with ReleaseXP configuration'
+ value: ${{ steps.build-releasexp.outputs.ddraw-dll }}
debug:
description: 'Full path to ddraw.dll built with Debug configuration'
@@ -58,19 +58,19 @@ outputs:
description: 'Full path to ddraw.pdb built with Debug configuration'
value: ${{ steps.build-debug.outputs.ddraw-pdb }}
- debuglog:
- description: 'Full path to ddraw.dll built with DebugLog configuration'
- value: ${{ steps.build-debuglog.outputs.ddraw-dll }}
- debuglog-pdb:
- description: 'Full path to ddraw.pdb built with DebugLog configuration'
- value: ${{ steps.build-debuglog.outputs.ddraw-pdb }}
+ debuglogxp:
+ description: 'Full path to ddraw.dll built with DebugLogXP configuration'
+ value: ${{ steps.build-debuglogxp.outputs.ddraw-dll }}
+ debuglogxp-pdb:
+ description: 'Full path to ddraw.pdb built with DebugLogXP configuration'
+ value: ${{ steps.build-debuglogxp.outputs.ddraw-pdb }}
- debuglogmini:
- description: 'Full path to ddraw.dll built with DebugLogMini configuration'
- value: ${{ steps.build-debuglogmini.outputs.ddraw-dll }}
- debuglogmini-pdb:
- description: 'Full path to ddraw.pdb built with DebugLogMini configuration'
- value: ${{ steps.build-debuglogmini.outputs.ddraw-pdb }}
+ debuglogminixp:
+ description: 'Full path to ddraw.dll built with DebugLogMiniXP configuration'
+ value: ${{ steps.build-debuglogminixp.outputs.ddraw-dll }}
+ debuglogminixp-pdb:
+ description: 'Full path to ddraw.pdb built with DebugLogMiniXP configuration'
+ value: ${{ steps.build-debuglogminixp.outputs.ddraw-pdb }}
runs:
using: 'composite'
@@ -82,8 +82,8 @@ runs:
if [[ "${{ runner.os }}" != "Windows" ]]; then
echo "[ERROR] This action can only be used on Windows"
exit 1
- elif [[ "${{ inputs.release }}" != "true" ]] && [[ "${{ inputs.releasewin2000 }}" != "true" ]] && [[ "${{ inputs.debug }}" != "true" ]] && [[ "${{ inputs.debuglog }}" != "true" ]] && [[ "${{ inputs.debuglogmini }}" != "true" ]]; then
- echo "[ERROR] At least one of following inputs must be set to 'true' -- 'release', 'releasewin2000', 'debug', 'debuglog', 'debuglogmini'"
+ elif [[ "${{ inputs.release }}" != "true" ]] && [[ "${{ inputs.releasexp }}" != "true" ]] && [[ "${{ inputs.debug }}" != "true" ]] && [[ "${{ inputs.debuglogxp }}" != "true" ]] && [[ "${{ inputs.debuglogminixp }}" != "true" ]]; then
+ echo "[ERROR] At least one of following inputs must be set to 'true' -- 'release', 'releasexp', 'debug', 'debuglogxp', 'debuglogminixp'"
exit 1
#
elif [[ ! -f "$(cygpath --unix "$GITHUB_ACTION_PATH/cnc-ddraw.sln")" ]]; then
@@ -115,7 +115,7 @@ runs:
#
# echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
- "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=Release -p:Platform=x86 -p:PlatformToolset=v141_xp
+ "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=Release -p:Platform=x86 -p:PlatformToolset=v143
#
echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/Release/ddraw.dll")" >> $GITHUB_OUTPUT
@@ -124,17 +124,17 @@ runs:
shell: bash
# Creating empty `PostBuild.cmd` to avoid false-positive build error
- - name: Build ReleaseWin2000
- id: build-releasewin2000
+ - name: Build ReleaseXP
+ id: build-releasexp
run: |
- if [[ "${{ inputs.releasewin2000 }}" == "true" ]]; then
- echo ::group::Build ReleaseWin2000
+ if [[ "${{ inputs.releasexp }}" == "true" ]]; then
+ echo ::group::Build ReleaseXP
#
# echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
- "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=ReleaseWin2000 -p:Platform=x86 -p:PlatformToolset=v141_xp
+ "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=ReleaseXP -p:Platform=x86 -p:PlatformToolset=v141_xp
#
- echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/ReleaseWin2000/ddraw.dll")" >> $GITHUB_OUTPUT
+ echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/ReleaseXP/ddraw.dll")" >> $GITHUB_OUTPUT
echo "::endgroup::"
fi
@@ -150,7 +150,7 @@ runs:
#
# echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
- "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=Debug -p:Platform=x86 -p:PlatformToolset=v141_xp
+ "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=Debug -p:Platform=x86 -p:PlatformToolset=v143
#
echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/Debug/ddraw.dll")" >> $GITHUB_OUTPUT
echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/Debug/ddraw.pdb")" >> $GITHUB_OUTPUT
@@ -160,38 +160,38 @@ runs:
shell: bash
# Creating empty `PostBuild.cmd` to avoid false-positive build error
- - name: Build DebugLog
- id: build-debuglog
+ - name: Build DebugLogXP
+ id: build-debuglogxp
run: |
:
- if [[ "${{ inputs.debuglog }}" == "true" ]]; then
- echo "::group::Build DebugLog"
+ if [[ "${{ inputs.debuglogxp }}" == "true" ]]; then
+ echo "::group::Build DebugLogXP"
#
# echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
- "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=DebugLog -p:Platform=x86 -p:PlatformToolset=v141_xp
+ "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=DebugLogXP -p:Platform=x86 -p:PlatformToolset=v141_xp
#
- echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLog/ddraw.dll")" >> $GITHUB_OUTPUT
- echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLog/ddraw.pdb")" >> $GITHUB_OUTPUT
+ echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLogXP/ddraw.dll")" >> $GITHUB_OUTPUT
+ echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLogXP/ddraw.pdb")" >> $GITHUB_OUTPUT
echo "::endgroup::"
fi
shell: bash
# Creating empty `PostBuild.cmd` to avoid false-positive build error
- - name: Build DebugLogMini
- id: build-debuglogmini
+ - name: Build DebugLogMiniXP
+ id: build-debuglogminixp
run: |
:
- if [[ "${{ inputs.debuglogmini }}" == "true" ]]; then
- echo "::group::Build DebugLogMini"
+ if [[ "${{ inputs.debuglogminixp }}" == "true" ]]; then
+ echo "::group::Build DebugLogMiniXP"
#
# echo "@echo off" > "$GITHUB_ACTION_PATH/sfall/PostBuild.cmd"
- "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=DebugLogMini -p:Platform=x86 -p:PlatformToolset=v141_xp
+ "${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=DebugLogMiniXP -p:Platform=x86 -p:PlatformToolset=v141_xp
#
- echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLogMini/ddraw.dll")" >> $GITHUB_OUTPUT
- echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLogMini/ddraw.pdb")" >> $GITHUB_OUTPUT
+ echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLogMiniXP/ddraw.dll")" >> $GITHUB_OUTPUT
+ echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/DebugLogMiniXP/ddraw.pdb")" >> $GITHUB_OUTPUT
echo "::endgroup::"
fi
diff --git a/cnc-ddraw.sln b/cnc-ddraw.sln
index 1b867f0704..c579c3bc7d 100644
--- a/cnc-ddraw.sln
+++ b/cnc-ddraw.sln
@@ -8,19 +8,22 @@ EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
- DebugLog|x86 = DebugLog|x86
- DebugLogMini|x86 = DebugLogMini|x86
+ DebugLogMiniXP|x86 = DebugLogMiniXP|x86
+ DebugLogXP|x86 = DebugLogXP|x86
Release|x86 = Release|x86
+ ReleaseXP|x86 = ReleaseXP|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{96094551-5D52-4EBD-BE4C-5291A03507FC}.Debug|x86.ActiveCfg = Debug|Win32
{96094551-5D52-4EBD-BE4C-5291A03507FC}.Debug|x86.Build.0 = Debug|Win32
- {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLog|x86.ActiveCfg = DebugLog|Win32
- {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLog|x86.Build.0 = DebugLog|Win32
- {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLogMini|x86.ActiveCfg = DebugLogMini|Win32
- {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLogMini|x86.Build.0 = DebugLogMini|Win32
+ {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLogMiniXP|x86.ActiveCfg = DebugLogMini|Win32
+ {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLogMiniXP|x86.Build.0 = DebugLogMini|Win32
+ {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLogXP|x86.ActiveCfg = DebugLog|Win32
+ {96094551-5D52-4EBD-BE4C-5291A03507FC}.DebugLogXP|x86.Build.0 = DebugLog|Win32
{96094551-5D52-4EBD-BE4C-5291A03507FC}.Release|x86.ActiveCfg = Release|Win32
{96094551-5D52-4EBD-BE4C-5291A03507FC}.Release|x86.Build.0 = Release|Win32
+ {96094551-5D52-4EBD-BE4C-5291A03507FC}.ReleaseXP|x86.ActiveCfg = ReleaseXP|Win32
+ {96094551-5D52-4EBD-BE4C-5291A03507FC}.ReleaseXP|x86.Build.0 = ReleaseXP|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/cnc-ddraw.vcxproj b/cnc-ddraw.vcxproj
index 8a22c6a1e0..62cd509a37 100644
--- a/cnc-ddraw.vcxproj
+++ b/cnc-ddraw.vcxproj
@@ -13,6 +13,10 @@
Debug
Win32
+
+ ReleaseXP
+ Win32
+
Release
Win32
@@ -112,17 +116,24 @@
cnc_ddraw
- 7.0
+ 10.0
{96094551-5D52-4EBD-BE4C-5291A03507FC}
DynamicLibrary
true
- v141_xp
+ v143
MultiByte
+ DynamicLibrary
+ false
+ v143
+ true
+ MultiByte
+
+
DynamicLibrary
false
v141_xp
@@ -153,6 +164,9 @@
+
+
+
@@ -172,6 +186,12 @@
false
ddraw
+
+ $(SolutionDir)bin\ReleaseXP\
+ $(SolutionDir)bin\ReleaseXP\
+ false
+ ddraw
+
$(SolutionDir)bin\DebugLog\
$(SolutionDir)bin\DebugLog\
@@ -201,7 +221,7 @@
-if exist "$(LocalDebuggerCommand)" if exist "$(LocalDebuggerWorkingDirectory)" (
+if NOT "$(LocalDebuggerWorkingDirectory)" == "$(ProjectDir)" if exist "$(LocalDebuggerCommand)" if exist "$(LocalDebuggerWorkingDirectory)" (
copy "$(TargetPath)" "$(LocalDebuggerWorkingDirectory)$(TargetFileName)"
)
@@ -228,7 +248,34 @@ if exist "$(LocalDebuggerCommand)" if exist "$(LocalDebuggerWorkingDirectory)"
-if exist "$(LocalDebuggerCommand)" if exist "$(LocalDebuggerWorkingDirectory)" (
+if NOT "$(LocalDebuggerWorkingDirectory)" == "$(ProjectDir)" if exist "$(LocalDebuggerCommand)" if exist "$(LocalDebuggerWorkingDirectory)" (
+ copy "$(TargetPath)" "$(LocalDebuggerWorkingDirectory)$(TargetFileName)"
+)
+
+
+
+
+
+ Level2
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)
+ MultiThreaded
+ inc;src\detours
+
+
+ Windows
+ true
+ true
+ winmm.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ ddraw.def
+
+
+
+if NOT "$(LocalDebuggerWorkingDirectory)" == "$(ProjectDir)" if exist "$(LocalDebuggerCommand)" if exist "$(LocalDebuggerWorkingDirectory)" (
copy "$(TargetPath)" "$(LocalDebuggerWorkingDirectory)$(TargetFileName)"
)