diff --git a/.github/pull.yml b/.github/pull.yml new file mode 100644 index 0000000000..fcd019846f --- /dev/null +++ b/.github/pull.yml @@ -0,0 +1,10 @@ +version: "1" +rules: # Array of rules + - base: master # Required. Target branch + upstream: dolphin-emu:master # Required. Must be in the same fork network. + mergeMethod: hardreset # Optional, one of [none, merge, squash, rebase, hardreset], Default: none. + mergeUnstable: false # Optional, merge pull request even when the mergeable_state is not clean. Default: false + conflictReviewers: # Optional, on merge conflict assign a reviewer + - EndangeredNayla +label: ":arrow_heading_down: pull" # Optional +conflictLabel: "merge-conflict" # Optional, on merge conflict assign a custom label, Default: merge-conflict diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index c24ef128b8..7e2f3b5bb4 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -6,9 +6,7 @@ name: Linux CI # events but only for the master branch on: push: - branches: [ master ] pull_request: - branches: [ master ] # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -30,13 +28,13 @@ jobs: run: git submodule update --init --recursive # Setup Packages - name: Setup Packages - run: sudo apt update && sudo apt upgrade && sudo apt install curl ffmpeg git libao-dev libasound-dev libavcodec-dev libavformat-dev libbluetooth-dev libevdev-dev libgtk2.0-dev libhidapi-dev libmbedtls-dev libminiupnpc-dev libopenal-dev libpangocairo-1.0-0 libpulse-dev libsfml-dev libswscale-dev libudev-dev libusb-1.0-0-dev libxrandr-dev qt5-default qtbase5-private-dev + run: sudo apt update && sudo apt upgrade && sudo apt install build-essential git cmake ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libevdev-dev libusb-1.0-0-dev libxrandr-dev libxi-dev libpangocairo-1.0-0 qt6-base-private-dev libbluetooth-dev libasound2-dev libpulse-dev libgl1-mesa-dev libudev-dev libsystemd-dev dpkg-dev # Run CMake - name: Run CMake - run: mkdir build && cd build && cmake .. -G Ninja -DLINUX_LOCAL_DEV=true + run: mkdir build && cd build && cmake .. -G Ninja -DLINUX_LOCAL_DEV=true -DCPACK_PACKAGE_CONTACT="Mario Party Netplay" # Build Project - name: Run Make - run: cd build && ninja -j4 + run: cd build && ninja -j$(nproc) # Configure Dolphin - name: Configure Dolphin run: cd build && cp -r ../Data/Sys/ Binaries/ && cp -r ../Data/User/ Binaries/ && cp -r ../Data/dolphin-emu.png Binaries/ && touch Binaries/portable.txt @@ -45,4 +43,4 @@ jobs: uses: actions/upload-artifact@v2 with: name: DolphinMPN-Linux - path: /home/runner/work/dolphin-mpn-advanced-src/dolphin-mpn-advanced-src/build/Binaries/ + path: /home/runner/work/dolphin-mpn-src/dolphin-mpn-src/build/Binaries/ diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 8e49b1319e..cf05f064e8 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -6,9 +6,7 @@ name: macOS CI # events but only for the master branch on: push: - branches: [ master ] pull_request: - branches: [ master ] # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -27,7 +25,7 @@ jobs: platform: mac # Setup Packages - name: Setup Packages - run: brew install qt5 pkgconfig + run: brew install qt6 pkgconfig # Use Static ZSTD - name: Remove ZSTD run: brew uninstall zstd curl php --force --ignore-dependencies @@ -36,7 +34,7 @@ jobs: run: git submodule update --init --recursive # Run CMake - name: Run CMake - run: mkdir -p build && cd build && cmake .. -G Ninja -DCMAKE_CXX_FLAGS="-Xclang -fcolor-diagnostics" -DCMAKE_PREFIX_PATH=$(brew --prefix qt5) + run: mkdir -p build && cd build && cmake .. -G Ninja -DCMAKE_CXX_FLAGS="-Xclang -fcolor-diagnostics" -DCMAKE_PREFIX_PATH=$(brew --prefix qt6) # Build Project - name: Run Ninja run: cd build && ninja -j4 @@ -48,4 +46,4 @@ jobs: uses: actions/upload-artifact@v2 with: name: DolphinMPN-macOS - path: /Users/runner/work/dolphin-mpn-advanced-src/dolphin-mpn-advanced-src/build/Binaries/ + path: /Users/runner/work/dolphin-mpn-src/dolphin-mpn-src/build/Binaries/ diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 18e6253e1b..5f2bc7b57c 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -19,6 +19,12 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 + # Install 7zip + - name: Install 7zip + run: choco install 7zip + # Install Visual Studio Update + - name: Install Visual Studio Update + run: vs_installershell.exe update --passive --norestart --force --installpath "C:\Program Files\Microsoft Visual Studio\2022\Community" # Submoudle - name: Checkout Submodles run: git submodule update --init --recursive @@ -29,10 +35,19 @@ jobs: vs-version: '16.6.2' # Run MSBuild - name: Build Solution - run: msbuild "D:\a\dolphin-mpn-src\dolphin-src\Source\dolphin-emu.sln" /verbosity:minimal /property:Configuration=Release /property:Platform=x64 + run: msbuild "D:\a\dolphin-mpn-src\dolphin-mpn-src\Source\dolphin-emu.sln" /verbosity:minimal /property:Configuration=Release /property:Platform=x64 # Upload Artifact - name: Upload Build Artifact uses: actions/upload-artifact@v2 with: name: DolphinMPN-win32 - path: D:\a\dolphin-mpn-src\dolphin-mpn-advanced-src\Binary\x64 + path: D:\a\dolphin-mpn-src\dolphin-mpn-src\Binary\x64 + # Zip Artifact + - name: Zip Artifact + run: 7z a D:/DolphinMPN-win32 D:/a/dolphin-mpn-src/dolphin-mpn-src/Binary/x64/* + # New Release + - name: New Release + uses: softprops/action-gh-release@v1 + if: startsWith(github.ref, 'refs/tags/') + with: + files: D:/DolphinMPN-win32.7z diff --git a/Data/portable.txt b/Data/portable.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/Externals/Bochs_disasm/Bochs_disasm.vcxproj b/Externals/Bochs_disasm/Bochs_disasm.vcxproj index ca6e249b7d..10f241bf20 100644 --- a/Externals/Bochs_disasm/Bochs_disasm.vcxproj +++ b/Externals/Bochs_disasm/Bochs_disasm.vcxproj @@ -4,6 +4,7 @@ {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B} + 10.0.22621.0 diff --git a/Externals/FatFs/FatFs.vcxproj b/Externals/FatFs/FatFs.vcxproj index 659f66083b..d586ddcf48 100644 --- a/Externals/FatFs/FatFs.vcxproj +++ b/Externals/FatFs/FatFs.vcxproj @@ -4,6 +4,7 @@ {3F17D282-A77D-4931-B844-903AD0809A5E} + 10.0.22621.0 @@ -30,4 +31,4 @@ - + \ No newline at end of file diff --git a/Externals/FreeSurround/FreeSurround.vcxproj b/Externals/FreeSurround/FreeSurround.vcxproj index da3a11776a..a2e54adafb 100644 --- a/Externals/FreeSurround/FreeSurround.vcxproj +++ b/Externals/FreeSurround/FreeSurround.vcxproj @@ -4,6 +4,7 @@ {8498F2FA-5CA6-4169-9971-DE5B1FE6132C} + 10.0.22621.0 diff --git a/Externals/LZO/LZO.vcxproj b/Externals/LZO/LZO.vcxproj index df9855ccf9..9d0ed4574d 100644 --- a/Externals/LZO/LZO.vcxproj +++ b/Externals/LZO/LZO.vcxproj @@ -4,6 +4,7 @@ {AB993F38-C31D-4897-B139-A620C42BC565} + 10.0.22621.0 diff --git a/Externals/SDL/SDL2.vcxproj b/Externals/SDL/SDL2.vcxproj index 1693429f70..52e246baa1 100644 --- a/Externals/SDL/SDL2.vcxproj +++ b/Externals/SDL/SDL2.vcxproj @@ -4,6 +4,7 @@ {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA} + 10.0.22621.0 diff --git a/Externals/SFML/build/vc2010/SFML_Network.vcxproj b/Externals/SFML/build/vc2010/SFML_Network.vcxproj index f93a95f092..08bf497b84 100644 --- a/Externals/SFML/build/vc2010/SFML_Network.vcxproj +++ b/Externals/SFML/build/vc2010/SFML_Network.vcxproj @@ -4,6 +4,7 @@ {93D73454-2512-424E-9CDA-4BB357FE13DD} + 10.0.22621.0 diff --git a/Externals/bzip2/bzip2.vcxproj b/Externals/bzip2/bzip2.vcxproj index 4b9ab54472..7fb314047d 100644 --- a/Externals/bzip2/bzip2.vcxproj +++ b/Externals/bzip2/bzip2.vcxproj @@ -4,6 +4,7 @@ {1D8C51D2-FFA4-418E-B183-9F42B6A6717E} + 10.0.22621.0 diff --git a/Externals/cpp-optparse/cpp-optparse.vcxproj b/Externals/cpp-optparse/cpp-optparse.vcxproj index 93196962de..102435c3cb 100644 --- a/Externals/cpp-optparse/cpp-optparse.vcxproj +++ b/Externals/cpp-optparse/cpp-optparse.vcxproj @@ -4,6 +4,7 @@ {C636D9D1-82FE-42B5-9987-63B7D4836341} + 10.0.22621.0 diff --git a/Externals/cubeb/msvc/cubeb.vcxproj b/Externals/cubeb/msvc/cubeb.vcxproj index c35fd82128..3b1d62b978 100644 --- a/Externals/cubeb/msvc/cubeb.vcxproj +++ b/Externals/cubeb/msvc/cubeb.vcxproj @@ -4,6 +4,7 @@ {8EA11166-6512-44FC-B7A5-A4D1ECC81170} + 10.0.22621.0 diff --git a/Externals/cubeb/msvc/cubeb.vcxproj.filters b/Externals/cubeb/msvc/cubeb.vcxproj.filters index 8611fe88dc..bc88c6dd70 100644 --- a/Externals/cubeb/msvc/cubeb.vcxproj.filters +++ b/Externals/cubeb/msvc/cubeb.vcxproj.filters @@ -6,7 +6,6 @@ - @@ -17,45 +16,34 @@ - - speex - - - speex - - - speex - - - speex - - - speex - - - speex - - - speex - + + + + + + + + + + + + - - - speex - + + {caf7c7d0-0918-4299-8423-b287285d6fd0} - + \ No newline at end of file diff --git a/Externals/curl/curl.vcxproj b/Externals/curl/curl.vcxproj index 351f05831b..0021ee03c2 100644 --- a/Externals/curl/curl.vcxproj +++ b/Externals/curl/curl.vcxproj @@ -4,6 +4,7 @@ {BB00605C-125F-4A21-B33B-7BF418322DCB} + 10.0.22621.0 diff --git a/Externals/discord-rpc/src/discord-rpc.vcxproj b/Externals/discord-rpc/src/discord-rpc.vcxproj index a3f1b38e7f..5b0ed91cc3 100644 --- a/Externals/discord-rpc/src/discord-rpc.vcxproj +++ b/Externals/discord-rpc/src/discord-rpc.vcxproj @@ -4,6 +4,7 @@ {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD} + 10.0.22621.0 @@ -41,4 +42,4 @@ - + \ No newline at end of file diff --git a/Externals/ed25519/ed25519.vcxproj b/Externals/ed25519/ed25519.vcxproj index fa79d4deb9..da161291fb 100644 --- a/Externals/ed25519/ed25519.vcxproj +++ b/Externals/ed25519/ed25519.vcxproj @@ -4,6 +4,7 @@ {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3} + 10.0.22621.0 diff --git a/Externals/enet/enet.vcxproj b/Externals/enet/enet.vcxproj index 21f16b6b07..58a5624300 100644 --- a/Externals/enet/enet.vcxproj +++ b/Externals/enet/enet.vcxproj @@ -4,6 +4,7 @@ {CBC76802-C128-4B17-BF6C-23B08C313E5E} + 10.0.22621.0 diff --git a/Externals/fmt/fmt.vcxproj b/Externals/fmt/fmt.vcxproj index b7015f0558..52df4aae56 100644 --- a/Externals/fmt/fmt.vcxproj +++ b/Externals/fmt/fmt.vcxproj @@ -4,6 +4,7 @@ {4BC5A148-0AB3-440F-A980-A29B4B999190} + 10.0.22621.0 diff --git a/Externals/glslang/glslang.vcxproj b/Externals/glslang/glslang.vcxproj index a602d6e24c..c15a841a47 100644 --- a/Externals/glslang/glslang.vcxproj +++ b/Externals/glslang/glslang.vcxproj @@ -4,6 +4,7 @@ {D178061B-84D3-44F9-BEED-EFD18D9033F0} + 10.0.22621.0 @@ -131,4 +132,4 @@ - + \ No newline at end of file diff --git a/Externals/glslang/glslang.vcxproj.filters b/Externals/glslang/glslang.vcxproj.filters index 621de9acdc..7af1e581bb 100644 --- a/Externals/glslang/glslang.vcxproj.filters +++ b/Externals/glslang/glslang.vcxproj.filters @@ -133,9 +133,6 @@ SPIRV - - StandAlone - OGLCompilersDLL @@ -145,11 +142,9 @@ glslang\MachineIndependant + - - StandAlone - glslang\Include @@ -273,6 +268,9 @@ glslang\MachineIndependant + + + @@ -311,4 +309,4 @@ glslang\MachineIndependant - + \ No newline at end of file diff --git a/Externals/imgui/imgui.vcxproj b/Externals/imgui/imgui.vcxproj index bcbd4d0766..ee8b88e561 100644 --- a/Externals/imgui/imgui.vcxproj +++ b/Externals/imgui/imgui.vcxproj @@ -4,6 +4,7 @@ {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB} + 10.0.22621.0 diff --git a/Externals/implot/implot.vcxproj b/Externals/implot/implot.vcxproj index 11446581c6..455000cf40 100644 --- a/Externals/implot/implot.vcxproj +++ b/Externals/implot/implot.vcxproj @@ -1,37 +1,38 @@  - - - - {A608225E-AE0A-4D1A-9B55-97F57C862391} - - - - - - - - - - - - - - - $(CoreDir);%(AdditionalIncludeDirectories) - - - - - - - - - - - - - - - - + + + + {A608225E-AE0A-4D1A-9B55-97F57C862391} + 10.0.22621.0 + + + + + + + + + + + + + + + $(CoreDir);%(AdditionalIncludeDirectories) + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Externals/liblzma/liblzma.vcxproj b/Externals/liblzma/liblzma.vcxproj index a4b7ff4a9d..8a9ecffa2a 100644 --- a/Externals/liblzma/liblzma.vcxproj +++ b/Externals/liblzma/liblzma.vcxproj @@ -4,6 +4,7 @@ {055A775F-B4F5-4970-9240-F6CF7661F37B} + 10.0.22621.0 diff --git a/Externals/libspng/spng.vcxproj b/Externals/libspng/spng.vcxproj index 3a37bbaf5a..be225fb8d5 100644 --- a/Externals/libspng/spng.vcxproj +++ b/Externals/libspng/spng.vcxproj @@ -4,6 +4,7 @@ {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313} + 10.0.22621.0 diff --git a/Externals/libusb/libusb-1.0.vcxproj b/Externals/libusb/libusb-1.0.vcxproj index 5834338af9..f7fd1a33fa 100644 --- a/Externals/libusb/libusb-1.0.vcxproj +++ b/Externals/libusb/libusb-1.0.vcxproj @@ -4,6 +4,7 @@ {349EE8F9-7D25-4909-AAF5-FF3FADE72187} + 10.0.22621.0 diff --git a/Externals/mGBA/mgba.vcxproj b/Externals/mGBA/mgba.vcxproj index 6f1d3b3f6f..ce46cbd41e 100644 --- a/Externals/mGBA/mgba.vcxproj +++ b/Externals/mGBA/mgba.vcxproj @@ -4,6 +4,7 @@ {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6} + 10.0.22621.0 diff --git a/Externals/mbedtls/mbedTLS.vcxproj b/Externals/mbedtls/mbedTLS.vcxproj index bb8f86cae9..518076413e 100644 --- a/Externals/mbedtls/mbedTLS.vcxproj +++ b/Externals/mbedtls/mbedTLS.vcxproj @@ -4,6 +4,7 @@ {BDB6578B-0691-4E80-A46C-DF21639FD3B8} + 10.0.22621.0 diff --git a/Externals/miniupnpc/miniupnpc.vcxproj b/Externals/miniupnpc/miniupnpc.vcxproj index 44cd1b3c45..62bc856faa 100644 --- a/Externals/miniupnpc/miniupnpc.vcxproj +++ b/Externals/miniupnpc/miniupnpc.vcxproj @@ -4,6 +4,7 @@ {31643FDB-1BB8-4965-9DE7-000FC88D35AE} + 10.0.22621.0 diff --git a/Externals/minizip/minizip.vcxproj b/Externals/minizip/minizip.vcxproj index d6e06b7aa3..2901b381c0 100644 --- a/Externals/minizip/minizip.vcxproj +++ b/Externals/minizip/minizip.vcxproj @@ -4,6 +4,7 @@ {23114507-079A-4418-9707-CFA81A03CA99} + 10.0.22621.0 diff --git a/Externals/picojson/picojson.vcxproj b/Externals/picojson/picojson.vcxproj index ae446bd54a..b4489c3192 100644 --- a/Externals/picojson/picojson.vcxproj +++ b/Externals/picojson/picojson.vcxproj @@ -4,6 +4,7 @@ {2C0D058E-DE35-4471-AD99-E68A2CAF9E18} + 10.0.22621.0 diff --git a/Externals/pugixml/pugixml.vcxproj b/Externals/pugixml/pugixml.vcxproj index ee37612163..e2f5a58fa2 100644 --- a/Externals/pugixml/pugixml.vcxproj +++ b/Externals/pugixml/pugixml.vcxproj @@ -4,6 +4,7 @@ {38FEE76F-F347-484B-949C-B4649381CFFB} + 10.0.22621.0 diff --git a/Externals/rcheevos/rcheevos.vcxproj b/Externals/rcheevos/rcheevos.vcxproj index cde8fd6ecd..599d4c6a3d 100644 --- a/Externals/rcheevos/rcheevos.vcxproj +++ b/Externals/rcheevos/rcheevos.vcxproj @@ -4,6 +4,7 @@ {CC99A910-3752-4465-95AA-7DC240D92A99} + 10.0.22621.0 diff --git a/Externals/soundtouch/SoundTouch.vcxproj b/Externals/soundtouch/SoundTouch.vcxproj index 6b978e8aec..1dc0a3fd1b 100644 --- a/Externals/soundtouch/SoundTouch.vcxproj +++ b/Externals/soundtouch/SoundTouch.vcxproj @@ -4,6 +4,7 @@ {EC082900-B4D8-42E9-9663-77F02F6936AE} + 10.0.22621.0 @@ -53,4 +54,4 @@ - + \ No newline at end of file diff --git a/Externals/spirv_cross/spirv_cross.vcxproj b/Externals/spirv_cross/spirv_cross.vcxproj index de93abda1b..d830194d3f 100644 --- a/Externals/spirv_cross/spirv_cross.vcxproj +++ b/Externals/spirv_cross/spirv_cross.vcxproj @@ -4,6 +4,7 @@ {3d780617-ec8c-4721-b9fd-dfc9bb658c7c} + 10.0.22621.0 diff --git a/Externals/xxhash/xxhash.vcxproj b/Externals/xxhash/xxhash.vcxproj index 80c7bb5654..2e11a57126 100644 --- a/Externals/xxhash/xxhash.vcxproj +++ b/Externals/xxhash/xxhash.vcxproj @@ -4,6 +4,7 @@ {677EA016-1182-440C-9345-DC88D1E98C0C} + 10.0.22621.0 diff --git a/Externals/zlib-ng/zlib-ng.vcxproj b/Externals/zlib-ng/zlib-ng.vcxproj index 1366e1da77..fe32f8255b 100644 --- a/Externals/zlib-ng/zlib-ng.vcxproj +++ b/Externals/zlib-ng/zlib-ng.vcxproj @@ -4,6 +4,7 @@ {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE} + 10.0.22621.0 diff --git a/Externals/zstd/zstd.vcxproj b/Externals/zstd/zstd.vcxproj index 8ea103a3c2..c3c1380925 100644 --- a/Externals/zstd/zstd.vcxproj +++ b/Externals/zstd/zstd.vcxproj @@ -4,6 +4,7 @@ {1BEA10F3-80CE-4BC4-9331-5769372CDF99} + 10.0.22621.0 diff --git a/Languages/Languages.vcxproj b/Languages/Languages.vcxproj index 925884ea04..0c709b5567 100644 --- a/Languages/Languages.vcxproj +++ b/Languages/Languages.vcxproj @@ -4,6 +4,7 @@ {0E033BE3-2E08-428E-9AE9-BC673EFA12B5} + 10.0.22621.0 @@ -25,7 +26,7 @@ - + diff --git a/Source/Core/Common/SCMRevGen.vcxproj b/Source/Core/Common/SCMRevGen.vcxproj index eea1446caa..fcf645dde8 100644 --- a/Source/Core/Common/SCMRevGen.vcxproj +++ b/Source/Core/Common/SCMRevGen.vcxproj @@ -4,6 +4,7 @@ {41279555-F94F-4EBC-99DE-AF863C10C5C4} + 10.0.22621.0 diff --git a/Source/Core/Core/MarioPartyNetplay/8Player.h b/Source/Core/Core/MarioPartyNetplay/8Player.h deleted file mode 100644 index 7ec11032a1..0000000000 --- a/Source/Core/Core/MarioPartyNetplay/8Player.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef MPN_8PLAYER_H -#define MPN_8PLAYER_H - -#include -#include "InputCommon/GCPadStatus.h" - -#define MPN_TEAM_ACTIVE (1 << 0) -#define MPN_TEAM_L_READY (1 << 1) -#define MPN_TEAM_R_READY (1 << 2) - -typedef struct mpn_team_t -{ - uint8_t Flags; - GCPadStatus LeftPad; - GCPadStatus RightPad; -} mpn_team_t; - -bool mpn_8p_active (); -GCPadStatus mpn_8p_combined_input (uint8_t Port); -void mpn_8p_free (); -void mpn_8p_init (); -bool mpn_8p_port_ready (uint8_t Port); -void mpn_8p_push_back_input (GCPadStatus* Pad, uint8_t Port); -void mpn_8p_set_port_active (uint8_t Port, bool Active); - -extern mpn_team_t* Teams; - -#endif diff --git a/Source/Core/Core/MarioPartyNetplay/Discord.cpp b/Source/Core/Core/MarioPartyNetplay/Discord.cpp index e759136006..82624f7441 100644 --- a/Source/Core/Core/MarioPartyNetplay/Discord.cpp +++ b/Source/Core/Core/MarioPartyNetplay/Discord.cpp @@ -4,8 +4,8 @@ bool mpn_update_discord() { - if (!Memory::IsInitialized()) - return false; + //if (!Memory::IsInitialized()) + // return false; DiscordRichPresence RichPresence = {}; diff --git a/Source/Core/Core/MarioPartyNetplay/Gamestate.cpp b/Source/Core/Core/MarioPartyNetplay/Gamestate.cpp index 5d279e1fef..f389594b3c 100644 --- a/Source/Core/Core/MarioPartyNetplay/Gamestate.cpp +++ b/Source/Core/Core/MarioPartyNetplay/Gamestate.cpp @@ -1,10 +1,14 @@ #include "Gamestate.h" +#include "Core/System.h" mpn_state_t CurrentState; + bool mpn_init_state() { - if (!Memory::IsInitialized()) + auto& system = Core::System::GetInstance(); + auto& memory = system.GetMemory(); + if (!memory.IsInitialized()) return false; switch (mpn_read_value(0x00000000, 4)) @@ -120,7 +124,9 @@ bool mpn_update_state() { if (CurrentState.Scenes == NULL && !mpn_init_state()) return false; - if (!Memory::IsInitialized()) + auto& system = Core::System::GetInstance(); + auto& memory = system.GetMemory(); + if (!memory.IsInitialized()) return false; CurrentState.PreviousSceneId = CurrentState.CurrentSceneId; @@ -186,9 +192,10 @@ void mpn_per_frame() uint32_t mpn_read_value(uint32_t Address, uint8_t Size) { uint32_t Value = 0; - + auto& system = Core::System::GetInstance(); + auto& memory = system.GetMemory(); for (int8_t i = 0; i < Size; i++) - Value += Memory::m_pRAM[Address + i] * pow(256, Size - i - 1); + Value += memory.GetRAM()[Address + i] * pow(256, Size - i - 1); return Value; } diff --git a/Source/Core/DolphinLib.vcxproj b/Source/Core/DolphinLib.vcxproj index 3f5acdb7ca..126848b090 100644 --- a/Source/Core/DolphinLib.vcxproj +++ b/Source/Core/DolphinLib.vcxproj @@ -4,6 +4,7 @@ {d79392f7-06d6-4b4b-a39f-4d587c215d3a} + 10.0.22621.0 @@ -77,20 +78,16 @@ - + - - - + - + ]]> @@ -98,10 +95,6 @@ - + \ No newline at end of file diff --git a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj b/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj index b7569a88c5..085eca2429 100644 --- a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj +++ b/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj @@ -4,6 +4,7 @@ {974E563D-23F8-4E8F-9083-F62876B04E08} + 10.0.22621.0 @@ -63,4 +64,4 @@ - + \ No newline at end of file diff --git a/Source/Core/DolphinQt/DolphinQt.vcxproj b/Source/Core/DolphinQt/DolphinQt.vcxproj index e82b7d0234..6ff16a13d2 100644 --- a/Source/Core/DolphinQt/DolphinQt.vcxproj +++ b/Source/Core/DolphinQt/DolphinQt.vcxproj @@ -5,6 +5,7 @@ {FA3FA62B-6F58-4B86-9453-4D149940A066} Dolphin + 10.0.22621.0 @@ -37,10 +38,8 @@ $(ProjectDir)Settings;%(AdditionalIncludeDirectories) $(ProjectDir)TAS;%(AdditionalIncludeDirectories) $(ProjectDir)VideoInterface;%(AdditionalIncludeDirectories) - _SILENCE_CXX23_ALIGNED_STORAGE_DEPRECATION_WARNING;%(PreprocessorDefinitions) - $(SourceDir)PCH;%(AdditionalIncludeDirectories) Use @@ -450,6 +449,7 @@ + diff --git a/Source/Core/DolphinQt/Settings/GeneralPane.cpp b/Source/Core/DolphinQt/Settings/GeneralPane.cpp index 3feead58bd..ab17d35d66 100644 --- a/Source/Core/DolphinQt/Settings/GeneralPane.cpp +++ b/Source/Core/DolphinQt/Settings/GeneralPane.cpp @@ -99,14 +99,6 @@ void GeneralPane::ConnectLayout() connect(m_checkbox_discord_presence, &QCheckBox::toggled, this, &GeneralPane::OnSaveConfig); #endif - if (AutoUpdateChecker::SystemSupportsAutoUpdates()) - { - connect(m_combobox_update_track, qOverload(&QComboBox::currentIndexChanged), this, - &GeneralPane::OnSaveConfig); - connect(&Settings::Instance(), &Settings::AutoUpdateTrackChanged, this, - &GeneralPane::LoadConfig); - } - // Advanced connect(m_combobox_speedlimit, qOverload(&QComboBox::currentIndexChanged), [this]() { Config::SetBaseOrCurrent(Config::MAIN_EMULATION_SPEED, @@ -218,18 +210,6 @@ void GeneralPane::LoadConfig() const QSignalBlocker blocker(this); if (AutoUpdateChecker::SystemSupportsAutoUpdates()) - { - const auto track = Settings::Instance().GetAutoUpdateTrack().toStdString(); - - // If the track doesn't match any known value, set to "beta" which is the - // default config value on Dolphin release builds. - if (track == AUTO_UPDATE_DISABLE_STRING) - SignalBlocking(m_combobox_update_track)->setCurrentIndex(AUTO_UPDATE_DISABLE_INDEX); - else if (track == AUTO_UPDATE_DEV_STRING) - SignalBlocking(m_combobox_update_track)->setCurrentIndex(AUTO_UPDATE_DEV_INDEX); - else - SignalBlocking(m_combobox_update_track)->setCurrentIndex(AUTO_UPDATE_BETA_INDEX); - } #if defined(USE_ANALYTICS) && USE_ANALYTICS SignalBlocking(m_checkbox_enable_analytics) diff --git a/Source/Core/DolphinTool/DolphinTool.vcxproj b/Source/Core/DolphinTool/DolphinTool.vcxproj index 2ea89a0fce..f21bafad2b 100644 --- a/Source/Core/DolphinTool/DolphinTool.vcxproj +++ b/Source/Core/DolphinTool/DolphinTool.vcxproj @@ -4,6 +4,7 @@ {8F91523C-5C5E-4B22-A1F1-67560B6DC714} + 10.0.22621.0 @@ -66,4 +67,4 @@ - + \ No newline at end of file diff --git a/Source/Core/UICommon/AutoUpdate.cpp b/Source/Core/UICommon/AutoUpdate.cpp index 6c8663b610..fab935282a 100644 --- a/Source/Core/UICommon/AutoUpdate.cpp +++ b/Source/Core/UICommon/AutoUpdate.cpp @@ -194,7 +194,6 @@ void AutoUpdateChecker::CheckForUpdate(std::string_view update_track, std::string url = fmt::format("{}/update/check/v1/{}/{}/{}", GetUpdateServerUrl(), update_track, version_hash, GetPlatformID()); - const bool is_manual_check = check_type == CheckType::Manual; } void AutoUpdateChecker::TriggerUpdate(const AutoUpdateChecker::NewVersionInformation& info, diff --git a/Source/Core/UICommon/UICommon.cpp b/Source/Core/UICommon/UICommon.cpp index adba0fba7b..6b345e3b81 100644 --- a/Source/Core/UICommon/UICommon.cpp +++ b/Source/Core/UICommon/UICommon.cpp @@ -339,11 +339,60 @@ void SetUserDirectory(std::string custom_path) local = local != 0 || File::Exists(File::GetExeDirectory() + DIR_SEP "portable.txt"); - // Get Documents path in case we need it. - // TODO: Maybe use WIL when it's available? - PWSTR my_documents = nullptr; + // Attempt to check if the old User directory exists in Documents. + wil::unique_cotaskmem_string documents; + bool documents_found = SUCCEEDED( + SHGetKnownFolderPath(FOLDERID_Documents, KF_FLAG_DEFAULT, nullptr, documents.put())); - user_path = File::GetExeDirectory() + DIR_SEP USERDATA_DIR DIR_SEP; + std::optional old_user_folder; + if (documents_found) + { + old_user_folder = TStrToUTF8(documents.get()) + DIR_SEP NORMAL_USER_DIR DIR_SEP; + } + + if (local) // Case 1-2 + { + user_path = File::GetExeDirectory() + DIR_SEP PORTABLE_USER_DIR DIR_SEP; + } + else if (configPath) // Case 3 + { + user_path = TStrToUTF8(configPath.get()); + } + else if (old_user_folder && File::Exists(old_user_folder.value())) // Case 4 + { + user_path = old_user_folder.value(); + } + else if (appdata_found) // Case 5 + { + user_path = TStrToUTF8(appdata.get()) + DIR_SEP NORMAL_USER_DIR DIR_SEP; + + // Set the UserConfigPath value in the registry for backwards compatibility with older Dolphin + // builds, which will look for the default User directory in Documents. If we set this key, + // they will use this as the User directory instead. + // (If we're in this case, then this key doesn't exist, so it's OK to set it.) + std::wstring wstr_path = UTF8ToWString(user_path); + RegSetKeyValueW(HKEY_CURRENT_USER, TEXT("Software\\Dolphin Emulator"), TEXT("UserConfigPath"), + REG_SZ, wstr_path.c_str(), + static_cast((wstr_path.size() + 1) * sizeof(wchar_t))); + } + else // Case 6 + { + user_path = File::GetExeDirectory() + DIR_SEP PORTABLE_USER_DIR DIR_SEP; + } +#else // ifndef STEAM + if (File::Exists(File::GetExeDirectory() + DIR_SEP "portable.txt")) // Case 1 + { + user_path = File::GetExeDirectory() + DIR_SEP PORTABLE_USER_DIR DIR_SEP; + } + else if (appdata_found) // Case 2 + { + user_path = TStrToUTF8(appdata.get()) + DIR_SEP NORMAL_USER_DIR DIR_SEP; + } + else // Case 3 + { + user_path = File::GetExeDirectory() + DIR_SEP PORTABLE_USER_DIR DIR_SEP; + } +#endif #else if (File::IsDirectory(ROOT_DIR DIR_SEP EMBEDDED_USER_DIR)) diff --git a/Source/Core/WinUpdater/WinUpdater.vcxproj b/Source/Core/WinUpdater/WinUpdater.vcxproj index 28ae61bb34..227a1a97ed 100644 --- a/Source/Core/WinUpdater/WinUpdater.vcxproj +++ b/Source/Core/WinUpdater/WinUpdater.vcxproj @@ -4,6 +4,7 @@ {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03} + 10.0.22621.0 diff --git a/Source/Core/WinUpdater/WinUpdater.vcxproj.filters b/Source/Core/WinUpdater/WinUpdater.vcxproj.filters index d26f8a82cf..b588c3f435 100644 --- a/Source/Core/WinUpdater/WinUpdater.vcxproj.filters +++ b/Source/Core/WinUpdater/WinUpdater.vcxproj.filters @@ -3,8 +3,15 @@ + + - + + + + + + \ No newline at end of file diff --git a/Source/DSPTool/DSPTool.vcxproj b/Source/DSPTool/DSPTool.vcxproj index 3cfb41b5fc..953dbe80d3 100644 --- a/Source/DSPTool/DSPTool.vcxproj +++ b/Source/DSPTool/DSPTool.vcxproj @@ -4,6 +4,7 @@ {1970D175-3DE8-4738-942A-4D98D1CDBF64} + 10.0.22621.0 diff --git a/Source/DSPTool/DSPTool.vcxproj.filters b/Source/DSPTool/DSPTool.vcxproj.filters index d5c714c943..f7ce39d1b7 100644 --- a/Source/DSPTool/DSPTool.vcxproj.filters +++ b/Source/DSPTool/DSPTool.vcxproj.filters @@ -5,20 +5,6 @@ {0b70242b-1d98-432f-a60e-d4ca0674852e} - - - TestData - - - TestData - - - TestData - - - TestData - - diff --git a/Source/PCH/pch.vcxproj b/Source/PCH/pch.vcxproj index 1ee60c60c0..10f2aaa8ab 100644 --- a/Source/PCH/pch.vcxproj +++ b/Source/PCH/pch.vcxproj @@ -4,6 +4,7 @@ {76563A7F-1011-4EAD-B667-7BB18D09568E} + 10.0.22621.0 diff --git a/Source/UnitTests/UnitTests.vcxproj b/Source/UnitTests/UnitTests.vcxproj index d48b0cc4ff..2fd5de77b3 100644 --- a/Source/UnitTests/UnitTests.vcxproj +++ b/Source/UnitTests/UnitTests.vcxproj @@ -4,6 +4,7 @@ {474661E7-C73A-43A6-AFEE-EE1EC433D49E} + 10.0.22621.0