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