Compare commits

..

No commits in common. "master" and "CI-17b0cb8" have entirely different histories.

10 changed files with 54 additions and 108 deletions

112
.github/labeler.yml vendored
View file

@ -1,111 +1,75 @@
# Labels are in alphabetical order. # Labels are in alphabetical order.
cmake: cmake:
- changed-files: - 'CMake*'
- any-glob-to-any-file: - '**/CMakeLists.txt'
- 'CMake*' - '**/*.cmake'
- '**/CMakeLists.txt'
- '**/*.cmake'
cpu-emulation: cpu-emulation:
- changed-files: - 'src/devices/x86/**'
- any-glob-to-any-file:
- 'src/devices/x86/**'
deployment: deployment:
- changed-files: - '*.yml'
- any-glob-to-any-file: - '.github/workflows/CI.yml'
- '*.yml'
- '.github/workflows/CI.yml'
file-system: file-system:
- changed-files: - 'src/core/kernel/support/EmuFile*'
- any-glob-to-any-file:
- 'src/core/kernel/support/EmuFile*'
graphics: graphics:
- changed-files: - 'src/core/hle/D3D8/**'
- any-glob-to-any-file: - 'src/core/hle/XGRAPHIC/**'
- 'src/core/hle/D3D8/**' - 'src/devices/video/**'
- 'src/core/hle/XGRAPHIC/**' - 'src/gui/*Video*'
- 'src/devices/video/**'
- 'src/gui/*Video*'
HLE: HLE:
- changed-files: - 'src/core/hle/**'
- any-glob-to-any-file: - 'src/core/kernel/**'
- 'src/core/hle/**'
- 'src/core/kernel/**'
informational: informational:
- changed-files: - '**/*Logging*'
- any-glob-to-any-file: - '**/*Logging*/**'
- '**/*Logging*' - '**/README.md'
- '**/*Logging*/**'
- '**/README.md'
input: input:
- changed-files: - 'src/common/input/**'
- any-glob-to-any-file: - 'src/core/hle/XAPI/input/**'
- 'src/common/input/**' - 'src/devices/usb/**'
- 'src/core/hle/XAPI/input/**' - 'src/gui/controllers/**'
- 'src/devices/usb/**' - 'src/gui/*Input*'
- 'src/gui/controllers/**'
- 'src/gui/*Input*'
kernel: kernel:
- changed-files: - 'src/core/kernel/**'
- any-glob-to-any-file:
- 'src/core/kernel/**'
LLE: LLE:
- changed-files: - 'src/devices/**'
- any-glob-to-any-file:
- 'src/devices/**'
memory: memory:
- changed-files: - 'src/core/kernel/memory-manager/**'
- any-glob-to-any-file:
- 'src/core/kernel/memory-manager/**'
networking: networking:
- changed-files: - 'src/core/hle/XONLINE/**'
- any-glob-to-any-file: - 'src/devices/network/**'
- 'src/core/hle/XONLINE/**' - 'src/gui/*Network*'
- 'src/devices/network/**'
- 'src/gui/*Network*'
sound: sound:
- changed-files: - 'src/common/audio/**'
- any-glob-to-any-file: - 'src/core/hle/DSOUND/**'
- 'src/common/audio/**' - 'src/core/hle/XACTENG/**'
- 'src/core/hle/DSOUND/**' - 'src/devices/audio/**'
- 'src/core/hle/XACTENG/**' - 'src/gui/*Audio*'
- 'src/devices/audio/**'
- 'src/gui/*Audio*'
modules: modules:
- changed-files: - 'import/**'
- any-glob-to-any-file:
- 'import/**'
threading: threading:
- changed-files: - 'src/core/kernel/support/EmuFS*'
- any-glob-to-any-file:
- 'src/core/kernel/support/EmuFS*'
timing: timing:
- changed-files: - 'src/common/Timer*'
- any-glob-to-any-file:
- 'src/common/Timer*'
user interface: user interface:
- changed-files: - 'src/core/common/imgui/*'
- any-glob-to-any-file: - 'src/gui/**'
- 'src/core/common/imgui/*'
- 'src/gui/**'
xbdm: xbdm:
- changed-files: - 'src/common/xbdm/**'
- any-glob-to-any-file:
- 'src/common/xbdm/**'

View file

@ -44,7 +44,7 @@ jobs:
- name: Prepare artifacts - name: Prepare artifacts
if: matrix.configuration == 'Release' if: matrix.configuration == 'Release'
run: cmake --install build --config ${{ matrix.configuration }} --prefix artifacts run: cmake --install build --config ${{ matrix.configuration }} --prefix artifacts
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v3
if: matrix.configuration == 'Release' if: matrix.configuration == 'Release'
with: with:
name: CxbxReloaded-${{ matrix.configuration }}-VS${{ matrix.vsver }} name: CxbxReloaded-${{ matrix.configuration }}-VS${{ matrix.vsver }}
@ -61,7 +61,7 @@ jobs:
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Download artifacts - name: Download artifacts
uses: actions/download-artifact@v4 uses: actions/download-artifact@v3
with: with:
path: artifacts path: artifacts
- name: Re-zip artifacts - name: Re-zip artifacts

View file

@ -7,9 +7,9 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v3
- name: Automatically close issues that don't follow the issue template - name: Automatically close issues that don't follow the issue template
uses: ergo720/auto-close-issues@v1 uses: ergo720/auto-close-issues@v1.0.4
with: with:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
issue-close-message: "@${issue.user.login}: your issue has been automatically closed because it does not follow the issue template." # optional property issue-close-message: "@${issue.user.login}: your issue has been automatically closed because it does not follow the issue template." # optional property

View file

@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Labeler - name: Labeler
uses: actions/labeler@v5 uses: actions/labeler@v4
with: with:
repo-token: ${{ secrets.GITHUB_TOKEN }} repo-token: ${{ secrets.GITHUB_TOKEN }}
sync-labels: true sync-labels: true

2
.gitmodules vendored
View file

@ -1,6 +1,6 @@
[submodule "import/subhook"] [submodule "import/subhook"]
path = import/subhook path = import/subhook
url = https://github.com/Cxbx-Reloaded/subhook.git url = https://github.com/Zeex/subhook.git
shallow = true shallow = true
[submodule "import/cs_x86"] [submodule "import/cs_x86"]
path = import/cs_x86 path = import/cs_x86

2
import/SDL2 vendored

@ -1 +1 @@
Subproject commit fa24d868ac2f8fd558e4e914c9863411245db8fd Subproject commit b424665e0899769b200231ba943353a5fee1b6b6

View file

@ -46,7 +46,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
# Enable Chihiro work # Enable Chihiro work
CHIHIRO_WORK CHIHIRO_WORK
) )
# Reference: https://docs.microsoft.com/en-us/cpp/build/reference/compiler-options-listed-alphabetically # Reference: https://docs.microsoft.com/en-us/cpp/build/reference/compiler-options-listed-alphabetically
add_compile_options( add_compile_options(
# Catch synchronous (C++) exceptions only # Catch synchronous (C++) exceptions only
@ -68,7 +68,7 @@ XXH_INLINE_ALL
) )
file (GLOB RESOURCES file (GLOB RESOURCES
"${CXBXR_ROOT_DIR}/CONTRIBUTORS" "${CXBXR_ROOT_DIR}/CONTRIBUTORS"
"${CXBXR_ROOT_DIR}/COPYING" "${CXBXR_ROOT_DIR}/COPYING"
"${CXBXR_ROOT_DIR}/README.md" "${CXBXR_ROOT_DIR}/README.md"
@ -90,7 +90,7 @@ source_group(TREE ${CXBXR_ROOT_DIR}/import PREFIX import FILES
${CXBXR_SOURCE_EMU_IMPORT} ${CXBXR_SOURCE_EMU_IMPORT}
) )
source_group(TREE ${CXBXR_ROOT_DIR}/src PREFIX source FILES source_group(TREE ${CXBXR_ROOT_DIR}/src PREFIX source FILES
${CXBXR_SOURCE_GUIv1} ${CXBXR_SOURCE_GUIv1}
${CXBXR_SOURCE_COMMON} ${CXBXR_SOURCE_COMMON}
) )
@ -121,7 +121,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
# Reference: https://docs.microsoft.com/en-us/cpp/build/reference/compiler-options-listed-alphabetically # Reference: https://docs.microsoft.com/en-us/cpp/build/reference/compiler-options-listed-alphabetically
# /Zi = create a PDB file without affecting optimization # /Zi = create a PDB file without affecting optimization
# /Ob3 = Controls inline expansion of functions. # /Ob2 = Controls inline expansion of functions.
# /Oi = Generate intrinsic functions # /Oi = Generate intrinsic functions
# /Ot = In favor of using fast code than small code # /Ot = In favor of using fast code than small code
# /GL = Whole program optimization # /GL = Whole program optimization
@ -132,7 +132,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
# Set optimization options for release build # Set optimization options for release build
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} \ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} \
/Zi \ /Zi \
/Ob3 \ /Ob2 \
/Oi \ /Oi \
/Ot \ /Ot \
/GL \ /GL \
@ -142,7 +142,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
/Qpar \ /Qpar \
" "
) )
# disable optimization for CxbxKrnl.cpp file # disable optimization for CxbxKrnl.cpp file
set_source_files_properties( set_source_files_properties(
${CXBXR_KRNL_CPP} PROPERTIES COMPILE_FLAGS "/Od /GL-" ${CXBXR_KRNL_CPP} PROPERTIES COMPILE_FLAGS "/Od /GL-"
@ -150,7 +150,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
endif() endif()
# Windows libraries # Windows libraries
set(WINS_LIB set(WINS_LIB
legacy_stdio_definitions legacy_stdio_definitions
d3d9 d3d9
d3dcompiler d3dcompiler
@ -170,7 +170,6 @@ set(WINS_LIB
comctl32 comctl32
XINPUT9_1_0 XINPUT9_1_0
Iphlpapi Iphlpapi
Dwmapi
) )
target_link_libraries(cxbx target_link_libraries(cxbx

View file

@ -131,7 +131,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
# Set optimization options for release build # Set optimization options for release build
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} \ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} \
/Zi \ /Zi \
/Ob3 \ /Ob2 \
/Oi \ /Oi \
/Ot \ /Ot \
/GL \ /GL \
@ -144,7 +144,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
endif() endif()
# Windows libraries # Windows libraries
set(WINS_LIB set(WINS_LIB
legacy_stdio_definitions legacy_stdio_definitions
d3d9 d3d9
d3dcompiler d3dcompiler

View file

@ -281,17 +281,6 @@ XBSYSAPI EXPORTNUM(66) xbox::ntstatus_xt NTAPI xbox::IoCreateFile
// Force ShareAccess to all // Force ShareAccess to all
ShareAccess = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE; ShareAccess = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE;
// Force set DELETE permission flag if write attributes flag is set.
// Testcase: dashupdate.xbe (4928, untested with other versions but newer dashupdate did not call for deletion on fail).
if (DesiredAccess & FILE_WRITE_ATTRIBUTES) {
DesiredAccess |= DELETE;
}
// Force sanitize before call to NtDll::NtCreateFile
// Testcase:
// * Exhibition Demo discs - Attempt to create music folder fail internally which then show unable to copy soundtrack dialog.
FileAttributes &= FILE_ATTRIBUTE_VALID_FLAGS;
if (SUCCEEDED(ret)) if (SUCCEEDED(ret))
{ {
// redirect to NtCreateFile // redirect to NtCreateFile

View file

@ -56,8 +56,6 @@
#undef GetSystemMetrics // Force remove DirectX 8's multimon.h defined function (redirect to xGetSystemMetrics). #undef GetSystemMetrics // Force remove DirectX 8's multimon.h defined function (redirect to xGetSystemMetrics).
#include <WinUser.h> // For GetSystemMetrics #include <WinUser.h> // For GetSystemMetrics
#include <dwmapi.h> // For DwmSetWindowAttribute
#include <io.h> #include <io.h>
#include <shlobj.h> #include <shlobj.h>
@ -325,10 +323,6 @@ LRESULT CALLBACK WndMain::WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lP
ChangeWindowMessageFilterEx(hwnd, WM_COPYDATA, MSGFLT_ALLOW, nullptr); ChangeWindowMessageFilterEx(hwnd, WM_COPYDATA, MSGFLT_ALLOW, nullptr);
ChangeWindowMessageFilterEx(hwnd, 0x0049, MSGFLT_ALLOW, nullptr); ChangeWindowMessageFilterEx(hwnd, 0x0049, MSGFLT_ALLOW, nullptr);
// Remove rounded corners from the render window on Windows 11
const DWM_WINDOW_CORNER_PREFERENCE corner_preference = DWMWCP_DONOTROUND;
DwmSetWindowAttribute(hwnd, DWMWA_WINDOW_CORNER_PREFERENCE, &corner_preference, sizeof(corner_preference));
m_bCreated = true; m_bCreated = true;
} }
break; break;