diff --git a/Externals/Bochs_disasm/Bochs_disasm.vcxproj b/Externals/Bochs_disasm/Bochs_disasm.vcxproj
index 10f241bf20..d62e238617 100644
--- a/Externals/Bochs_disasm/Bochs_disasm.vcxproj
+++ b/Externals/Bochs_disasm/Bochs_disasm.vcxproj
@@ -4,7 +4,7 @@
{8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/FatFs/FatFs.vcxproj b/Externals/FatFs/FatFs.vcxproj
index d586ddcf48..649a2f8df7 100644
--- a/Externals/FatFs/FatFs.vcxproj
+++ b/Externals/FatFs/FatFs.vcxproj
@@ -4,7 +4,7 @@
{3F17D282-A77D-4931-B844-903AD0809A5E}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/FreeSurround/FreeSurround.vcxproj b/Externals/FreeSurround/FreeSurround.vcxproj
index a2e54adafb..d84129694d 100644
--- a/Externals/FreeSurround/FreeSurround.vcxproj
+++ b/Externals/FreeSurround/FreeSurround.vcxproj
@@ -4,7 +4,7 @@
{8498F2FA-5CA6-4169-9971-DE5B1FE6132C}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/LZO/LZO.vcxproj b/Externals/LZO/LZO.vcxproj
index 9d0ed4574d..e5f16f60cb 100644
--- a/Externals/LZO/LZO.vcxproj
+++ b/Externals/LZO/LZO.vcxproj
@@ -4,7 +4,7 @@
{AB993F38-C31D-4897-B139-A620C42BC565}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/Qt b/Externals/Qt
index 495517af2b..376baafde6 160000
--- a/Externals/Qt
+++ b/Externals/Qt
@@ -1 +1 @@
-Subproject commit 495517af2b922c10c24f543e0fd6ea3ddf774e50
+Subproject commit 376baafde6cce2f8892c34c17ed397afa6c46d08
diff --git a/Externals/SDL/SDL2.vcxproj b/Externals/SDL/SDL2.vcxproj
index 52e246baa1..8622894d84 100644
--- a/Externals/SDL/SDL2.vcxproj
+++ b/Externals/SDL/SDL2.vcxproj
@@ -4,7 +4,7 @@
{8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/SFML/build/vc2010/SFML_Network.vcxproj b/Externals/SFML/build/vc2010/SFML_Network.vcxproj
index 08bf497b84..065921c55b 100644
--- a/Externals/SFML/build/vc2010/SFML_Network.vcxproj
+++ b/Externals/SFML/build/vc2010/SFML_Network.vcxproj
@@ -4,7 +4,7 @@
{93D73454-2512-424E-9CDA-4BB357FE13DD}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/bzip2/bzip2.vcxproj b/Externals/bzip2/bzip2.vcxproj
index 7fb314047d..1cd26e8e82 100644
--- a/Externals/bzip2/bzip2.vcxproj
+++ b/Externals/bzip2/bzip2.vcxproj
@@ -4,7 +4,7 @@
{1D8C51D2-FFA4-418E-B183-9F42B6A6717E}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/cpp-optparse/cpp-optparse.vcxproj b/Externals/cpp-optparse/cpp-optparse.vcxproj
index 102435c3cb..f5f01ec3b4 100644
--- a/Externals/cpp-optparse/cpp-optparse.vcxproj
+++ b/Externals/cpp-optparse/cpp-optparse.vcxproj
@@ -4,7 +4,7 @@
{C636D9D1-82FE-42B5-9987-63B7D4836341}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/cubeb/msvc/cubeb.vcxproj b/Externals/cubeb/msvc/cubeb.vcxproj
index 3b1d62b978..163e4ab273 100644
--- a/Externals/cubeb/msvc/cubeb.vcxproj
+++ b/Externals/cubeb/msvc/cubeb.vcxproj
@@ -4,7 +4,7 @@
{8EA11166-6512-44FC-B7A5-A4D1ECC81170}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/curl/curl.vcxproj b/Externals/curl/curl.vcxproj
index 0021ee03c2..72ce55a655 100644
--- a/Externals/curl/curl.vcxproj
+++ b/Externals/curl/curl.vcxproj
@@ -4,7 +4,7 @@
{BB00605C-125F-4A21-B33B-7BF418322DCB}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/discord-rpc/src/discord-rpc.vcxproj b/Externals/discord-rpc/src/discord-rpc.vcxproj
index 5b0ed91cc3..a1cbc617b6 100644
--- a/Externals/discord-rpc/src/discord-rpc.vcxproj
+++ b/Externals/discord-rpc/src/discord-rpc.vcxproj
@@ -4,7 +4,7 @@
{4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/ed25519/ed25519.vcxproj b/Externals/ed25519/ed25519.vcxproj
index da161291fb..8b9269f953 100644
--- a/Externals/ed25519/ed25519.vcxproj
+++ b/Externals/ed25519/ed25519.vcxproj
@@ -4,7 +4,7 @@
{5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/enet/enet.vcxproj b/Externals/enet/enet.vcxproj
index 58a5624300..569aa1e2c6 100644
--- a/Externals/enet/enet.vcxproj
+++ b/Externals/enet/enet.vcxproj
@@ -4,7 +4,7 @@
{CBC76802-C128-4B17-BF6C-23B08C313E5E}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/fmt/fmt.vcxproj b/Externals/fmt/fmt.vcxproj
index 52df4aae56..712b9a0e43 100644
--- a/Externals/fmt/fmt.vcxproj
+++ b/Externals/fmt/fmt.vcxproj
@@ -4,7 +4,7 @@
{4BC5A148-0AB3-440F-A980-A29B4B999190}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/glslang/glslang.vcxproj b/Externals/glslang/glslang.vcxproj
index c15a841a47..54337ff073 100644
--- a/Externals/glslang/glslang.vcxproj
+++ b/Externals/glslang/glslang.vcxproj
@@ -4,7 +4,7 @@
{D178061B-84D3-44F9-BEED-EFD18D9033F0}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/imgui/imgui.vcxproj b/Externals/imgui/imgui.vcxproj
index ee8b88e561..75bfaa1e23 100644
--- a/Externals/imgui/imgui.vcxproj
+++ b/Externals/imgui/imgui.vcxproj
@@ -4,7 +4,7 @@
{4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/implot/implot.vcxproj b/Externals/implot/implot.vcxproj
index 455000cf40..5d18eed348 100644
--- a/Externals/implot/implot.vcxproj
+++ b/Externals/implot/implot.vcxproj
@@ -4,7 +4,7 @@
{A608225E-AE0A-4D1A-9B55-97F57C862391}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/liblzma/liblzma.vcxproj b/Externals/liblzma/liblzma.vcxproj
index 8a9ecffa2a..3fb03c7d21 100644
--- a/Externals/liblzma/liblzma.vcxproj
+++ b/Externals/liblzma/liblzma.vcxproj
@@ -4,7 +4,7 @@
{055A775F-B4F5-4970-9240-F6CF7661F37B}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/libspng/spng.vcxproj b/Externals/libspng/spng.vcxproj
index be225fb8d5..3ff4259892 100644
--- a/Externals/libspng/spng.vcxproj
+++ b/Externals/libspng/spng.vcxproj
@@ -4,7 +4,7 @@
{447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/libusb/libusb-1.0.vcxproj b/Externals/libusb/libusb-1.0.vcxproj
index f7fd1a33fa..e669471a62 100644
--- a/Externals/libusb/libusb-1.0.vcxproj
+++ b/Externals/libusb/libusb-1.0.vcxproj
@@ -4,7 +4,7 @@
{349EE8F9-7D25-4909-AAF5-FF3FADE72187}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/mGBA/mgba.vcxproj b/Externals/mGBA/mgba.vcxproj
index 8219fddf76..09c8087afe 100644
--- a/Externals/mGBA/mgba.vcxproj
+++ b/Externals/mGBA/mgba.vcxproj
@@ -4,7 +4,7 @@
{864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/mGBA/mgba.vcxproj.filters b/Externals/mGBA/mgba.vcxproj.filters
index f3080a18e7..0312c73774 100644
--- a/Externals/mGBA/mgba.vcxproj.filters
+++ b/Externals/mGBA/mgba.vcxproj.filters
@@ -283,9 +283,6 @@
Source Files
-
- Source Files
-
Source Files
@@ -298,9 +295,6 @@
Source Files
-
- Source Files
-
Source Files
@@ -430,6 +424,11 @@
Source Files
+
+
+
+
+
@@ -448,4 +447,4 @@
{37E5D4D5-B263-3B94-8968-21228F26DF67}
-
+
\ No newline at end of file
diff --git a/Externals/mbedtls/mbedTLS.vcxproj b/Externals/mbedtls/mbedTLS.vcxproj
index 518076413e..d070cfb2f7 100644
--- a/Externals/mbedtls/mbedTLS.vcxproj
+++ b/Externals/mbedtls/mbedTLS.vcxproj
@@ -4,7 +4,7 @@
{BDB6578B-0691-4E80-A46C-DF21639FD3B8}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/miniupnpc/miniupnpc.vcxproj b/Externals/miniupnpc/miniupnpc.vcxproj
index 62bc856faa..d5202d1acd 100644
--- a/Externals/miniupnpc/miniupnpc.vcxproj
+++ b/Externals/miniupnpc/miniupnpc.vcxproj
@@ -4,7 +4,7 @@
{31643FDB-1BB8-4965-9DE7-000FC88D35AE}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/minizip/minizip.vcxproj b/Externals/minizip/minizip.vcxproj
index 2901b381c0..fb8f76a71c 100644
--- a/Externals/minizip/minizip.vcxproj
+++ b/Externals/minizip/minizip.vcxproj
@@ -4,7 +4,7 @@
{23114507-079A-4418-9707-CFA81A03CA99}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/picojson/picojson.vcxproj b/Externals/picojson/picojson.vcxproj
index b4489c3192..b5e839ea3c 100644
--- a/Externals/picojson/picojson.vcxproj
+++ b/Externals/picojson/picojson.vcxproj
@@ -4,7 +4,7 @@
{2C0D058E-DE35-4471-AD99-E68A2CAF9E18}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/pugixml/pugixml.vcxproj b/Externals/pugixml/pugixml.vcxproj
index e2f5a58fa2..9aa2de8cfe 100644
--- a/Externals/pugixml/pugixml.vcxproj
+++ b/Externals/pugixml/pugixml.vcxproj
@@ -4,7 +4,7 @@
{38FEE76F-F347-484B-949C-B4649381CFFB}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/rcheevos/rcheevos.vcxproj b/Externals/rcheevos/rcheevos.vcxproj
index 599d4c6a3d..4218a5ce0b 100644
--- a/Externals/rcheevos/rcheevos.vcxproj
+++ b/Externals/rcheevos/rcheevos.vcxproj
@@ -4,7 +4,7 @@
{CC99A910-3752-4465-95AA-7DC240D92A99}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/soundtouch/SoundTouch.vcxproj b/Externals/soundtouch/SoundTouch.vcxproj
index 1dc0a3fd1b..78075430d3 100644
--- a/Externals/soundtouch/SoundTouch.vcxproj
+++ b/Externals/soundtouch/SoundTouch.vcxproj
@@ -4,7 +4,7 @@
{EC082900-B4D8-42E9-9663-77F02F6936AE}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/spirv_cross/spirv_cross.vcxproj b/Externals/spirv_cross/spirv_cross.vcxproj
index d830194d3f..8e71a5bb39 100644
--- a/Externals/spirv_cross/spirv_cross.vcxproj
+++ b/Externals/spirv_cross/spirv_cross.vcxproj
@@ -4,7 +4,7 @@
{3d780617-ec8c-4721-b9fd-dfc9bb658c7c}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/xxhash/xxhash.vcxproj b/Externals/xxhash/xxhash.vcxproj
index 2e11a57126..48f3cfcb08 100644
--- a/Externals/xxhash/xxhash.vcxproj
+++ b/Externals/xxhash/xxhash.vcxproj
@@ -4,7 +4,7 @@
{677EA016-1182-440C-9345-DC88D1E98C0C}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/zlib-ng/zlib-ng.vcxproj b/Externals/zlib-ng/zlib-ng.vcxproj
index fe32f8255b..83b046d3a6 100644
--- a/Externals/zlib-ng/zlib-ng.vcxproj
+++ b/Externals/zlib-ng/zlib-ng.vcxproj
@@ -4,7 +4,7 @@
{F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}
- 10.0.22621.0
+ 10.0
diff --git a/Externals/zstd/zstd.vcxproj b/Externals/zstd/zstd.vcxproj
index c3c1380925..fac2679eaf 100644
--- a/Externals/zstd/zstd.vcxproj
+++ b/Externals/zstd/zstd.vcxproj
@@ -4,7 +4,7 @@
{1BEA10F3-80CE-4BC4-9331-5769372CDF99}
- 10.0.22621.0
+ 10.0
diff --git a/Languages/Languages.vcxproj b/Languages/Languages.vcxproj
index 0c709b5567..c5ab4f721a 100644
--- a/Languages/Languages.vcxproj
+++ b/Languages/Languages.vcxproj
@@ -4,7 +4,7 @@
{0E033BE3-2E08-428E-9AE9-BC673EFA12B5}
- 10.0.22621.0
+ 10.0
diff --git a/Source/Core/Common/SCMRevGen.vcxproj b/Source/Core/Common/SCMRevGen.vcxproj
index fcf645dde8..48df66dd15 100644
--- a/Source/Core/Common/SCMRevGen.vcxproj
+++ b/Source/Core/Common/SCMRevGen.vcxproj
@@ -4,7 +4,7 @@
{41279555-F94F-4EBC-99DE-AF863C10C5C4}
- 10.0.22621.0
+ 10.0
diff --git a/Source/Core/DolphinLib.vcxproj b/Source/Core/DolphinLib.vcxproj
index 126848b090..8e53eb9f01 100644
--- a/Source/Core/DolphinLib.vcxproj
+++ b/Source/Core/DolphinLib.vcxproj
@@ -4,7 +4,7 @@
{d79392f7-06d6-4b4b-a39f-4d587c215d3a}
- 10.0.22621.0
+ 10.0
diff --git a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj b/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj
index 085eca2429..3d43e65be7 100644
--- a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj
+++ b/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj
@@ -4,7 +4,7 @@
{974E563D-23F8-4E8F-9083-F62876B04E08}
- 10.0.22621.0
+ 10.0
diff --git a/Source/Core/DolphinQt/DolphinQt.vcxproj b/Source/Core/DolphinQt/DolphinQt.vcxproj
index 2aeca5f5c6..86696fabac 100644
--- a/Source/Core/DolphinQt/DolphinQt.vcxproj
+++ b/Source/Core/DolphinQt/DolphinQt.vcxproj
@@ -5,7 +5,7 @@
{FA3FA62B-6F58-4B86-9453-4D149940A066}
Dolphin
- 10.0.22621.0
+ 10.0
@@ -473,4 +473,4 @@
-
+
\ No newline at end of file
diff --git a/Source/Core/DolphinTool/DolphinTool.vcxproj b/Source/Core/DolphinTool/DolphinTool.vcxproj
index 2523be7500..91573a071f 100644
--- a/Source/Core/DolphinTool/DolphinTool.vcxproj
+++ b/Source/Core/DolphinTool/DolphinTool.vcxproj
@@ -4,7 +4,7 @@
{8F91523C-5C5E-4B22-A1F1-67560B6DC714}
- 10.0.22621.0
+ 10.0
diff --git a/Source/Core/VideoCommon/HiresTextures.cpp b/Source/Core/VideoCommon/HiresTextures.cpp
index 6b7a64fa6b..27fc75ec4d 100644
--- a/Source/Core/VideoCommon/HiresTextures.cpp
+++ b/Source/Core/VideoCommon/HiresTextures.cpp
@@ -151,111 +151,9 @@ void HiresTexture::Update()
void HiresTexture::Clear()
{
- if (s_prefetcher.joinable())
- {
- s_textureCacheAbortLoading.Set();
- s_prefetcher.join();
- }
- s_textureMap.clear();
- s_textureCache.clear();
-}
-
-void HiresTexture::Prefetch()
-{
- Common::SetCurrentThreadName("Prefetcher");
-
- size_t size_sum = 0;
- const size_t sys_mem = Common::MemPhysical();
- const size_t recommended_min_mem = 2 * size_t(1024 * 1024 * 1024);
- // keep 2GB memory for system stability if system RAM is 4GB+ - use half of memory in other cases
- const size_t max_mem =
- (sys_mem / 2 < recommended_min_mem) ? (sys_mem / 2) : (sys_mem - recommended_min_mem);
-
- Common::Timer timer;
- timer.Start();
- for (const auto& entry : s_textureMap)
- {
- const std::string& base_filename = entry.first;
-
- if (base_filename.find("_mip") == std::string::npos)
- {
- std::unique_lock lk(s_textureCacheMutex);
-
- auto iter = s_textureCache.find(base_filename);
- if (iter == s_textureCache.end())
- {
- // unlock while loading a texture. This may result in a race condition where
- // we'll load a texture twice, but it reduces the stuttering a lot.
- lk.unlock();
- std::unique_ptr texture = Load(base_filename, 0, 0);
- lk.lock();
- if (texture)
- {
- std::shared_ptr ptr(std::move(texture));
- iter = s_textureCache.insert(iter, std::make_pair(base_filename, ptr));
- }
- }
- if (iter != s_textureCache.end())
- {
- for (const VideoCommon::CustomTextureData::Level& l : iter->second->m_data.m_levels)
- size_sum += l.data.size();
- }
- }
-
- if (s_textureCacheAbortLoading.IsSet())
- {
- return;
- }
-
- if (size_sum > max_mem)
- {
- Config::SetCurrent(Config::GFX_HIRES_TEXTURES, true);
-
- OSD::AddMessage(
- fmt::format(
- "Custom Textures prefetching after {:.1f} MB aborted, not enough RAM available",
- size_sum / (1024.0 * 1024.0)),
- 10000);
- return;
- }
- }
-
- OSD::AddMessage(fmt::format("Custom Textures loaded, {:.1f} MB in {:.1f}s",
- size_sum / (1024.0 * 1024.0), timer.ElapsedMs() / 1000.0),
- 10000);
-}
-
-std::string HiresTexture::GenBaseName(const TextureInfo& texture_info, bool dump)
-{
- if (!dump && s_textureMap.empty())
- return "";
-
- const auto texture_name_details = texture_info.CalculateTextureName();
-
- // look for an exact match first
- const std::string full_name = texture_name_details.GetFullName();
- if (dump || s_textureMap.find(full_name) != s_textureMap.end())
- return full_name;
-
- // else try and find a wildcard
- if (!dump)
- {
- // Single wildcard ignoring the tlut hash
- const std::string texture_name_single_wildcard_tlut =
- fmt::format("{}_{}_$_{}", texture_name_details.base_name, texture_name_details.texture_name,
- texture_name_details.format_name);
- if (s_textureMap.find(texture_name_single_wildcard_tlut) != s_textureMap.end())
- return texture_name_single_wildcard_tlut;
-
- // Single wildcard ignoring the texture hash
- const std::string texture_name_single_wildcard_tex =
- fmt::format("{}_${}_{}", texture_name_details.base_name, texture_name_details.tlut_name,
- texture_name_details.format_name);
- if (s_textureMap.find(texture_name_single_wildcard_tex) != s_textureMap.end())
- return texture_name_single_wildcard_tex;
- }
-
- return "";
+ s_hires_texture_cache.clear();
+ s_hires_texture_id_to_arbmipmap.clear();
+ s_file_library = std::make_shared();
}
std::shared_ptr HiresTexture::Search(const TextureInfo& texture_info)
diff --git a/Source/Core/WinUpdater/WinUpdater.vcxproj b/Source/Core/WinUpdater/WinUpdater.vcxproj
index 227a1a97ed..2234d7d7b5 100644
--- a/Source/Core/WinUpdater/WinUpdater.vcxproj
+++ b/Source/Core/WinUpdater/WinUpdater.vcxproj
@@ -4,7 +4,7 @@
{E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}
- 10.0.22621.0
+ 10.0
diff --git a/Source/DSPTool/DSPTool.vcxproj b/Source/DSPTool/DSPTool.vcxproj
index 953dbe80d3..40ae1c2603 100644
--- a/Source/DSPTool/DSPTool.vcxproj
+++ b/Source/DSPTool/DSPTool.vcxproj
@@ -4,7 +4,7 @@
{1970D175-3DE8-4738-942A-4D98D1CDBF64}
- 10.0.22621.0
+ 10.0
diff --git a/Source/PCH/pch.vcxproj b/Source/PCH/pch.vcxproj
index 10f2aaa8ab..1ab68336a7 100644
--- a/Source/PCH/pch.vcxproj
+++ b/Source/PCH/pch.vcxproj
@@ -4,7 +4,7 @@
{76563A7F-1011-4EAD-B667-7BB18D09568E}
- 10.0.22621.0
+ 10.0
diff --git a/Source/UnitTests/UnitTests.vcxproj b/Source/UnitTests/UnitTests.vcxproj
index 2fd5de77b3..d2bbe5b2c6 100644
--- a/Source/UnitTests/UnitTests.vcxproj
+++ b/Source/UnitTests/UnitTests.vcxproj
@@ -4,7 +4,7 @@
{474661E7-C73A-43A6-AFEE-EE1EC433D49E}
- 10.0.22621.0
+ 10.0