From d4be3dbb3165d2729cfdd45c96dea1d1f888f25d Mon Sep 17 00:00:00 2001 From: Xphalnos <164882787+Xphalnos@users.noreply.github.com> Date: Thu, 22 Aug 2024 17:35:31 +0200 Subject: [PATCH] Lot of small fixes --- .gitmodules | 26 ++- CMakeLists.txt | 2 +- documents/Quickstart/1.png | Bin 52618 -> 0 bytes documents/changelog.txt | 60 +++-- documents/readme.txt | 35 --- externals/CMakeLists.txt | 5 - externals/discord-rpc | 1 - src/qt_gui/about_dialog.ui | 4 +- src/qt_gui/settings_dialog.ui | 205 ++++++------------ .../frontend/translate/flat_memory.cpp | 0 10 files changed, 127 insertions(+), 211 deletions(-) delete mode 100644 documents/Quickstart/1.png delete mode 100644 documents/readme.txt delete mode 160000 externals/discord-rpc delete mode 100644 src/shader_recompiler/frontend/translate/flat_memory.cpp diff --git a/.gitmodules b/.gitmodules index 60fb5fbbf0..9499658668 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,66 +1,84 @@ -[submodule "externals/discord-rpc"] - path = externals/discord-rpc - url = https://github.com/shadps4-emu/ext-discord-rpc.git [submodule "externals/cryptopp-cmake"] path = externals/cryptopp-cmake url = https://github.com/shadps4-emu/ext-cryptopp-cmake.git + shallow = true [submodule "externals/cryptopp"] path = externals/cryptopp url = https://github.com/shadps4-emu/ext-cryptopp.git + shallow = true [submodule "externals/cryptoppwin"] path = externals/cryptoppwin url = https://github.com/shadps4-emu/ext-cryptoppwin.git + shallow = true [submodule "externals/zlib-ng"] path = externals/zlib-ng url = https://github.com/shadps4-emu/ext-zlib-ng.git + shallow = true [submodule "externals/sdl3"] path = externals/sdl3 url = https://github.com/shadps4-emu/ext-SDL.git + shallow = true [submodule "externals/fmt"] path = externals/fmt url = https://github.com/shadps4-emu/ext-fmt.git + shallow = true [submodule "externals/vulkan-headers"] path = externals/vulkan-headers url = https://github.com/KhronosGroup/Vulkan-Headers.git + shallow = true [submodule "externals/vma"] path = externals/vma url = https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git + shallow = true [submodule "externals/glslang"] path = externals/glslang url = https://github.com/KhronosGroup/glslang.git + shallow = true [submodule "externals/robin-map"] path = externals/robin-map url = https://github.com/Tessil/robin-map.git + shallow = true [submodule "externals/xbyak"] path = externals/xbyak url = https://github.com/herumi/xbyak.git + shallow = true [submodule "externals/winpthreads"] path = externals/winpthreads url = https://github.com/shadps4-emu/winpthreads.git + shallow = true [submodule "externals/magic_enum"] path = externals/magic_enum url = https://github.com/Neargye/magic_enum.git + shallow = true [submodule "externals/toml11"] path = externals/toml11 url = https://github.com/ToruNiina/toml11.git + shallow = true [submodule "externals/zydis"] path = externals/zydis url = https://github.com/zyantific/zydis.git + shallow = true [submodule "externals/sirit"] path = externals/sirit url = https://github.com/shadps4-emu/sirit.git + shallow = true [submodule "externals/xxhash"] path = externals/xxhash url = https://github.com/Cyan4973/xxHash.git + shallow = true [submodule "externals/tracy"] path = externals/tracy url = https://github.com/shadps4-emu/tracy.git + shallow = true [submodule "externals/ext-boost"] path = externals/ext-boost url = https://github.com/shadps4-emu/ext-boost.git + shallow = true [submodule "externals/date"] path = externals/date url = https://github.com/HowardHinnant/date.git + shallow = true [submodule "externals/ffmpeg-core"] path = externals/ffmpeg-core - url = https://github.com/shadps4-emu/ext-ffmpeg-core + url = https://github.com/shadps4-emu/ext-ffmpeg-core.git + shallow = true \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 478fb43d1f..8e349e5885 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -262,6 +262,7 @@ set(NP_LIBS src/core/libraries/np_manager/np_manager.cpp src/core/libraries/np_trophy/np_trophy.cpp src/core/libraries/np_trophy/np_trophy.h ) + set(MISC_LIBS src/core/libraries/screenshot/screenshot.cpp src/core/libraries/screenshot/screenshot.h ) @@ -411,7 +412,6 @@ set(SHADER_RECOMPILER src/shader_recompiler/exception.h src/shader_recompiler/backend/spirv/spirv_emit_context.h src/shader_recompiler/frontend/translate/data_share.cpp src/shader_recompiler/frontend/translate/export.cpp - src/shader_recompiler/frontend/translate/flat_memory.cpp src/shader_recompiler/frontend/translate/scalar_alu.cpp src/shader_recompiler/frontend/translate/scalar_memory.cpp src/shader_recompiler/frontend/translate/translate.cpp diff --git a/documents/Quickstart/1.png b/documents/Quickstart/1.png deleted file mode 100644 index 6dc0ce2e39181b3f0d80305582dd0512705de998..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52618 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 +9=YJPx<_xscU5Q*-i|=V#%C&`wzL*YgOwk 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 true - - true - @@ -106,5 +103,6 @@ + diff --git a/src/qt_gui/settings_dialog.ui b/src/qt_gui/settings_dialog.ui index dbb15206e5..d11f177d11 100644 --- a/src/qt_gui/settings_dialog.ui +++ b/src/qt_gui/settings_dialog.ui @@ -51,8 +51,8 @@ 0 0 - 832 - 418 + 836 + 428 @@ -74,7 +74,7 @@ - + System @@ -112,28 +112,11 @@ - - + - - - - Qt::Orientation::Vertical - - - QSizePolicy::Policy::MinimumExpanding - - - - 0 - 0 - - - - @@ -148,35 +131,39 @@ - - - Enable Fullscreen - - - - - - - Show Splash - - - - - - - Is PS4 Pro - - + + + + + Enable Fullscreen + + + + + + + Show Splash + + + + + + + Is PS4 Pro + + + + - Qt::Orientation::Vertical + Qt::Orientation::Horizontal - 20 - 40 + 40 + 20 @@ -261,19 +248,6 @@ - - - - Qt::Orientation::Vertical - - - - 20 - 40 - - - - @@ -282,34 +256,29 @@ - - - - 0 - - - 0 - - - 0 - - - 0 - - - + + + Qt::Orientation::Vertical + + + + 20 + 40 + + + - + - GPU + Graphics - + - + - + @@ -323,8 +292,8 @@ - - + + 0 @@ -340,44 +309,10 @@ - - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - - - - Qt::Orientation::Vertical - - - QSizePolicy::Policy::MinimumExpanding - - - - 0 - 0 - - - - - + @@ -505,26 +440,10 @@ - - - - Qt::Orientation::Vertical - - - QSizePolicy::Policy::MinimumExpanding - - - - 0 - 0 - - - - - + 12 @@ -534,7 +453,7 @@ - Additional Settings + Advanced Qt::AlignmentFlag::AlignLeading|Qt::AlignmentFlag::AlignLeft|Qt::AlignmentFlag::AlignVCenter @@ -565,17 +484,14 @@ - + Qt::Orientation::Vertical - - QSizePolicy::Policy::MinimumExpanding - - 0 - 0 + 20 + 40 @@ -584,6 +500,19 @@ + + + + Qt::Orientation::Vertical + + + + 20 + 40 + + + + diff --git a/src/shader_recompiler/frontend/translate/flat_memory.cpp b/src/shader_recompiler/frontend/translate/flat_memory.cpp deleted file mode 100644 index e69de29bb2..0000000000