Update to latest branch

This commit is contained in:
Kawaii 2024-03-07 12:30:15 -06:00
parent 5a09e29c1c
commit b034086f38
125 changed files with 535 additions and 737 deletions

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <codecvt> #include <codecvt>
@ -659,7 +659,7 @@ void Java_org_yuzu_yuzu_1emu_NativeLibrary_submitInlineKeyboardInput(JNIEnv* env
void Java_org_yuzu_yuzu_1emu_NativeLibrary_initializeEmptyUserDirectory(JNIEnv* env, void Java_org_yuzu_yuzu_1emu_NativeLibrary_initializeEmptyUserDirectory(JNIEnv* env,
jobject instance) { jobject instance) {
const auto nand_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir); const auto nand_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir);
auto vfs_nand_dir = EmulationSession::GetInstance().System().GetFilesystem()->OpenDirectory( auto vfs_nand_dir = EmulationSession::GetInstance().System().GetFilesystem()->OpenDirectory(
Common::FS::PathToUTF8String(nand_dir), FileSys::OpenMode::Read); Common::FS::PathToUTF8String(nand_dir), FileSys::OpenMode::Read);
@ -831,7 +831,7 @@ jstring Java_org_yuzu_yuzu_1emu_NativeLibrary_getSavePath(JNIEnv* env, jobject j
const auto user_id = manager.GetUser(static_cast<std::size_t>(0)); const auto user_id = manager.GetUser(static_cast<std::size_t>(0));
ASSERT(user_id); ASSERT(user_id);
const auto nandDir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir); const auto nandDir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir);
auto vfsNandDir = system.GetFilesystem()->OpenDirectory(Common::FS::PathToUTF8String(nandDir), auto vfsNandDir = system.GetFilesystem()->OpenDirectory(Common::FS::PathToUTF8String(nandDir),
FileSys::OpenMode::Read); FileSys::OpenMode::Read);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project // SPDX-FileCopyrightText: 2024 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <common/fs/fs.h> #include <common/fs/fs.h>
@ -44,7 +44,7 @@ bool IsProfileNameValid(std::string_view profile_name) {
} }
bool ProfileExistsInFilesystem(std::string_view profile_name) { bool ProfileExistsInFilesystem(std::string_view profile_name) {
return Common::FS::Exists(Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir) / "input" / return Common::FS::Exists(Common::FS::GetSuyuPath(Common::FS::SuyuPath::ConfigDir) / "input" /
fmt::format("{}.ini", profile_name)); fmt::format("{}.ini", profile_name));
} }
@ -304,7 +304,7 @@ void Java_org_yuzu_yuzu_1emu_features_input_NativeInput_loadInputProfiles(JNIEnv
jobject j_obj) { jobject j_obj) {
map_profiles.clear(); map_profiles.clear();
const auto input_profile_loc = const auto input_profile_loc =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir) / "input"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::ConfigDir) / "input";
if (Common::FS::IsDir(input_profile_loc)) { if (Common::FS::IsDir(input_profile_loc)) {
Common::FS::IterateDirEntries( Common::FS::IterateDirEntries(

View File

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project # SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2024 suyu Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later # SPDX-License-Identifier: GPL-2.0-or-later
if (DEFINED ENV{AZURECIREPO}) if (DEFINED ENV{AZURECIREPO})
@ -161,8 +161,8 @@ add_library(common STATIC
zstd_compression.h zstd_compression.h
) )
if (YUZU_ENABLE_PORTABLE) if (SUYU_ENABLE_PORTABLE)
add_compile_definitions(YUZU_ENABLE_PORTABLE) add_compile_definitions(SUYU_ENABLE_PORTABLE)
endif() endif()
if (WIN32) if (WIN32)

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -109,11 +109,11 @@ __declspec(dllimport) void __stdcall DebugBreak(void);
return static_cast<T>(key) == 0; \ return static_cast<T>(key) == 0; \
} }
#define YUZU_NON_COPYABLE(cls) \ #define SUYU_NON_COPYABLE(cls) \
cls(const cls&) = delete; \ cls(const cls&) = delete; \
cls& operator=(const cls&) = delete cls& operator=(const cls&) = delete
#define YUZU_NON_MOVEABLE(cls) \ #define SUYU_NON_MOVEABLE(cls) \
cls(cls&&) = delete; \ cls(cls&&) = delete; \
cls& operator=(cls&&) = delete cls& operator=(cls&&) = delete

View File

@ -1,14 +1,14 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
// yuzu data directories // suyu data directories
#define YUZU_DIR "suyu" #define SUYU_DIR "suyu"
#define PORTABLE_DIR "user" #define PORTABLE_DIR "user"
// Sub-directories contained within a yuzu data directory // Sub-directories contained within a suyu data directory
#define AMIIBO_DIR "amiibo" #define AMIIBO_DIR "amiibo"
#define CACHE_DIR "cache" #define CACHE_DIR "cache"
@ -26,6 +26,6 @@
#define TAS_DIR "tas" #define TAS_DIR "tas"
#define ICONS_DIR "icons" #define ICONS_DIR "icons"
// yuzu-specific files // suyu-specific files
#define LOG_FILE "suyu_log.txt" #define LOG_FILE "suyu_log.txt"

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -56,10 +56,10 @@ namespace fs = std::filesystem;
/** /**
* The PathManagerImpl is a singleton allowing to manage the mapping of * The PathManagerImpl is a singleton allowing to manage the mapping of
* YuzuPath enums to real filesystem paths. * SuyuPath enums to real filesystem paths.
* This class provides 2 functions: GetYuzuPathImpl and SetYuzuPathImpl. * This class provides 2 functions: GetSuyuPathImpl and SetSuyuPathImpl.
* These are used by GetYuzuPath and SetYuzuPath respectively to get or modify * These are used by GetSuyuPath and SetSuyuPath respectively to get or modify
* the path mapped by the YuzuPath enum. * the path mapped by the SuyuPath enum.
*/ */
class PathManagerImpl { class PathManagerImpl {
public: public:
@ -75,62 +75,62 @@ public:
PathManagerImpl(PathManagerImpl&&) = delete; PathManagerImpl(PathManagerImpl&&) = delete;
PathManagerImpl& operator=(PathManagerImpl&&) = delete; PathManagerImpl& operator=(PathManagerImpl&&) = delete;
[[nodiscard]] const fs::path& GetYuzuPathImpl(YuzuPath yuzu_path) { [[nodiscard]] const fs::path& GetSuyuPathImpl(SuyuPath suyu_path) {
return yuzu_paths.at(yuzu_path); return suyu_paths.at(suyu_path);
} }
void SetYuzuPathImpl(YuzuPath yuzu_path, const fs::path& new_path) { void SetSuyuPathImpl(SuyuPath suyu_path, const fs::path& new_path) {
yuzu_paths.insert_or_assign(yuzu_path, new_path); suyu_paths.insert_or_assign(suyu_path, new_path);
} }
void Reinitialize(fs::path yuzu_path = {}) { void Reinitialize(fs::path suyu_path = {}) {
fs::path yuzu_path_cache; fs::path suyu_path_cache;
fs::path yuzu_path_config; fs::path suyu_path_config;
#ifdef _WIN32 #ifdef _WIN32
#ifdef YUZU_ENABLE_PORTABLE #ifdef SUYU_ENABLE_PORTABLE
yuzu_path = GetExeDirectory() / PORTABLE_DIR; suyu_path = GetExeDirectory() / PORTABLE_DIR;
#endif #endif
if (!IsDir(yuzu_path)) { if (!IsDir(suyu_path)) {
yuzu_path = GetAppDataRoamingDirectory() / YUZU_DIR; suyu_path = GetAppDataRoamingDirectory() / SUYU_DIR;
} }
yuzu_path_cache = yuzu_path / CACHE_DIR; suyu_path_cache = suyu_path / CACHE_DIR;
yuzu_path_config = yuzu_path / CONFIG_DIR; suyu_path_config = suyu_path / CONFIG_DIR;
#elif ANDROID #elif ANDROID
ASSERT(!yuzu_path.empty()); ASSERT(!suyu_path.empty());
yuzu_path_cache = yuzu_path / CACHE_DIR; suyu_path_cache = suyu_path / CACHE_DIR;
yuzu_path_config = yuzu_path / CONFIG_DIR; suyu_path_config = suyu_path / CONFIG_DIR;
#else #else
#ifdef YUZU_ENABLE_PORTABLE #ifdef SUYU_ENABLE_PORTABLE
yuzu_path = GetCurrentDir() / PORTABLE_DIR; suyu_path = GetCurrentDir() / PORTABLE_DIR;
#endif #endif
if (Exists(yuzu_path) && IsDir(yuzu_path)) { if (Exists(suyu_path) && IsDir(suyu_path)) {
yuzu_path_cache = yuzu_path / CACHE_DIR; suyu_path_cache = suyu_path / CACHE_DIR;
yuzu_path_config = yuzu_path / CONFIG_DIR; suyu_path_config = suyu_path / CONFIG_DIR;
} else { } else {
yuzu_path = GetDataDirectory("XDG_DATA_HOME") / YUZU_DIR; suyu_path = GetDataDirectory("XDG_DATA_HOME") / SUYU_DIR;
yuzu_path_cache = GetDataDirectory("XDG_CACHE_HOME") / YUZU_DIR; suyu_path_cache = GetDataDirectory("XDG_CACHE_HOME") / SUYU_DIR;
yuzu_path_config = GetDataDirectory("XDG_CONFIG_HOME") / YUZU_DIR; suyu_path_config = GetDataDirectory("XDG_CONFIG_HOME") / SUYU_DIR;
} }
#endif #endif
GenerateYuzuPath(YuzuPath::YuzuDir, yuzu_path); GenerateSuyuPath(SuyuPath::SuyuDir, suyu_path);
GenerateYuzuPath(YuzuPath::AmiiboDir, yuzu_path / AMIIBO_DIR); GenerateSuyuPath(SuyuPath::AmiiboDir, suyu_path / AMIIBO_DIR);
GenerateYuzuPath(YuzuPath::CacheDir, yuzu_path_cache); GenerateSuyuPath(SuyuPath::CacheDir, suyu_path_cache);
GenerateYuzuPath(YuzuPath::ConfigDir, yuzu_path_config); GenerateSuyuPath(SuyuPath::ConfigDir, suyu_path_config);
GenerateYuzuPath(YuzuPath::CrashDumpsDir, yuzu_path / CRASH_DUMPS_DIR); GenerateSuyuPath(SuyuPath::CrashDumpsDir, suyu_path / CRASH_DUMPS_DIR);
GenerateYuzuPath(YuzuPath::DumpDir, yuzu_path / DUMP_DIR); GenerateSuyuPath(SuyuPath::DumpDir, suyu_path / DUMP_DIR);
GenerateYuzuPath(YuzuPath::KeysDir, yuzu_path / KEYS_DIR); GenerateSuyuPath(SuyuPath::KeysDir, suyu_path / KEYS_DIR);
GenerateYuzuPath(YuzuPath::LoadDir, yuzu_path / LOAD_DIR); GenerateSuyuPath(SuyuPath::LoadDir, suyu_path / LOAD_DIR);
GenerateYuzuPath(YuzuPath::LogDir, yuzu_path / LOG_DIR); GenerateSuyuPath(SuyuPath::LogDir, suyu_path / LOG_DIR);
GenerateYuzuPath(YuzuPath::NANDDir, yuzu_path / NAND_DIR); GenerateSuyuPath(SuyuPath::NANDDir, suyu_path / NAND_DIR);
GenerateYuzuPath(YuzuPath::PlayTimeDir, yuzu_path / PLAY_TIME_DIR); GenerateSuyuPath(SuyuPath::PlayTimeDir, suyu_path / PLAY_TIME_DIR);
GenerateYuzuPath(YuzuPath::ScreenshotsDir, yuzu_path / SCREENSHOTS_DIR); GenerateSuyuPath(SuyuPath::ScreenshotsDir, suyu_path / SCREENSHOTS_DIR);
GenerateYuzuPath(YuzuPath::SDMCDir, yuzu_path / SDMC_DIR); GenerateSuyuPath(SuyuPath::SDMCDir, suyu_path / SDMC_DIR);
GenerateYuzuPath(YuzuPath::ShaderDir, yuzu_path / SHADER_DIR); GenerateSuyuPath(SuyuPath::ShaderDir, suyu_path / SHADER_DIR);
GenerateYuzuPath(YuzuPath::TASDir, yuzu_path / TAS_DIR); GenerateSuyuPath(SuyuPath::TASDir, suyu_path / TAS_DIR);
GenerateYuzuPath(YuzuPath::IconsDir, yuzu_path / ICONS_DIR); GenerateSuyuPath(SuyuPath::IconsDir, suyu_path / ICONS_DIR);
} }
private: private:
@ -140,13 +140,13 @@ private:
~PathManagerImpl() = default; ~PathManagerImpl() = default;
void GenerateYuzuPath(YuzuPath yuzu_path, const fs::path& new_path) { void GenerateSuyuPath(SuyuPath suyu_path, const fs::path& new_path) {
void(FS::CreateDir(new_path)); void(FS::CreateDir(new_path));
SetYuzuPathImpl(yuzu_path, new_path); SetSuyuPathImpl(suyu_path, new_path);
} }
std::unordered_map<YuzuPath, fs::path> yuzu_paths; std::unordered_map<SuyuPath, fs::path> suyu_paths;
}; };
bool ValidatePath(const fs::path& path) { bool ValidatePath(const fs::path& path) {
@ -230,22 +230,22 @@ void SetAppDirectory(const std::string& app_directory) {
PathManagerImpl::GetInstance().Reinitialize(app_directory); PathManagerImpl::GetInstance().Reinitialize(app_directory);
} }
const fs::path& GetYuzuPath(YuzuPath yuzu_path) { const fs::path& GetSuyuPath(SuyuPath suyu_path) {
return PathManagerImpl::GetInstance().GetYuzuPathImpl(yuzu_path); return PathManagerImpl::GetInstance().GetSuyuPathImpl(suyu_path);
} }
std::string GetYuzuPathString(YuzuPath yuzu_path) { std::string GetSuyuPathString(SuyuPath suyu_path) {
return PathToUTF8String(GetYuzuPath(yuzu_path)); return PathToUTF8String(GetSuyuPath(suyu_path));
} }
void SetYuzuPath(YuzuPath yuzu_path, const fs::path& new_path) { void SetSuyuPath(SuyuPath suyu_path, const fs::path& new_path) {
if (!FS::IsDir(new_path)) { if (!FS::IsDir(new_path)) {
LOG_ERROR(Common_Filesystem, "Filesystem object at new_path={} is not a directory", LOG_ERROR(Common_Filesystem, "Filesystem object at new_path={} is not a directory",
PathToUTF8String(new_path)); PathToUTF8String(new_path));
return; return;
} }
PathManagerImpl::GetInstance().SetYuzuPathImpl(yuzu_path, new_path); PathManagerImpl::GetInstance().SetSuyuPathImpl(suyu_path, new_path);
} }
#ifdef _WIN32 #ifdef _WIN32

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -10,8 +10,8 @@
namespace Common::FS { namespace Common::FS {
enum class YuzuPath { enum class SuyuPath {
YuzuDir, // Where yuzu stores its data. SuyuDir, // Where suyu stores its data.
AmiiboDir, // Where Amiibo backups are stored. AmiiboDir, // Where Amiibo backups are stored.
CacheDir, // Where cached filesystem data is stored. CacheDir, // Where cached filesystem data is stored.
ConfigDir, // Where config files are stored. ConfigDir, // Where config files are stored.
@ -22,7 +22,7 @@ enum class YuzuPath {
LogDir, // Where log files are stored. LogDir, // Where log files are stored.
NANDDir, // Where the emulated NAND is stored. NANDDir, // Where the emulated NAND is stored.
PlayTimeDir, // Where play time data is stored. PlayTimeDir, // Where play time data is stored.
ScreenshotsDir, // Where yuzu screenshots are stored. ScreenshotsDir, // Where suyu screenshots are stored.
SDMCDir, // Where the emulated SDMC is stored. SDMCDir, // Where the emulated SDMC is stored.
ShaderDir, // Where shaders are stored. ShaderDir, // Where shaders are stored.
TASDir, // Where TAS scripts are stored. TASDir, // Where TAS scripts are stored.
@ -193,39 +193,39 @@ template <typename Path>
void SetAppDirectory(const std::string& app_directory); void SetAppDirectory(const std::string& app_directory);
/** /**
* Gets the filesystem path associated with the YuzuPath enum. * Gets the filesystem path associated with the SuyuPath enum.
* *
* @param yuzu_path YuzuPath enum * @param suyu_path SuyuPath enum
* *
* @returns The filesystem path associated with the YuzuPath enum. * @returns The filesystem path associated with the SuyuPath enum.
*/ */
[[nodiscard]] const std::filesystem::path& GetYuzuPath(YuzuPath yuzu_path); [[nodiscard]] const std::filesystem::path& GetSuyuPath(SuyuPath suyu_path);
/** /**
* Gets the filesystem path associated with the YuzuPath enum as a UTF-8 encoded std::string. * Gets the filesystem path associated with the SuyuPath enum as a UTF-8 encoded std::string.
* *
* @param yuzu_path YuzuPath enum * @param suyu_path SuyuPath enum
* *
* @returns The filesystem path associated with the YuzuPath enum as a UTF-8 encoded std::string. * @returns The filesystem path associated with the SuyuPath enum as a UTF-8 encoded std::string.
*/ */
[[nodiscard]] std::string GetYuzuPathString(YuzuPath yuzu_path); [[nodiscard]] std::string GetSuyuPathString(SuyuPath suyu_path);
/** /**
* Sets a new filesystem path associated with the YuzuPath enum. * Sets a new filesystem path associated with the SuyuPath enum.
* If the filesystem object at new_path is not a directory, this function will not do anything. * If the filesystem object at new_path is not a directory, this function will not do anything.
* *
* @param yuzu_path YuzuPath enum * @param suyu_path SuyuPath enum
* @param new_path New filesystem path * @param new_path New filesystem path
*/ */
void SetYuzuPath(YuzuPath yuzu_path, const std::filesystem::path& new_path); void SetSuyuPath(SuyuPath suyu_path, const std::filesystem::path& new_path);
#ifdef _WIN32 #ifdef _WIN32
template <typename Path> template <typename Path>
void SetYuzuPath(YuzuPath yuzu_path, const Path& new_path) { void SetSuyuPath(SuyuPath suyu_path, const Path& new_path) {
if constexpr (IsChar<typename Path::value_type>) { if constexpr (IsChar<typename Path::value_type>) {
SetYuzuPath(yuzu_path, ToU8String(new_path)); SetSuyuPath(suyu_path, ToU8String(new_path));
} else { } else {
SetYuzuPath(yuzu_path, std::filesystem::path{new_path}); SetSuyuPath(suyu_path, std::filesystem::path{new_path});
} }
} }
#endif #endif
@ -257,14 +257,14 @@ void SetYuzuPath(YuzuPath yuzu_path, const Path& new_path) {
[[nodiscard]] std::filesystem::path GetHomeDirectory(); [[nodiscard]] std::filesystem::path GetHomeDirectory();
/** /**
* Gets the relevant paths for yuzu to store its data based on the given XDG environment variable. * Gets the relevant paths for suyu to store its data based on the given XDG environment variable.
* See https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html * See https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
* Defaults to $HOME/.local/share for main application data, * Defaults to $HOME/.local/share for main application data,
* $HOME/.cache for cached data, and $HOME/.config for configuration files. * $HOME/.cache for cached data, and $HOME/.config for configuration files.
* *
* @param env_name XDG environment variable name * @param env_name XDG environment variable name
* *
* @returns The path where yuzu should store its data. * @returns The path where suyu should store its data.
*/ */
[[nodiscard]] std::filesystem::path GetDataDirectory(const std::string& env_name); [[nodiscard]] std::filesystem::path GetDataDirectory(const std::string& env_name);
@ -288,11 +288,11 @@ enum class DirectorySeparator {
}; };
// Splits the path on '/' or '\' and put the components into a vector // Splits the path on '/' or '\' and put the components into a vector
// i.e. "C:\Users\Yuzu\Documents\save.bin" becomes {"C:", "Users", "Yuzu", "Documents", "save.bin" } // i.e. "C:\Users\Suyu\Documents\save.bin" becomes {"C:", "Users", "Suyu", "Documents", "save.bin" }
[[nodiscard]] std::vector<std::string_view> SplitPathComponents(std::string_view filename); [[nodiscard]] std::vector<std::string_view> SplitPathComponents(std::string_view filename);
// Splits the path on '/' or '\' and put the components into a vector // Splits the path on '/' or '\' and put the components into a vector
// i.e. "C:\Users\Yuzu\Documents\save.bin" becomes {"C:", "Users", "Yuzu", "Documents", "save.bin" } // i.e. "C:\Users\Suyu\Documents\save.bin" becomes {"C:", "Users", "Suyu", "Documents", "save.bin" }
[[nodiscard]] std::vector<std::string> SplitPathComponentsCopy(std::string_view filename); [[nodiscard]] std::vector<std::string> SplitPathComponentsCopy(std::string_view filename);
// Removes trailing slash, makes all '\\' into '/', and removes duplicate '/'. Makes '/' into '\\' // Removes trailing slash, makes all '\\' into '/', and removes duplicate '/'. Makes '/' into '\\'

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -16,7 +16,7 @@ class IntrusiveListImpl;
} }
class IntrusiveListNode { class IntrusiveListNode {
YUZU_NON_COPYABLE(IntrusiveListNode); SUYU_NON_COPYABLE(IntrusiveListNode);
private: private:
friend class impl::IntrusiveListImpl; friend class impl::IntrusiveListImpl;
@ -96,7 +96,7 @@ private:
namespace impl { namespace impl {
class IntrusiveListImpl { class IntrusiveListImpl {
YUZU_NON_COPYABLE(IntrusiveListImpl); SUYU_NON_COPYABLE(IntrusiveListImpl);
private: private:
IntrusiveListNode m_root_node; IntrusiveListNode m_root_node;
@ -302,7 +302,7 @@ private:
template <class T, class Traits> template <class T, class Traits>
class IntrusiveList { class IntrusiveList {
YUZU_NON_COPYABLE(IntrusiveList); SUYU_NON_COPYABLE(IntrusiveList);
private: private:
impl::IntrusiveListImpl m_impl; impl::IntrusiveListImpl m_impl;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -17,7 +17,7 @@ class IntrusiveRedBlackTreeImpl;
#pragma pack(push, 4) #pragma pack(push, 4)
struct IntrusiveRedBlackTreeNode { struct IntrusiveRedBlackTreeNode {
YUZU_NON_COPYABLE(IntrusiveRedBlackTreeNode); SUYU_NON_COPYABLE(IntrusiveRedBlackTreeNode);
public: public:
using RBEntry = freebsd::RBEntry<IntrusiveRedBlackTreeNode>; using RBEntry = freebsd::RBEntry<IntrusiveRedBlackTreeNode>;
@ -49,7 +49,7 @@ class IntrusiveRedBlackTree;
namespace impl { namespace impl {
class IntrusiveRedBlackTreeImpl { class IntrusiveRedBlackTreeImpl {
YUZU_NON_COPYABLE(IntrusiveRedBlackTreeImpl); SUYU_NON_COPYABLE(IntrusiveRedBlackTreeImpl);
private: private:
template <class, class, class> template <class, class, class>
@ -261,7 +261,7 @@ using RedBlackKeyType = std::remove_pointer_t<decltype(impl::GetRedBlackKeyType<
template <class T, class Traits, class Comparator> template <class T, class Traits, class Comparator>
class IntrusiveRedBlackTree { class IntrusiveRedBlackTree {
YUZU_NON_COPYABLE(IntrusiveRedBlackTree); SUYU_NON_COPYABLE(IntrusiveRedBlackTree);
public: public:
using ImplType = impl::IntrusiveRedBlackTreeImpl; using ImplType = impl::IntrusiveRedBlackTreeImpl;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <atomic> #include <atomic>
@ -195,7 +195,7 @@ public:
return; return;
} }
using namespace Common::FS; using namespace Common::FS;
const auto& log_dir = GetYuzuPath(YuzuPath::LogDir); const auto& log_dir = GetSuyuPath(SuyuPath::LogDir);
void(CreateDir(log_dir)); void(CreateDir(log_dir));
Filter filter; Filter filter;
filter.ParseFilterString(Settings::values.log_filter.GetValue()); filter.ParseFilterString(Settings::values.log_filter.GetValue());

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <cstdlib> #include <cstdlib>
@ -14,7 +14,7 @@ namespace Common {
void ConfigureNvidiaEnvironmentFlags() { void ConfigureNvidiaEnvironmentFlags() {
#ifdef _WIN32 #ifdef _WIN32
const auto nvidia_shader_dir = const auto nvidia_shader_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::ShaderDir) / "nvidia"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::ShaderDir) / "nvidia";
if (!Common::FS::CreateDirs(nvidia_shader_dir)) { if (!Common::FS::CreateDirs(nvidia_shader_dir)) {
return; return;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -9,7 +9,7 @@
namespace detail { namespace detail {
template <class F> template <class F>
class ScopeGuard { class ScopeGuard {
YUZU_NON_COPYABLE(ScopeGuard); SUYU_NON_COPYABLE(ScopeGuard);
private: private:
F f; F f;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <version> #include <version>
@ -130,11 +130,11 @@ void LogSettings() {
log_setting(name, setting->Canonicalize()); log_setting(name, setting->Canonicalize());
} }
} }
log_path("DataStorage_CacheDir", Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir)); log_path("DataStorage_CacheDir", Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir));
log_path("DataStorage_ConfigDir", Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir)); log_path("DataStorage_ConfigDir", Common::FS::GetSuyuPath(Common::FS::SuyuPath::ConfigDir));
log_path("DataStorage_LoadDir", Common::FS::GetYuzuPath(Common::FS::YuzuPath::LoadDir)); log_path("DataStorage_LoadDir", Common::FS::GetSuyuPath(Common::FS::SuyuPath::LoadDir));
log_path("DataStorage_NANDDir", Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir)); log_path("DataStorage_NANDDir", Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir));
log_path("DataStorage_SDMCDir", Common::FS::GetYuzuPath(Common::FS::YuzuPath::SDMCDir)); log_path("DataStorage_SDMCDir", Common::FS::GetSuyuPath(Common::FS::SuyuPath::SDMCDir));
} }
void UpdateGPUAccuracy() { void UpdateGPUAccuracy() {

View File

@ -1,6 +1,8 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// Modified by palfaiate on <2024/03/07>
#pragma once #pragma once
#include <algorithm> #include <algorithm>

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2017 Citra Emulator Project // SPDX-FileCopyrightText: 2017 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -52,7 +52,7 @@ public:
template <typename T> template <typename T>
class Field : public FieldInterface { class Field : public FieldInterface {
public: public:
YUZU_NON_COPYABLE(Field); SUYU_NON_COPYABLE(Field);
Field(FieldType type_, std::string_view name_, T value_) Field(FieldType type_, std::string_view name_, T value_)
: name(name_), type(type_), value(std::move(value_)) {} : name(name_), type(type_), value(std::move(value_)) {}
@ -101,7 +101,7 @@ private:
*/ */
class FieldCollection final { class FieldCollection final {
public: public:
YUZU_NON_COPYABLE(FieldCollection); SUYU_NON_COPYABLE(FieldCollection);
FieldCollection() = default; FieldCollection() = default;
~FieldCollection() = default; ~FieldCollection() = default;
@ -168,7 +168,7 @@ struct VisitorInterface {
* backend implementation is not available. * backend implementation is not available.
*/ */
struct NullVisitor final : public VisitorInterface { struct NullVisitor final : public VisitorInterface {
YUZU_NON_COPYABLE(NullVisitor); SUYU_NON_COPYABLE(NullVisitor);
NullVisitor() = default; NullVisitor() = default;
~NullVisitor() override = default; ~NullVisitor() override = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -47,8 +47,8 @@ enum class Architecture {
/// Generic ARMv8 CPU interface /// Generic ARMv8 CPU interface
class ArmInterface { class ArmInterface {
public: public:
YUZU_NON_COPYABLE(ArmInterface); SUYU_NON_COPYABLE(ArmInterface);
YUZU_NON_MOVEABLE(ArmInterface); SUYU_NON_MOVEABLE(ArmInterface);
explicit ArmInterface(bool uses_wall_clock) : m_uses_wall_clock{uses_wall_clock} {} explicit ArmInterface(bool uses_wall_clock) : m_uses_wall_clock{uses_wall_clock} {}
virtual ~ArmInterface() = default; virtual ~ArmInterface() = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -372,7 +372,7 @@ Key128 DeriveKeyblobMACKey(const Key128& keyblob_key, const Key128& mac_source)
std::optional<Key128> DeriveSDSeed() { std::optional<Key128> DeriveSDSeed() {
const auto system_save_43_path = const auto system_save_43_path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000043"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000043";
const Common::FS::IOFile save_43{system_save_43_path, Common::FS::FileAccessMode::Read, const Common::FS::IOFile save_43{system_save_43_path, Common::FS::FileAccessMode::Read,
Common::FS::FileType::BinaryFile}; Common::FS::FileType::BinaryFile};
@ -381,7 +381,7 @@ std::optional<Key128> DeriveSDSeed() {
} }
const auto sd_private_path = const auto sd_private_path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::SDMCDir) / "Nintendo/Contents/private"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::SDMCDir) / "Nintendo/Contents/private";
const Common::FS::IOFile sd_private{sd_private_path, Common::FS::FileAccessMode::Read, const Common::FS::IOFile sd_private{sd_private_path, Common::FS::FileAccessMode::Read,
Common::FS::FileType::BinaryFile}; Common::FS::FileType::BinaryFile};
@ -640,7 +640,7 @@ KeyManager::KeyManager() {
void KeyManager::ReloadKeys() { void KeyManager::ReloadKeys() {
// Initialize keys // Initialize keys
const auto yuzu_keys_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::KeysDir); const auto yuzu_keys_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::KeysDir);
if (!Common::FS::CreateDir(yuzu_keys_dir)) { if (!Common::FS::CreateDir(yuzu_keys_dir)) {
LOG_ERROR(Core, "Failed to create the keys directory."); LOG_ERROR(Core, "Failed to create the keys directory.");
@ -861,7 +861,7 @@ void KeyManager::SetKey(S256KeyType id, Key256 key, u64 field1, u64 field2) {
} }
bool KeyManager::KeyFileExists(bool title) { bool KeyManager::KeyFileExists(bool title) {
const auto yuzu_keys_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::KeysDir); const auto yuzu_keys_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::KeysDir);
if (title) { if (title) {
return Common::FS::Exists(yuzu_keys_dir / "title.keys"); return Common::FS::Exists(yuzu_keys_dir / "title.keys");
@ -1108,7 +1108,7 @@ void KeyManager::PopulateTickets() {
std::vector<Ticket> tickets; std::vector<Ticket> tickets;
const auto system_save_e1_path = const auto system_save_e1_path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/80000000000000e1"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/80000000000000e1";
if (Common::FS::Exists(system_save_e1_path)) { if (Common::FS::Exists(system_save_e1_path)) {
const Common::FS::IOFile save_e1{system_save_e1_path, Common::FS::FileAccessMode::Read, const Common::FS::IOFile save_e1{system_save_e1_path, Common::FS::FileAccessMode::Read,
Common::FS::FileType::BinaryFile}; Common::FS::FileType::BinaryFile};
@ -1117,7 +1117,7 @@ void KeyManager::PopulateTickets() {
} }
const auto system_save_e2_path = const auto system_save_e2_path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/80000000000000e2"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/80000000000000e2";
if (Common::FS::Exists(system_save_e2_path)) { if (Common::FS::Exists(system_save_e2_path)) {
const Common::FS::IOFile save_e2{system_save_e2_path, Common::FS::FileAccessMode::Read, const Common::FS::IOFile save_e2{system_save_e2_path, Common::FS::FileAccessMode::Read,
Common::FS::FileType::BinaryFile}; Common::FS::FileType::BinaryFile};

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <fmt/format.h> #include <fmt/format.h>
@ -83,7 +83,7 @@ VirtualFile BISFactory::OpenPartitionStorage(BisPartitionId id,
VirtualFilesystem file_system) const { VirtualFilesystem file_system) const {
auto& keys = Core::Crypto::KeyManager::Instance(); auto& keys = Core::Crypto::KeyManager::Instance();
Core::Crypto::PartitionDataManager pdm{file_system->OpenDirectory( Core::Crypto::PartitionDataManager pdm{file_system->OpenDirectory(
Common::FS::GetYuzuPathString(Common::FS::YuzuPath::NANDDir), OpenMode::Read)}; Common::FS::GetSuyuPathString(Common::FS::SuyuPath::NANDDir), OpenMode::Read)};
keys.PopulateFromPartitionData(pdm); keys.PopulateFromPartitionData(pdm);
switch (id) { switch (id) {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -15,8 +15,8 @@ namespace FileSys {
class DirectoryPathParser; class DirectoryPathParser;
class Path { class Path {
YUZU_NON_COPYABLE(Path); SUYU_NON_COPYABLE(Path);
YUZU_NON_MOVEABLE(Path); SUYU_NON_MOVEABLE(Path);
private: private:
static constexpr const char* EmptyPath = ""; static constexpr const char* EmptyPath = "";
@ -27,7 +27,7 @@ private:
public: public:
class WriteBuffer { class WriteBuffer {
YUZU_NON_COPYABLE(WriteBuffer); SUYU_NON_COPYABLE(WriteBuffer);
private: private:
char* m_buffer; char* m_buffer;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -14,8 +14,8 @@ namespace FileSys {
using namespace Common::Literals; using namespace Common::Literals;
class AesCtrCounterExtendedStorage : public IReadOnlyStorage { class AesCtrCounterExtendedStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(AesCtrCounterExtendedStorage); SUYU_NON_COPYABLE(AesCtrCounterExtendedStorage);
YUZU_NON_MOVEABLE(AesCtrCounterExtendedStorage); SUYU_NON_MOVEABLE(AesCtrCounterExtendedStorage);
public: public:
static constexpr size_t BlockSize = 0x10; static constexpr size_t BlockSize = 0x10;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -14,8 +14,8 @@
namespace FileSys { namespace FileSys {
class AesCtrStorage : public IStorage { class AesCtrStorage : public IStorage {
YUZU_NON_COPYABLE(AesCtrStorage); SUYU_NON_COPYABLE(AesCtrStorage);
YUZU_NON_MOVEABLE(AesCtrStorage); SUYU_NON_MOVEABLE(AesCtrStorage);
public: public:
static constexpr size_t BlockSize = 0x10; static constexpr size_t BlockSize = 0x10;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -13,8 +13,8 @@
namespace FileSys { namespace FileSys {
class AesXtsStorage : public IReadOnlyStorage { class AesXtsStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(AesXtsStorage); SUYU_NON_COPYABLE(AesXtsStorage);
YUZU_NON_MOVEABLE(AesXtsStorage); SUYU_NON_MOVEABLE(AesXtsStorage);
public: public:
static constexpr size_t AesBlockSize = 0x10; static constexpr size_t AesBlockSize = 0x10;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -13,8 +13,8 @@ namespace FileSys {
template <size_t DataAlign_, size_t BufferAlign_> template <size_t DataAlign_, size_t BufferAlign_>
class AlignmentMatchingStorage : public IStorage { class AlignmentMatchingStorage : public IStorage {
YUZU_NON_COPYABLE(AlignmentMatchingStorage); SUYU_NON_COPYABLE(AlignmentMatchingStorage);
YUZU_NON_MOVEABLE(AlignmentMatchingStorage); SUYU_NON_MOVEABLE(AlignmentMatchingStorage);
public: public:
static constexpr size_t DataAlign = DataAlign_; static constexpr size_t DataAlign = DataAlign_;
@ -77,8 +77,8 @@ public:
template <size_t BufferAlign_> template <size_t BufferAlign_>
class AlignmentMatchingStoragePooledBuffer : public IStorage { class AlignmentMatchingStoragePooledBuffer : public IStorage {
YUZU_NON_COPYABLE(AlignmentMatchingStoragePooledBuffer); SUYU_NON_COPYABLE(AlignmentMatchingStoragePooledBuffer);
YUZU_NON_MOVEABLE(AlignmentMatchingStoragePooledBuffer); SUYU_NON_MOVEABLE(AlignmentMatchingStoragePooledBuffer);
public: public:
static constexpr size_t BufferAlign = BufferAlign_; static constexpr size_t BufferAlign = BufferAlign_;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -18,8 +18,8 @@ namespace FileSys {
using namespace Common::Literals; using namespace Common::Literals;
class BucketTree { class BucketTree {
YUZU_NON_COPYABLE(BucketTree); SUYU_NON_COPYABLE(BucketTree);
YUZU_NON_MOVEABLE(BucketTree); SUYU_NON_MOVEABLE(BucketTree);
public: public:
static constexpr u32 Magic = Common::MakeMagic('B', 'K', 'T', 'R'); static constexpr u32 Magic = Common::MakeMagic('B', 'K', 'T', 'R');
@ -123,7 +123,7 @@ public:
private: private:
class NodeBuffer { class NodeBuffer {
YUZU_NON_COPYABLE(NodeBuffer); SUYU_NON_COPYABLE(NodeBuffer);
public: public:
NodeBuffer() : m_header() {} NodeBuffer() : m_header() {}
@ -330,8 +330,8 @@ private:
}; };
class BucketTree::Visitor { class BucketTree::Visitor {
YUZU_NON_COPYABLE(Visitor); SUYU_NON_COPYABLE(Visitor);
YUZU_NON_MOVEABLE(Visitor); SUYU_NON_MOVEABLE(Visitor);
public: public:
constexpr Visitor() constexpr Visitor()

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -17,8 +17,8 @@ namespace FileSys {
using namespace Common::Literals; using namespace Common::Literals;
class CompressedStorage : public IReadOnlyStorage { class CompressedStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(CompressedStorage); SUYU_NON_COPYABLE(CompressedStorage);
YUZU_NON_MOVEABLE(CompressedStorage); SUYU_NON_MOVEABLE(CompressedStorage);
public: public:
static constexpr size_t NodeSize = 16_KiB; static constexpr size_t NodeSize = 16_KiB;
@ -47,8 +47,8 @@ public:
private: private:
class CompressedStorageCore { class CompressedStorageCore {
YUZU_NON_COPYABLE(CompressedStorageCore); SUYU_NON_COPYABLE(CompressedStorageCore);
YUZU_NON_MOVEABLE(CompressedStorageCore); SUYU_NON_MOVEABLE(CompressedStorageCore);
public: public:
CompressedStorageCore() : m_table(), m_data_storage() {} CompressedStorageCore() : m_table(), m_data_storage() {}
@ -674,8 +674,8 @@ private:
}; };
class CacheManager { class CacheManager {
YUZU_NON_COPYABLE(CacheManager); SUYU_NON_COPYABLE(CacheManager);
YUZU_NON_MOVEABLE(CacheManager); SUYU_NON_MOVEABLE(CacheManager);
private: private:
struct AccessRange { struct AccessRange {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -57,8 +57,8 @@ struct HierarchicalIntegrityVerificationSizeSet {
static_assert(std::is_trivial_v<HierarchicalIntegrityVerificationSizeSet>); static_assert(std::is_trivial_v<HierarchicalIntegrityVerificationSizeSet>);
class HierarchicalIntegrityVerificationStorage : public IReadOnlyStorage { class HierarchicalIntegrityVerificationStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(HierarchicalIntegrityVerificationStorage); SUYU_NON_COPYABLE(HierarchicalIntegrityVerificationStorage);
YUZU_NON_MOVEABLE(HierarchicalIntegrityVerificationStorage); SUYU_NON_MOVEABLE(HierarchicalIntegrityVerificationStorage);
public: public:
using GenerateRandomFunction = void (*)(void* dst, size_t size); using GenerateRandomFunction = void (*)(void* dst, size_t size);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -12,8 +12,8 @@
namespace FileSys { namespace FileSys {
class HierarchicalSha256Storage : public IReadOnlyStorage { class HierarchicalSha256Storage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(HierarchicalSha256Storage); SUYU_NON_COPYABLE(HierarchicalSha256Storage);
YUZU_NON_MOVEABLE(HierarchicalSha256Storage); SUYU_NON_MOVEABLE(HierarchicalSha256Storage);
public: public:
static constexpr s32 LayerCount = 3; static constexpr s32 LayerCount = 3;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -13,8 +13,8 @@
namespace FileSys { namespace FileSys {
class IndirectStorage : public IReadOnlyStorage { class IndirectStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(IndirectStorage); SUYU_NON_COPYABLE(IndirectStorage);
YUZU_NON_MOVEABLE(IndirectStorage); SUYU_NON_MOVEABLE(IndirectStorage);
public: public:
static constexpr s32 StorageCount = 2; static constexpr s32 StorageCount = 2;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -11,8 +11,8 @@
namespace FileSys { namespace FileSys {
class IntegrityVerificationStorage : public IReadOnlyStorage { class IntegrityVerificationStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(IntegrityVerificationStorage); SUYU_NON_COPYABLE(IntegrityVerificationStorage);
YUZU_NON_MOVEABLE(IntegrityVerificationStorage); SUYU_NON_MOVEABLE(IntegrityVerificationStorage);
public: public:
static constexpr s64 HashSize = 256 / 8; static constexpr s64 HashSize = 256 / 8;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -8,8 +8,8 @@
namespace FileSys { namespace FileSys {
class MemoryResourceBufferHoldStorage : public IStorage { class MemoryResourceBufferHoldStorage : public IStorage {
YUZU_NON_COPYABLE(MemoryResourceBufferHoldStorage); SUYU_NON_COPYABLE(MemoryResourceBufferHoldStorage);
YUZU_NON_MOVEABLE(MemoryResourceBufferHoldStorage); SUYU_NON_MOVEABLE(MemoryResourceBufferHoldStorage);
public: public:
MemoryResourceBufferHoldStorage(VirtualFile storage, size_t buffer_size) MemoryResourceBufferHoldStorage(VirtualFile storage, size_t buffer_size)

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include "core/file_sys/fssystem/fssystem_aes_ctr_counter_extended_storage.h" #include "core/file_sys/fssystem/fssystem_aes_ctr_counter_extended_storage.h"
@ -28,8 +28,8 @@ constexpr inline s32 IntegrityDataCacheCountForMeta = 16;
constexpr inline s32 IntegrityHashCacheCountForMeta = 2; constexpr inline s32 IntegrityHashCacheCountForMeta = 2;
class SharedNcaBodyStorage : public IReadOnlyStorage { class SharedNcaBodyStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(SharedNcaBodyStorage); SUYU_NON_COPYABLE(SharedNcaBodyStorage);
YUZU_NON_MOVEABLE(SharedNcaBodyStorage); SUYU_NON_MOVEABLE(SharedNcaBodyStorage);
private: private:
VirtualFile m_storage; VirtualFile m_storage;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -88,8 +88,8 @@ constexpr inline s32 GetKeyTypeValue(u8 key_index, u8 key_generation) {
} }
class NcaReader { class NcaReader {
YUZU_NON_COPYABLE(NcaReader); SUYU_NON_COPYABLE(NcaReader);
YUZU_NON_MOVEABLE(NcaReader); SUYU_NON_MOVEABLE(NcaReader);
public: public:
NcaReader(); NcaReader();
@ -154,8 +154,8 @@ private:
}; };
class NcaFsHeaderReader { class NcaFsHeaderReader {
YUZU_NON_COPYABLE(NcaFsHeaderReader); SUYU_NON_COPYABLE(NcaFsHeaderReader);
YUZU_NON_MOVEABLE(NcaFsHeaderReader); SUYU_NON_MOVEABLE(NcaFsHeaderReader);
public: public:
NcaFsHeaderReader() : m_fs_index(-1) { NcaFsHeaderReader() : m_fs_index(-1) {
@ -207,8 +207,8 @@ private:
}; };
class NcaFileSystemDriver { class NcaFileSystemDriver {
YUZU_NON_COPYABLE(NcaFileSystemDriver); SUYU_NON_COPYABLE(NcaFileSystemDriver);
YUZU_NON_MOVEABLE(NcaFileSystemDriver); SUYU_NON_MOVEABLE(NcaFileSystemDriver);
public: public:
struct StorageContext { struct StorageContext {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -16,7 +16,7 @@ constexpr inline size_t BufferPoolAlignment = 4_KiB;
constexpr inline size_t BufferPoolWorkSize = 320; constexpr inline size_t BufferPoolWorkSize = 320;
class PooledBuffer { class PooledBuffer {
YUZU_NON_COPYABLE(PooledBuffer); SUYU_NON_COPYABLE(PooledBuffer);
public: public:
// Constructor/Destructor. // Constructor/Destructor.

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -8,8 +8,8 @@
namespace FileSys { namespace FileSys {
class SparseStorage : public IndirectStorage { class SparseStorage : public IndirectStorage {
YUZU_NON_COPYABLE(SparseStorage); SUYU_NON_COPYABLE(SparseStorage);
YUZU_NON_MOVEABLE(SparseStorage); SUYU_NON_MOVEABLE(SparseStorage);
private: private:
class ZeroStorage : public IReadOnlyStorage { class ZeroStorage : public IReadOnlyStorage {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -8,8 +8,8 @@
namespace FileSys { namespace FileSys {
class RegionSwitchStorage : public IReadOnlyStorage { class RegionSwitchStorage : public IReadOnlyStorage {
YUZU_NON_COPYABLE(RegionSwitchStorage); SUYU_NON_COPYABLE(RegionSwitchStorage);
YUZU_NON_MOVEABLE(RegionSwitchStorage); SUYU_NON_MOVEABLE(RegionSwitchStorage);
public: public:
struct Region { struct Region {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -30,8 +30,8 @@ enum class VfsEntryType {
// functionality, they will need to override. // functionality, they will need to override.
class VfsFilesystem { class VfsFilesystem {
public: public:
YUZU_NON_COPYABLE(VfsFilesystem); SUYU_NON_COPYABLE(VfsFilesystem);
YUZU_NON_MOVEABLE(VfsFilesystem); SUYU_NON_MOVEABLE(VfsFilesystem);
explicit VfsFilesystem(VirtualDir root); explicit VfsFilesystem(VirtualDir root);
virtual ~VfsFilesystem(); virtual ~VfsFilesystem();
@ -81,8 +81,8 @@ protected:
// A class representing a file in an abstract filesystem. // A class representing a file in an abstract filesystem.
class VfsFile { class VfsFile {
public: public:
YUZU_NON_COPYABLE(VfsFile); SUYU_NON_COPYABLE(VfsFile);
YUZU_NON_MOVEABLE(VfsFile); SUYU_NON_MOVEABLE(VfsFile);
VfsFile() = default; VfsFile() = default;
virtual ~VfsFile(); virtual ~VfsFile();
@ -184,8 +184,8 @@ public:
// A class representing a directory in an abstract filesystem. // A class representing a directory in an abstract filesystem.
class VfsDirectory { class VfsDirectory {
public: public:
YUZU_NON_COPYABLE(VfsDirectory); SUYU_NON_COPYABLE(VfsDirectory);
YUZU_NON_MOVEABLE(VfsDirectory); SUYU_NON_MOVEABLE(VfsDirectory);
VfsDirectory() = default; VfsDirectory() = default;
virtual ~VfsDirectory(); virtual ~VfsDirectory();

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -27,8 +27,8 @@ private:
static constexpr inline ClassTokenType ClassToken() { return ::Kernel::ClassToken<CLASS>; } \ static constexpr inline ClassTokenType ClassToken() { return ::Kernel::ClassToken<CLASS>; } \
\ \
public: \ public: \
YUZU_NON_COPYABLE(CLASS); \ SUYU_NON_COPYABLE(CLASS); \
YUZU_NON_MOVEABLE(CLASS); \ SUYU_NON_MOVEABLE(CLASS); \
\ \
using BaseClass = BASE_CLASS; \ using BaseClass = BASE_CLASS; \
static constexpr TypeObj GetStaticTypeObj() { \ static constexpr TypeObj GetStaticTypeObj() { \
@ -211,7 +211,7 @@ private:
template <typename T> template <typename T>
class KScopedAutoObject { class KScopedAutoObject {
public: public:
YUZU_NON_COPYABLE(KScopedAutoObject); SUYU_NON_COPYABLE(KScopedAutoObject);
constexpr KScopedAutoObject() = default; constexpr KScopedAutoObject() = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -16,8 +16,8 @@ class KProcess;
class KAutoObjectWithListContainer { class KAutoObjectWithListContainer {
public: public:
YUZU_NON_COPYABLE(KAutoObjectWithListContainer); SUYU_NON_COPYABLE(KAutoObjectWithListContainer);
YUZU_NON_MOVEABLE(KAutoObjectWithListContainer); SUYU_NON_MOVEABLE(KAutoObjectWithListContainer);
using ListType = boost::intrusive::rbtree<KAutoObjectWithList>; using ListType = boost::intrusive::rbtree<KAutoObjectWithList>;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -12,8 +12,8 @@ namespace Kernel {
template <typename T, bool ClearNode = false> template <typename T, bool ClearNode = false>
class KDynamicResourceManager { class KDynamicResourceManager {
YUZU_NON_COPYABLE(KDynamicResourceManager); SUYU_NON_COPYABLE(KDynamicResourceManager);
YUZU_NON_MOVEABLE(KDynamicResourceManager); SUYU_NON_MOVEABLE(KDynamicResourceManager);
public: public:
using DynamicSlabType = KDynamicSlabHeap<T, ClearNode>; using DynamicSlabType = KDynamicSlabHeap<T, ClearNode>;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -13,8 +13,8 @@ namespace Kernel {
template <typename T, bool ClearNode = false> template <typename T, bool ClearNode = false>
class KDynamicSlabHeap : protected impl::KSlabHeapImpl { class KDynamicSlabHeap : protected impl::KSlabHeapImpl {
YUZU_NON_COPYABLE(KDynamicSlabHeap); SUYU_NON_COPYABLE(KDynamicSlabHeap);
YUZU_NON_MOVEABLE(KDynamicSlabHeap); SUYU_NON_MOVEABLE(KDynamicSlabHeap);
public: public:
constexpr KDynamicSlabHeap() = default; constexpr KDynamicSlabHeap() = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -21,8 +21,8 @@ namespace Kernel {
class KernelCore; class KernelCore;
class KHandleTable { class KHandleTable {
YUZU_NON_COPYABLE(KHandleTable); SUYU_NON_COPYABLE(KHandleTable);
YUZU_NON_MOVEABLE(KHandleTable); SUYU_NON_MOVEABLE(KHandleTable);
public: public:
static constexpr size_t MaxTableSize = 1024; static constexpr size_t MaxTableSize = 1024;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -17,8 +17,8 @@ class KMemoryRegion final : public Common::IntrusiveRedBlackTreeBaseNode<KMemory
friend class KMemoryRegionTree; friend class KMemoryRegionTree;
public: public:
YUZU_NON_COPYABLE(KMemoryRegion); SUYU_NON_COPYABLE(KMemoryRegion);
YUZU_NON_MOVEABLE(KMemoryRegion); SUYU_NON_MOVEABLE(KMemoryRegion);
constexpr KMemoryRegion() = default; constexpr KMemoryRegion() = default;
constexpr KMemoryRegion(u64 address, u64 last_address) constexpr KMemoryRegion(u64 address, u64 last_address)
@ -123,8 +123,8 @@ private:
Common::IntrusiveRedBlackTreeBaseTraits<KMemoryRegion>::TreeType<KMemoryRegion>; Common::IntrusiveRedBlackTreeBaseTraits<KMemoryRegion>::TreeType<KMemoryRegion>;
public: public:
YUZU_NON_COPYABLE(KMemoryRegionTree); SUYU_NON_COPYABLE(KMemoryRegionTree);
YUZU_NON_MOVEABLE(KMemoryRegionTree); SUYU_NON_MOVEABLE(KMemoryRegionTree);
using value_type = TreeType::value_type; using value_type = TreeType::value_type;
using size_type = TreeType::size_type; using size_type = TreeType::size_type;
@ -327,8 +327,8 @@ private:
class KMemoryRegionAllocator final { class KMemoryRegionAllocator final {
public: public:
YUZU_NON_COPYABLE(KMemoryRegionAllocator); SUYU_NON_COPYABLE(KMemoryRegionAllocator);
YUZU_NON_MOVEABLE(KMemoryRegionAllocator); SUYU_NON_MOVEABLE(KMemoryRegionAllocator);
static constexpr size_t MaxMemoryRegions = 200; static constexpr size_t MaxMemoryRegions = 200;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include "common/scope_exit.h" #include "common/scope_exit.h"
@ -14,8 +14,8 @@ namespace Kernel {
namespace { namespace {
class KScopedLightLockPair { class KScopedLightLockPair {
YUZU_NON_COPYABLE(KScopedLightLockPair); SUYU_NON_COPYABLE(KScopedLightLockPair);
YUZU_NON_MOVEABLE(KScopedLightLockPair); SUYU_NON_MOVEABLE(KScopedLightLockPair);
private: private:
KLightLock* m_lower; KLightLock* m_lower;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -49,8 +49,8 @@ class KResourceLimit;
class KSystemResource; class KSystemResource;
class KPageTableBase { class KPageTableBase {
YUZU_NON_COPYABLE(KPageTableBase); SUYU_NON_COPYABLE(KPageTableBase);
YUZU_NON_MOVEABLE(KPageTableBase); SUYU_NON_MOVEABLE(KPageTableBase);
public: public:
using TraversalEntry = Common::PageTable::TraversalEntry; using TraversalEntry = Common::PageTable::TraversalEntry;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -33,8 +33,8 @@ class KScopedSchedulerLockAndSleep;
class KScheduler final { class KScheduler final {
public: public:
YUZU_NON_COPYABLE(KScheduler); SUYU_NON_COPYABLE(KScheduler);
YUZU_NON_MOVEABLE(KScheduler); SUYU_NON_MOVEABLE(KScheduler);
using LockType = KAbstractSchedulerLock<KScheduler>; using LockType = KAbstractSchedulerLock<KScheduler>;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -18,8 +18,8 @@ class KernelCore;
namespace impl { namespace impl {
class KSlabHeapImpl { class KSlabHeapImpl {
YUZU_NON_COPYABLE(KSlabHeapImpl); SUYU_NON_COPYABLE(KSlabHeapImpl);
YUZU_NON_MOVEABLE(KSlabHeapImpl); SUYU_NON_MOVEABLE(KSlabHeapImpl);
public: public:
struct Node { struct Node {
@ -72,8 +72,8 @@ private:
template <bool SupportDynamicExpansion> template <bool SupportDynamicExpansion>
class KSlabHeapBase : protected impl::KSlabHeapImpl { class KSlabHeapBase : protected impl::KSlabHeapImpl {
YUZU_NON_COPYABLE(KSlabHeapBase); SUYU_NON_COPYABLE(KSlabHeapBase);
YUZU_NON_MOVEABLE(KSlabHeapBase); SUYU_NON_MOVEABLE(KSlabHeapBase);
private: private:
size_t m_obj_size{}; size_t m_obj_size{};

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -14,8 +14,8 @@ class KSpinLock {
public: public:
explicit KSpinLock() = default; explicit KSpinLock() = default;
YUZU_NON_COPYABLE(KSpinLock); SUYU_NON_COPYABLE(KSpinLock);
YUZU_NON_MOVEABLE(KSpinLock); SUYU_NON_MOVEABLE(KSpinLock);
void Lock(); void Lock();
void Unlock(); void Unlock();

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -26,8 +26,8 @@ public:
PhysicalCore(KernelCore& kernel, std::size_t core_index); PhysicalCore(KernelCore& kernel, std::size_t core_index);
~PhysicalCore(); ~PhysicalCore();
YUZU_NON_COPYABLE(PhysicalCore); SUYU_NON_COPYABLE(PhysicalCore);
YUZU_NON_MOVEABLE(PhysicalCore); SUYU_NON_MOVEABLE(PhysicalCore);
// Execute guest code running on the given thread. // Execute guest code running on the given thread.
void RunThread(KThread* thread); void RunThread(KThread* thread);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -298,8 +298,8 @@ private:
namespace ResultImpl { namespace ResultImpl {
template <auto EvaluateResult, class F> template <auto EvaluateResult, class F>
class ScopedResultGuard { class ScopedResultGuard {
YUZU_NON_COPYABLE(ScopedResultGuard); SUYU_NON_COPYABLE(ScopedResultGuard);
YUZU_NON_MOVEABLE(ScopedResultGuard); SUYU_NON_MOVEABLE(ScopedResultGuard);
private: private:
Result& m_ref; Result& m_ref;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -36,7 +36,7 @@ namespace Service::Account {
constexpr std::size_t THUMBNAIL_SIZE = 0x24000; constexpr std::size_t THUMBNAIL_SIZE = 0x24000;
static std::filesystem::path GetImagePath(const Common::UUID& uuid) { static std::filesystem::path GetImagePath(const Common::UUID& uuid) {
return Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / return Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) /
fmt::format("system/save/8000000000000010/su/avators/{}.jpg", uuid.FormattedString()); fmt::format("system/save/8000000000000010/su/avators/{}.jpg", uuid.FormattedString());
} }

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <cstring> #include <cstring>
@ -377,7 +377,7 @@ bool ProfileManager::SetProfileBaseAndData(Common::UUID uuid, const ProfileBase&
} }
void ProfileManager::ParseUserSaveFile() { void ProfileManager::ParseUserSaveFile() {
const auto save_path(FS::GetYuzuPath(FS::YuzuPath::NANDDir) / ACC_SAVE_AVATORS_BASE_PATH / const auto save_path(FS::GetSuyuPath(FS::SuyuPath::NANDDir) / ACC_SAVE_AVATORS_BASE_PATH /
"profiles.dat"); "profiles.dat");
const FS::IOFile save(save_path, FS::FileAccessMode::Read, FS::FileType::BinaryFile); const FS::IOFile save(save_path, FS::FileAccessMode::Read, FS::FileType::BinaryFile);
@ -429,12 +429,12 @@ void ProfileManager::WriteUserSaveFile() {
}; };
} }
const auto raw_path(FS::GetYuzuPath(FS::YuzuPath::NANDDir) / "system/save/8000000000000010"); const auto raw_path(FS::GetSuyuPath(FS::SuyuPath::NANDDir) / "system/save/8000000000000010");
if (FS::IsFile(raw_path) && !FS::RemoveFile(raw_path)) { if (FS::IsFile(raw_path) && !FS::RemoveFile(raw_path)) {
return; return;
} }
const auto save_path(FS::GetYuzuPath(FS::YuzuPath::NANDDir) / ACC_SAVE_AVATORS_BASE_PATH / const auto save_path(FS::GetSuyuPath(FS::SuyuPath::NANDDir) / ACC_SAVE_AVATORS_BASE_PATH /
"profiles.dat"); "profiles.dat");
if (!FS::CreateParentDirs(save_path)) { if (!FS::CreateParentDirs(save_path)) {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include "common/assert.h" #include "common/assert.h"
@ -155,7 +155,7 @@ void ExtractSharedFonts(Core::System& system) {
"FontNintendoExtended2.ttf", "FontNintendoExtended2.ttf",
}; };
const auto fonts_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir) / "fonts"; const auto fonts_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir) / "fonts";
for (std::size_t i = 0; i < NS::SHARED_FONTS.size(); ++i) { for (std::size_t i = 0; i < NS::SHARED_FONTS.size(); ++i) {
const auto font_file_path = fonts_dir / DECRYPTED_SHARED_FONTS[i]; const auto font_file_path = fonts_dir / DECRYPTED_SHARED_FONTS[i];
@ -415,7 +415,7 @@ void WebBrowser::InitializeOffline() {
"system_data", "system_data",
}; };
offline_cache_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir) / offline_cache_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir) /
fmt::format("offline_web_applet_{}/{:016X}", fmt::format("offline_web_applet_{}/{:016X}",
RESOURCE_TYPES[static_cast<u32>(document_kind) - 1], title_id); RESOURCE_TYPES[static_cast<u32>(document_kind) - 1], title_id);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <sstream> #include <sstream>
@ -303,7 +303,7 @@ void AlbumManager::FindScreenshots() {
album_files.clear(); album_files.clear();
// TODO: Swap this with a blocking operation. // TODO: Swap this with a blocking operation.
const auto screenshots_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::ScreenshotsDir); const auto screenshots_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::ScreenshotsDir);
Common::FS::IterateDirEntries( Common::FS::IterateDirEntries(
screenshots_dir, screenshots_dir,
[this](const std::filesystem::path& full_path) { [this](const std::filesystem::path& full_path) {
@ -438,7 +438,7 @@ static void PNGToMemory(void* context, void* data, int len) {
Result AlbumManager::SaveImage(ApplicationAlbumEntry& out_entry, std::span<const u8> image, Result AlbumManager::SaveImage(ApplicationAlbumEntry& out_entry, std::span<const u8> image,
u64 title_id, const AlbumFileDateTime& date) const { u64 title_id, const AlbumFileDateTime& date) const {
const auto screenshot_path = const auto screenshot_path =
Common::FS::GetYuzuPathString(Common::FS::YuzuPath::ScreenshotsDir); Common::FS::GetSuyuPathString(Common::FS::SuyuPath::ScreenshotsDir);
const std::string formatted_date = const std::string formatted_date =
fmt::format("{:04}-{:02}-{:02}_{:02}-{:02}-{:02}-{:03}", date.year, date.month, date.day, fmt::format("{:04}-{:02}-{:02}_{:02}-{:02}-{:02}-{:03}", date.year, date.month, date.day,
date.hour, date.minute, date.second, 0); date.hour, date.minute, date.second, 0);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <utility> #include <utility>
@ -346,12 +346,12 @@ std::shared_ptr<SaveDataController> FileSystemController::OpenSaveDataController
std::shared_ptr<FileSys::SaveDataFactory> FileSystemController::CreateSaveDataFactory( std::shared_ptr<FileSys::SaveDataFactory> FileSystemController::CreateSaveDataFactory(
ProgramId program_id) { ProgramId program_id) {
using YuzuPath = Common::FS::YuzuPath; using SuyuPath = Common::FS::SuyuPath;
const auto rw_mode = FileSys::OpenMode::ReadWrite; const auto rw_mode = FileSys::OpenMode::ReadWrite;
auto vfs = system.GetFilesystem(); auto vfs = system.GetFilesystem();
const auto nand_directory = const auto nand_directory =
vfs->OpenDirectory(Common::FS::GetYuzuPathString(YuzuPath::NANDDir), rw_mode); vfs->OpenDirectory(Common::FS::GetSuyuPathString(SuyuPath::NANDDir), rw_mode);
return std::make_shared<FileSys::SaveDataFactory>(system, program_id, return std::make_shared<FileSys::SaveDataFactory>(system, program_id,
std::move(nand_directory)); std::move(nand_directory));
} }
@ -683,20 +683,20 @@ void FileSystemController::CreateFactories(FileSys::VfsFilesystem& vfs, bool ove
sdmc_factory = nullptr; sdmc_factory = nullptr;
} }
using YuzuPath = Common::FS::YuzuPath; using SuyuPath = Common::FS::SuyuPath;
const auto sdmc_dir_path = Common::FS::GetYuzuPath(YuzuPath::SDMCDir); const auto sdmc_dir_path = Common::FS::GetSuyuPath(SuyuPath::SDMCDir);
const auto sdmc_load_dir_path = sdmc_dir_path / "atmosphere/contents"; const auto sdmc_load_dir_path = sdmc_dir_path / "atmosphere/contents";
const auto rw_mode = FileSys::OpenMode::ReadWrite; const auto rw_mode = FileSys::OpenMode::ReadWrite;
auto nand_directory = auto nand_directory =
vfs.OpenDirectory(Common::FS::GetYuzuPathString(YuzuPath::NANDDir), rw_mode); vfs.OpenDirectory(Common::FS::GetSuyuPathString(SuyuPath::NANDDir), rw_mode);
auto sd_directory = vfs.OpenDirectory(Common::FS::PathToUTF8String(sdmc_dir_path), rw_mode); auto sd_directory = vfs.OpenDirectory(Common::FS::PathToUTF8String(sdmc_dir_path), rw_mode);
auto load_directory = vfs.OpenDirectory(Common::FS::GetYuzuPathString(YuzuPath::LoadDir), auto load_directory = vfs.OpenDirectory(Common::FS::GetSuyuPathString(SuyuPath::LoadDir),
FileSys::OpenMode::Read); FileSys::OpenMode::Read);
auto sd_load_directory = vfs.OpenDirectory(Common::FS::PathToUTF8String(sdmc_load_dir_path), auto sd_load_directory = vfs.OpenDirectory(Common::FS::PathToUTF8String(sdmc_load_dir_path),
FileSys::OpenMode::Read); FileSys::OpenMode::Read);
auto dump_directory = auto dump_directory =
vfs.OpenDirectory(Common::FS::GetYuzuPathString(YuzuPath::DumpDir), rw_mode); vfs.OpenDirectory(Common::FS::GetSuyuPathString(SuyuPath::DumpDir), rw_mode);
if (bis_factory == nullptr) { if (bis_factory == nullptr) {
bis_factory = std::make_unique<FileSys::BISFactory>( bis_factory = std::make_unique<FileSys::BISFactory>(

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -11,7 +11,7 @@ namespace Service::JIT {
class CodeMemory { class CodeMemory {
public: public:
YUZU_NON_COPYABLE(CodeMemory); SUYU_NON_COPYABLE(CodeMemory);
explicit CodeMemory() = default; explicit CodeMemory() = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include "common/assert.h" #include "common/assert.h"
@ -22,9 +22,9 @@ DatabaseManager::DatabaseManager() {}
Result DatabaseManager::MountSaveData() { Result DatabaseManager::MountSaveData() {
if (!is_save_data_mounted) { if (!is_save_data_mounted) {
system_save_dir = system_save_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000030"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000030";
if (is_test_db) { if (is_test_db) {
system_save_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / system_save_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) /
"system/save/8000000000000031"; "system/save/8000000000000031";
} }

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later // SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: Copyright 2017 socram8888/amiitool // SPDX-FileCopyrightText: Copyright 2017 socram8888/amiitool
@ -271,7 +271,7 @@ void Cipher(const DerivedKeys& keys, const NTAG215File& in_data, NTAG215File& ou
} }
bool LoadKeys(InternalKey& locked_secret, InternalKey& unfixed_info) { bool LoadKeys(InternalKey& locked_secret, InternalKey& unfixed_info) {
const auto yuzu_keys_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::KeysDir); const auto yuzu_keys_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::KeysDir);
const Common::FS::IOFile keys_file{yuzu_keys_dir / "key_retail.bin", const Common::FS::IOFile keys_file{yuzu_keys_dir / "key_retail.bin",
Common::FS::FileAccessMode::Read, Common::FS::FileAccessMode::Read,
@ -295,7 +295,7 @@ bool LoadKeys(InternalKey& locked_secret, InternalKey& unfixed_info) {
} }
bool IsKeyAvailable() { bool IsKeyAvailable() {
const auto yuzu_keys_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::KeysDir); const auto yuzu_keys_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::KeysDir);
return Common::FS::Exists(yuzu_keys_dir / "key_retail.bin"); return Common::FS::Exists(yuzu_keys_dir / "key_retail.bin");
} }

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include "core/hle/service/glue/time/static.h" #include "core/hle/service/glue/time/static.h"
@ -1261,7 +1261,7 @@ Result NfcDevice::BreakTag(NFP::BreakType break_type) {
Result NfcDevice::HasBackup(const UniqueSerialNumber& uid, std::size_t uuid_size) const { Result NfcDevice::HasBackup(const UniqueSerialNumber& uid, std::size_t uuid_size) const {
ASSERT_MSG(uuid_size < sizeof(UniqueSerialNumber), "Invalid UUID size"); ASSERT_MSG(uuid_size < sizeof(UniqueSerialNumber), "Invalid UUID size");
constexpr auto backup_dir = "backup"; constexpr auto backup_dir = "backup";
const auto yuzu_amiibo_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::AmiiboDir); const auto yuzu_amiibo_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::AmiiboDir);
const auto file_name = const auto file_name =
fmt::format("{0:02x}.bin", fmt::join(uid.begin(), uid.begin() + uuid_size, "")); fmt::format("{0:02x}.bin", fmt::join(uid.begin(), uid.begin() + uuid_size, ""));
@ -1282,7 +1282,7 @@ Result NfcDevice::ReadBackupData(const UniqueSerialNumber& uid, std::size_t uuid
std::span<u8> data) const { std::span<u8> data) const {
ASSERT_MSG(uuid_size < sizeof(UniqueSerialNumber), "Invalid UUID size"); ASSERT_MSG(uuid_size < sizeof(UniqueSerialNumber), "Invalid UUID size");
constexpr auto backup_dir = "backup"; constexpr auto backup_dir = "backup";
const auto yuzu_amiibo_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::AmiiboDir); const auto yuzu_amiibo_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::AmiiboDir);
const auto file_name = const auto file_name =
fmt::format("{0:02x}.bin", fmt::join(uid.begin(), uid.begin() + uuid_size, "")); fmt::format("{0:02x}.bin", fmt::join(uid.begin(), uid.begin() + uuid_size, ""));
@ -1313,7 +1313,7 @@ Result NfcDevice::WriteBackupData(const UniqueSerialNumber& uid, std::size_t uui
std::span<const u8> data) { std::span<const u8> data) {
ASSERT_MSG(uuid_size < sizeof(UniqueSerialNumber), "Invalid UUID size"); ASSERT_MSG(uuid_size < sizeof(UniqueSerialNumber), "Invalid UUID size");
constexpr auto backup_dir = "backup"; constexpr auto backup_dir = "backup";
const auto yuzu_amiibo_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::AmiiboDir); const auto yuzu_amiibo_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::AmiiboDir);
const auto file_name = const auto file_name =
fmt::format("{0:02x}.bin", fmt::join(uid.begin(), uid.begin() + uuid_size, "")); fmt::format("{0:02x}.bin", fmt::join(uid.begin(), uid.begin() + uuid_size, ""));

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <fstream> #include <fstream>
@ -1308,25 +1308,25 @@ Result ISystemSettingsServer::SetPanelCrcMode(s32 panel_crc_mode) {
void ISystemSettingsServer::SetupSettings() { void ISystemSettingsServer::SetupSettings() {
auto system_dir = auto system_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000050"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000050";
if (!LoadSettingsFile(system_dir, []() { return DefaultSystemSettings(); })) { if (!LoadSettingsFile(system_dir, []() { return DefaultSystemSettings(); })) {
ASSERT(false); ASSERT(false);
} }
auto private_dir = auto private_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000052"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000052";
if (!LoadSettingsFile(private_dir, []() { return DefaultPrivateSettings(); })) { if (!LoadSettingsFile(private_dir, []() { return DefaultPrivateSettings(); })) {
ASSERT(false); ASSERT(false);
} }
auto device_dir = auto device_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000053"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000053";
if (!LoadSettingsFile(device_dir, []() { return DefaultDeviceSettings(); })) { if (!LoadSettingsFile(device_dir, []() { return DefaultDeviceSettings(); })) {
ASSERT(false); ASSERT(false);
} }
auto appln_dir = auto appln_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000054"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000054";
if (!LoadSettingsFile(appln_dir, []() { return DefaultApplnSettings(); })) { if (!LoadSettingsFile(appln_dir, []() { return DefaultApplnSettings(); })) {
ASSERT(false); ASSERT(false);
} }
@ -1334,25 +1334,25 @@ void ISystemSettingsServer::SetupSettings() {
void ISystemSettingsServer::StoreSettings() { void ISystemSettingsServer::StoreSettings() {
auto system_dir = auto system_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000050"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000050";
if (!StoreSettingsFile(system_dir, m_system_settings)) { if (!StoreSettingsFile(system_dir, m_system_settings)) {
LOG_ERROR(Service_SET, "Failed to store System settings"); LOG_ERROR(Service_SET, "Failed to store System settings");
} }
auto private_dir = auto private_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000052"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000052";
if (!StoreSettingsFile(private_dir, m_private_settings)) { if (!StoreSettingsFile(private_dir, m_private_settings)) {
LOG_ERROR(Service_SET, "Failed to store Private settings"); LOG_ERROR(Service_SET, "Failed to store Private settings");
} }
auto device_dir = auto device_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000053"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000053";
if (!StoreSettingsFile(device_dir, m_device_settings)) { if (!StoreSettingsFile(device_dir, m_device_settings)) {
LOG_ERROR(Service_SET, "Failed to store Device settings"); LOG_ERROR(Service_SET, "Failed to store Device settings");
} }
auto appln_dir = auto appln_dir =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / "system/save/8000000000000054"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) / "system/save/8000000000000054";
if (!StoreSettingsFile(appln_dir, m_appln_settings)) { if (!StoreSettingsFile(appln_dir, m_appln_settings)) {
LOG_ERROR(Service_SET, "Failed to store ApplLn settings"); LOG_ERROR(Service_SET, "Failed to store ApplLn settings");
} }

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <mutex> #include <mutex>
@ -23,7 +23,7 @@ template <typename T>
struct CFReleaser { struct CFReleaser {
T ptr; T ptr;
YUZU_NON_COPYABLE(CFReleaser); SUYU_NON_COPYABLE(CFReleaser);
constexpr CFReleaser() : ptr(nullptr) {} constexpr CFReleaser() : ptr(nullptr) {}
constexpr CFReleaser(T ptr) : ptr(ptr) {} constexpr CFReleaser(T ptr) : ptr(ptr) {}
constexpr operator T() { constexpr operator T() {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -12,7 +12,7 @@
#ifdef _WIN32 #ifdef _WIN32
#include <winsock2.h> #include <winsock2.h>
#include <ws2tcpip.h> #include <ws2tcpip.h>
#elif YUZU_UNIX #elif SUYU_UNIX
#include <arpa/inet.h> #include <arpa/inet.h>
#include <errno.h> #include <errno.h>
#include <fcntl.h> #include <fcntl.h>
@ -77,7 +77,7 @@ SOCKET GetInterruptSocket() {
sockaddr TranslateFromSockAddrIn(SockAddrIn input) { sockaddr TranslateFromSockAddrIn(SockAddrIn input) {
sockaddr_in result; sockaddr_in result;
#if YUZU_UNIX #if SUYU_UNIX
result.sin_len = sizeof(result); result.sin_len = sizeof(result);
#endif #endif
@ -162,7 +162,7 @@ Errno TranslateNativeError(int e, CallType call_type = CallType::Other) {
} }
} }
#elif YUZU_UNIX // ^ _WIN32 v YUZU_UNIX #elif SUYU_UNIX // ^ _WIN32 v SUYU_UNIX
using SOCKET = int; using SOCKET = int;
using WSAPOLLFD = pollfd; using WSAPOLLFD = pollfd;
@ -835,7 +835,7 @@ std::pair<s32, Errno> Socket::Send(std::span<const u8> message, int flags) {
ASSERT(flags == 0); ASSERT(flags == 0);
int native_flags = 0; int native_flags = 0;
#if YUZU_UNIX #if SUYU_UNIX
native_flags |= MSG_NOSIGNAL; // do not send us SIGPIPE native_flags |= MSG_NOSIGNAL; // do not send us SIGPIPE
#endif #endif
const auto result = send(fd, reinterpret_cast<const char*>(message.data()), const auto result = send(fd, reinterpret_cast<const char*>(message.data()),

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -13,7 +13,7 @@
#ifdef _WIN32 #ifdef _WIN32
#include <winsock2.h> #include <winsock2.h>
#elif YUZU_UNIX #elif SUYU_UNIX
#include <netinet/in.h> #include <netinet/in.h>
#endif #endif
@ -104,7 +104,7 @@ constexpr IPv4Address TranslateIPv4(in_addr addr) {
auto& bytes = addr.S_un.S_un_b; auto& bytes = addr.S_un.S_un_b;
return IPv4Address{bytes.s_b1, bytes.s_b2, bytes.s_b3, bytes.s_b4}; return IPv4Address{bytes.s_b1, bytes.s_b2, bytes.s_b3, bytes.s_b4};
} }
#elif YUZU_UNIX #elif SUYU_UNIX
constexpr IPv4Address TranslateIPv4(in_addr addr) { constexpr IPv4Address TranslateIPv4(in_addr addr) {
const u32 bytes = addr.s_addr; const u32 bytes = addr.s_addr;
return IPv4Address{static_cast<u8>(bytes), static_cast<u8>(bytes >> 8), return IPv4Address{static_cast<u8>(bytes), static_cast<u8>(bytes >> 8),

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <chrono> #include <chrono>
@ -12,7 +12,7 @@
#include "core/internal_network/socket_proxy.h" #include "core/internal_network/socket_proxy.h"
#include "network/network.h" #include "network/network.h"
#if YUZU_UNIX #if SUYU_UNIX
#include <sys/socket.h> #include <sys/socket.h>
#endif #endif

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -9,7 +9,7 @@
#include <utility> #include <utility>
#if defined(_WIN32) #if defined(_WIN32)
#elif !YUZU_UNIX #elif !SUYU_UNIX
#error "Platform not implemented" #error "Platform not implemented"
#endif #endif
@ -24,7 +24,7 @@ struct ProxyPacket;
class SocketBase { class SocketBase {
public: public:
#ifdef YUZU_UNIX #ifdef SUYU_UNIX
using SOCKET = int; using SOCKET = int;
static constexpr SOCKET INVALID_SOCKET = -1; static constexpr SOCKET INVALID_SOCKET = -1;
static constexpr SOCKET SOCKET_ERROR = -1; static constexpr SOCKET SOCKET_ERROR = -1;
@ -39,8 +39,8 @@ public:
explicit SocketBase(SOCKET fd_) : fd{fd_} {} explicit SocketBase(SOCKET fd_) : fd{fd_} {}
virtual ~SocketBase() = default; virtual ~SocketBase() = default;
YUZU_NON_COPYABLE(SocketBase); SUYU_NON_COPYABLE(SocketBase);
YUZU_NON_MOVEABLE(SocketBase); SUYU_NON_MOVEABLE(SocketBase);
virtual Errno Initialize(Domain domain, Type type, Protocol protocol) = 0; virtual Errno Initialize(Domain domain, Type type, Protocol protocol) = 0;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -143,8 +143,8 @@ std::ostream& operator<<(std::ostream& os, ResultStatus status);
/// Interface for loading an application /// Interface for loading an application
class AppLoader { class AppLoader {
public: public:
YUZU_NON_COPYABLE(AppLoader); SUYU_NON_COPYABLE(AppLoader);
YUZU_NON_MOVEABLE(AppLoader); SUYU_NON_MOVEABLE(AppLoader);
struct LoadParameters { struct LoadParameters {
s32 main_thread_priority; s32 main_thread_priority;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2017 Citra Emulator Project // SPDX-FileCopyrightText: 2017 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -39,7 +39,7 @@ PerfStats::~PerfStats() {
std::copy(perf_history.begin() + IgnoreFrames, perf_history.begin() + current_index, std::copy(perf_history.begin() + IgnoreFrames, perf_history.begin() + current_index,
std::ostream_iterator<double>(stream, "\n")); std::ostream_iterator<double>(stream, "\n"));
const auto path = Common::FS::GetYuzuPath(Common::FS::YuzuPath::LogDir); const auto path = Common::FS::GetSuyuPath(Common::FS::SuyuPath::LogDir);
// %F Date format expanded is "%Y-%m-%d" // %F Date format expanded is "%Y-%m-%d"
const auto filename = fmt::format("{:%F-%H-%M}_{:016X}.csv", *std::localtime(&t), title_id); const auto filename = fmt::format("{:%F-%H-%M}_{:016X}.csv", *std::localtime(&t), title_id);
const auto filepath = path / filename; const auto filepath = path / filename;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <ctime> #include <ctime>
@ -27,7 +27,7 @@
namespace { namespace {
std::filesystem::path GetPath(std::string_view type, u64 title_id, std::string_view timestamp) { std::filesystem::path GetPath(std::string_view type, u64 title_id, std::string_view timestamp) {
return Common::FS::GetYuzuPath(Common::FS::YuzuPath::LogDir) / type / return Common::FS::GetSuyuPath(Common::FS::SuyuPath::LogDir) / type /
fmt::format("{:016X}_{}.json", title_id, timestamp); fmt::format("{:016X}_{}.json", title_id, timestamp);
} }
@ -332,7 +332,7 @@ void Reporter::SaveErrorReport(u64 title_id, Result result,
void Reporter::SaveFSAccessLog(std::string_view log_message) const { void Reporter::SaveFSAccessLog(std::string_view log_message) const {
const auto access_log_path = const auto access_log_path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::SDMCDir) / "FsAccessLog.txt"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::SDMCDir) / "FsAccessLog.txt";
void(Common::FS::AppendStringToFile(access_log_path, Common::FS::FileType::TextFile, void(Common::FS::AppendStringToFile(access_log_path, Common::FS::FileType::TextFile,
log_message)); log_message));
@ -352,7 +352,7 @@ void Reporter::SaveUserReport() const {
void Reporter::ClearFSAccessLog() const { void Reporter::ClearFSAccessLog() const {
const auto access_log_path = const auto access_log_path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::SDMCDir) / "FsAccessLog.txt"; Common::FS::GetSuyuPath(Common::FS::SuyuPath::SDMCDir) / "FsAccessLog.txt";
Common::FS::IOFile access_log_file{access_log_path, Common::FS::FileAccessMode::Write, Common::FS::IOFile access_log_file{access_log_path, Common::FS::FileAccessMode::Write,
Common::FS::FileType::TextFile}; Common::FS::FileType::TextFile};

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2017 Citra Emulator Project // SPDX-FileCopyrightText: 2017 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <array> #include <array>
@ -114,7 +114,7 @@ static constexpr const char* TranslateASTCDecodeMode(Settings::AstcDecodeMode mo
u64 GetTelemetryId() { u64 GetTelemetryId() {
u64 telemetry_id{}; u64 telemetry_id{};
const auto filename = Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir) / "telemetry_id"; const auto filename = Common::FS::GetSuyuPath(Common::FS::SuyuPath::ConfigDir) / "telemetry_id";
bool generate_new_id = !Common::FS::Exists(filename); bool generate_new_id = !Common::FS::Exists(filename);
@ -156,7 +156,7 @@ u64 GetTelemetryId() {
u64 RegenerateTelemetryId() { u64 RegenerateTelemetryId() {
const u64 new_telemetry_id{GenerateTelemetryId()}; const u64 new_telemetry_id{GenerateTelemetryId()};
const auto filename = Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir) / "telemetry_id"; const auto filename = Common::FS::GetSuyuPath(Common::FS::SuyuPath::ConfigDir) / "telemetry_id";
Common::FS::IOFile file{filename, Common::FS::FileAccessMode::Write, Common::FS::IOFile file{filename, Common::FS::FileAccessMode::Write,
Common::FS::FileType::BinaryFile}; Common::FS::FileType::BinaryFile};

View File

@ -1,8 +1,6 @@
// SPDX-FileCopyrightText: 2017 Citra Emulator Project & 2024 suyu Emulator Project // SPDX-FileCopyrightText: 2017 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// Modified by JuanCStar on 2024/03/06
#include "winresrc.h" #include "winresrc.h"
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// //

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project // SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -25,7 +25,7 @@ Config::Config(const ConfigType config_type)
: type(config_type), global{config_type == ConfigType::GlobalConfig} {} : type(config_type), global{config_type == ConfigType::GlobalConfig} {}
void Config::Initialize(const std::string& config_name) { void Config::Initialize(const std::string& config_name) {
const std::filesystem::path fs_config_loc = FS::GetYuzuPath(FS::YuzuPath::ConfigDir); const std::filesystem::path fs_config_loc = FS::GetSuyuPath(FS::SuyuPath::ConfigDir);
const auto config_file = fmt::format("{}.ini", config_name); const auto config_file = fmt::format("{}.ini", config_name);
switch (type) { switch (type) {
@ -51,7 +51,7 @@ void Config::Initialize(const std::string& config_name) {
void Config::Initialize(const std::optional<std::string> config_path) { void Config::Initialize(const std::optional<std::string> config_path) {
const std::filesystem::path default_sdl_config_path = const std::filesystem::path default_sdl_config_path =
FS::GetYuzuPath(FS::YuzuPath::ConfigDir) / "sdl2-config.ini"; FS::GetSuyuPath(FS::SuyuPath::ConfigDir) / "sdl2-config.ini";
config_loc = config_path.value_or(FS::PathToUTF8String(default_sdl_config_path)); config_loc = config_path.value_or(FS::PathToUTF8String(default_sdl_config_path));
void(FS::CreateParentDir(config_loc)); void(FS::CreateParentDir(config_loc));
SetUpIni(); SetUpIni();
@ -275,11 +275,11 @@ void Config::ReadCoreValues() {
void Config::ReadDataStorageValues() { void Config::ReadDataStorageValues() {
BeginGroup(Settings::TranslateCategory(Settings::Category::DataStorage)); BeginGroup(Settings::TranslateCategory(Settings::Category::DataStorage));
FS::SetYuzuPath(FS::YuzuPath::NANDDir, ReadStringSetting(std::string("nand_directory"))); FS::SetSuyuPath(FS::SuyuPath::NANDDir, ReadStringSetting(std::string("nand_directory")));
FS::SetYuzuPath(FS::YuzuPath::SDMCDir, ReadStringSetting(std::string("sdmc_directory"))); FS::SetSuyuPath(FS::SuyuPath::SDMCDir, ReadStringSetting(std::string("sdmc_directory")));
FS::SetYuzuPath(FS::YuzuPath::LoadDir, ReadStringSetting(std::string("load_directory"))); FS::SetSuyuPath(FS::SuyuPath::LoadDir, ReadStringSetting(std::string("load_directory")));
FS::SetYuzuPath(FS::YuzuPath::DumpDir, ReadStringSetting(std::string("dump_directory"))); FS::SetSuyuPath(FS::SuyuPath::DumpDir, ReadStringSetting(std::string("dump_directory")));
FS::SetYuzuPath(FS::YuzuPath::TASDir, ReadStringSetting(std::string("tas_directory"))); FS::SetSuyuPath(FS::SuyuPath::TASDir, ReadStringSetting(std::string("tas_directory")));
ReadCategory(Settings::Category::DataStorage); ReadCategory(Settings::Category::DataStorage);
@ -371,7 +371,7 @@ void Config::ReadScreenshotValues() {
BeginGroup(Settings::TranslateCategory(Settings::Category::Screenshots)); BeginGroup(Settings::TranslateCategory(Settings::Category::Screenshots));
ReadCategory(Settings::Category::Screenshots); ReadCategory(Settings::Category::Screenshots);
FS::SetYuzuPath(FS::YuzuPath::ScreenshotsDir, FS::SetSuyuPath(FS::SuyuPath::ScreenshotsDir,
ReadStringSetting(std::string("screenshot_path"))); ReadStringSetting(std::string("screenshot_path")));
EndGroup(); EndGroup();
@ -577,16 +577,16 @@ void Config::SaveCoreValues() {
void Config::SaveDataStorageValues() { void Config::SaveDataStorageValues() {
BeginGroup(Settings::TranslateCategory(Settings::Category::DataStorage)); BeginGroup(Settings::TranslateCategory(Settings::Category::DataStorage));
WriteStringSetting(std::string("nand_directory"), FS::GetYuzuPathString(FS::YuzuPath::NANDDir), WriteStringSetting(std::string("nand_directory"), FS::GetSuyuPathString(FS::SuyuPath::NANDDir),
std::make_optional(FS::GetYuzuPathString(FS::YuzuPath::NANDDir))); std::make_optional(FS::GetSuyuPathString(FS::SuyuPath::NANDDir)));
WriteStringSetting(std::string("sdmc_directory"), FS::GetYuzuPathString(FS::YuzuPath::SDMCDir), WriteStringSetting(std::string("sdmc_directory"), FS::GetSuyuPathString(FS::SuyuPath::SDMCDir),
std::make_optional(FS::GetYuzuPathString(FS::YuzuPath::SDMCDir))); std::make_optional(FS::GetSuyuPathString(FS::SuyuPath::SDMCDir)));
WriteStringSetting(std::string("load_directory"), FS::GetYuzuPathString(FS::YuzuPath::LoadDir), WriteStringSetting(std::string("load_directory"), FS::GetSuyuPathString(FS::SuyuPath::LoadDir),
std::make_optional(FS::GetYuzuPathString(FS::YuzuPath::LoadDir))); std::make_optional(FS::GetSuyuPathString(FS::SuyuPath::LoadDir)));
WriteStringSetting(std::string("dump_directory"), FS::GetYuzuPathString(FS::YuzuPath::DumpDir), WriteStringSetting(std::string("dump_directory"), FS::GetSuyuPathString(FS::SuyuPath::DumpDir),
std::make_optional(FS::GetYuzuPathString(FS::YuzuPath::DumpDir))); std::make_optional(FS::GetSuyuPathString(FS::SuyuPath::DumpDir)));
WriteStringSetting(std::string("tas_directory"), FS::GetYuzuPathString(FS::YuzuPath::TASDir), WriteStringSetting(std::string("tas_directory"), FS::GetSuyuPathString(FS::SuyuPath::TASDir),
std::make_optional(FS::GetYuzuPathString(FS::YuzuPath::TASDir))); std::make_optional(FS::GetSuyuPathString(FS::SuyuPath::TASDir)));
WriteCategory(Settings::Category::DataStorage); WriteCategory(Settings::Category::DataStorage);
@ -679,7 +679,7 @@ void Config::SaveScreenshotValues() {
BeginGroup(Settings::TranslateCategory(Settings::Category::Screenshots)); BeginGroup(Settings::TranslateCategory(Settings::Category::Screenshots));
WriteStringSetting(std::string("screenshot_path"), WriteStringSetting(std::string("screenshot_path"),
FS::GetYuzuPathString(FS::YuzuPath::ScreenshotsDir)); FS::GetSuyuPathString(FS::SuyuPath::ScreenshotsDir));
WriteCategory(Settings::Category::Screenshots); WriteCategory(Settings::Category::Screenshots);
EndGroup(); EndGroup();

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -80,8 +80,8 @@ public:
explicit EmulatedConsole(); explicit EmulatedConsole();
~EmulatedConsole(); ~EmulatedConsole();
YUZU_NON_COPYABLE(EmulatedConsole); SUYU_NON_COPYABLE(EmulatedConsole);
YUZU_NON_MOVEABLE(EmulatedConsole); SUYU_NON_MOVEABLE(EmulatedConsole);
/// Removes all callbacks created from input devices /// Removes all callbacks created from input devices
void UnloadInput(); void UnloadInput();

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -178,8 +178,8 @@ public:
explicit EmulatedController(NpadIdType npad_id_type_); explicit EmulatedController(NpadIdType npad_id_type_);
~EmulatedController(); ~EmulatedController();
YUZU_NON_COPYABLE(EmulatedController); SUYU_NON_COPYABLE(EmulatedController);
YUZU_NON_MOVEABLE(EmulatedController); SUYU_NON_MOVEABLE(EmulatedController);
/// Converts the controller type from settings to npad type /// Converts the controller type from settings to npad type
static NpadStyleIndex MapSettingsTypeToNPad(Settings::ControllerType type); static NpadStyleIndex MapSettingsTypeToNPad(Settings::ControllerType type);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -81,8 +81,8 @@ public:
explicit EmulatedDevices(); explicit EmulatedDevices();
~EmulatedDevices(); ~EmulatedDevices();
YUZU_NON_COPYABLE(EmulatedDevices); SUYU_NON_COPYABLE(EmulatedDevices);
YUZU_NON_MOVEABLE(EmulatedDevices); SUYU_NON_MOVEABLE(EmulatedDevices);
/// Removes all callbacks created from input devices /// Removes all callbacks created from input devices
void UnloadInput(); void UnloadInput();

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -21,8 +21,8 @@ public:
explicit HIDCore(); explicit HIDCore();
~HIDCore(); ~HIDCore();
YUZU_NON_COPYABLE(HIDCore); SUYU_NON_COPYABLE(HIDCore);
YUZU_NON_MOVEABLE(HIDCore); SUYU_NON_MOVEABLE(HIDCore);
EmulatedController* GetEmulatedController(NpadIdType npad_id_type); EmulatedController* GetEmulatedController(NpadIdType npad_id_type);
const EmulatedController* GetEmulatedController(NpadIdType npad_id_type) const; const EmulatedController* GetEmulatedController(NpadIdType npad_id_type) const;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <cstring> #include <cstring>
@ -82,7 +82,7 @@ void Tas::LoadTasFile(size_t player_index, size_t file_index) {
commands[player_index].clear(); commands[player_index].clear();
std::string file = Common::FS::ReadStringFromFile( std::string file = Common::FS::ReadStringFromFile(
Common::FS::GetYuzuPath(Common::FS::YuzuPath::TASDir) / Common::FS::GetSuyuPath(Common::FS::SuyuPath::TASDir) /
fmt::format("script{}-{}.txt", file_index, player_index + 1), fmt::format("script{}-{}.txt", file_index, player_index + 1),
Common::FS::FileType::BinaryFile); Common::FS::FileType::BinaryFile);
std::istringstream command_line(file); std::istringstream command_line(file);
@ -137,7 +137,7 @@ void Tas::WriteTasFile(std::u8string_view file_name) {
WriteCommandAxis(line.l_axis), WriteCommandAxis(line.r_axis)); WriteCommandAxis(line.l_axis), WriteCommandAxis(line.r_axis));
} }
const auto tas_file_name = Common::FS::GetYuzuPath(Common::FS::YuzuPath::TASDir) / file_name; const auto tas_file_name = Common::FS::GetSuyuPath(Common::FS::SuyuPath::TASDir) / file_name;
const auto bytes_written = const auto bytes_written =
Common::FS::WriteStringToFile(tas_file_name, Common::FS::FileType::TextFile, output_text); Common::FS::WriteStringToFile(tas_file_name, Common::FS::FileType::TextFile, output_text);
if (bytes_written == output_text.size()) { if (bytes_written == output_text.size()) {

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -43,8 +43,8 @@ class DeinterlaceFilter;
// Wraps an AVPacket, a container for compressed bitstream data. // Wraps an AVPacket, a container for compressed bitstream data.
class Packet { class Packet {
public: public:
YUZU_NON_COPYABLE(Packet); SUYU_NON_COPYABLE(Packet);
YUZU_NON_MOVEABLE(Packet); SUYU_NON_MOVEABLE(Packet);
explicit Packet(std::span<const u8> data); explicit Packet(std::span<const u8> data);
~Packet(); ~Packet();
@ -60,8 +60,8 @@ private:
// Wraps an AVFrame, a container for audio and video stream data. // Wraps an AVFrame, a container for audio and video stream data.
class Frame { class Frame {
public: public:
YUZU_NON_COPYABLE(Frame); SUYU_NON_COPYABLE(Frame);
YUZU_NON_MOVEABLE(Frame); SUYU_NON_MOVEABLE(Frame);
explicit Frame(); explicit Frame();
~Frame(); ~Frame();
@ -109,8 +109,8 @@ private:
// Wraps an AVCodec, a type containing information about a codec. // Wraps an AVCodec, a type containing information about a codec.
class Decoder { class Decoder {
public: public:
YUZU_NON_COPYABLE(Decoder); SUYU_NON_COPYABLE(Decoder);
YUZU_NON_MOVEABLE(Decoder); SUYU_NON_MOVEABLE(Decoder);
explicit Decoder(Tegra::Host1x::NvdecCommon::VideoCodec codec); explicit Decoder(Tegra::Host1x::NvdecCommon::VideoCodec codec);
~Decoder() = default; ~Decoder() = default;
@ -128,8 +128,8 @@ private:
// Wraps AVBufferRef for an accelerated decoder. // Wraps AVBufferRef for an accelerated decoder.
class HardwareContext { class HardwareContext {
public: public:
YUZU_NON_COPYABLE(HardwareContext); SUYU_NON_COPYABLE(HardwareContext);
YUZU_NON_MOVEABLE(HardwareContext); SUYU_NON_MOVEABLE(HardwareContext);
static std::vector<AVHWDeviceType> GetSupportedDeviceTypes(); static std::vector<AVHWDeviceType> GetSupportedDeviceTypes();
@ -151,8 +151,8 @@ private:
// Wraps an AVCodecContext. // Wraps an AVCodecContext.
class DecoderContext { class DecoderContext {
public: public:
YUZU_NON_COPYABLE(DecoderContext); SUYU_NON_COPYABLE(DecoderContext);
YUZU_NON_MOVEABLE(DecoderContext); SUYU_NON_MOVEABLE(DecoderContext);
explicit DecoderContext(const Decoder& decoder); explicit DecoderContext(const Decoder& decoder);
~DecoderContext(); ~DecoderContext();
@ -173,8 +173,8 @@ private:
// Wraps an AVFilterGraph. // Wraps an AVFilterGraph.
class DeinterlaceFilter { class DeinterlaceFilter {
public: public:
YUZU_NON_COPYABLE(DeinterlaceFilter); SUYU_NON_COPYABLE(DeinterlaceFilter);
YUZU_NON_MOVEABLE(DeinterlaceFilter); SUYU_NON_MOVEABLE(DeinterlaceFilter);
explicit DeinterlaceFilter(const Frame& frame); explicit DeinterlaceFilter(const Frame& frame);
~DeinterlaceFilter(); ~DeinterlaceFilter();
@ -191,8 +191,8 @@ private:
class DecodeApi { class DecodeApi {
public: public:
YUZU_NON_COPYABLE(DecodeApi); SUYU_NON_COPYABLE(DecodeApi);
YUZU_NON_MOVEABLE(DecodeApi); SUYU_NON_MOVEABLE(DecodeApi);
DecodeApi() = default; DecodeApi() = default;
~DecodeApi() = default; ~DecodeApi() = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <cstring> #include <cstring>
@ -28,7 +28,7 @@ MICROPROFILE_DEFINE(MacroHLE, "GPU", "Execute macro HLE", MP_RGB(128, 192, 192))
namespace Tegra { namespace Tegra {
static void Dump(u64 hash, std::span<const u32> code, bool decompiled = false) { static void Dump(u64 hash, std::span<const u32> code, bool decompiled = false) {
const auto base_dir{Common::FS::GetYuzuPath(Common::FS::YuzuPath::DumpDir)}; const auto base_dir{Common::FS::GetSuyuPath(Common::FS::SuyuPath::DumpDir)};
const auto macro_dir{base_dir / "macros"}; const auto macro_dir{base_dir / "macros"};
if (!Common::FS::CreateDir(base_dir) || !Common::FS::CreateDir(macro_dir)) { if (!Common::FS::CreateDir(base_dir) || !Common::FS::CreateDir(macro_dir)) {
LOG_ERROR(Common_Filesystem, "Failed to create macro dump directories"); LOG_ERROR(Common_Filesystem, "Failed to create macro dump directories");

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -30,8 +30,8 @@ struct RendererSettings {
class RendererBase { class RendererBase {
public: public:
YUZU_NON_COPYABLE(RendererBase); SUYU_NON_COPYABLE(RendererBase);
YUZU_NON_MOVEABLE(RendererBase); SUYU_NON_MOVEABLE(RendererBase);
explicit RendererBase(Core::Frontend::EmuWindow& window, explicit RendererBase(Core::Frontend::EmuWindow& window,
std::unique_ptr<Core::Frontend::GraphicsContext> context); std::unique_ptr<Core::Frontend::GraphicsContext> context);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -108,14 +108,14 @@ bool IsASTCSupported() {
static bool HasSlowSoftwareAstc(std::string_view vendor_name, std::string_view renderer) { static bool HasSlowSoftwareAstc(std::string_view vendor_name, std::string_view renderer) {
// ifdef for Unix reduces string comparisons for non-Windows drivers, and Intel // ifdef for Unix reduces string comparisons for non-Windows drivers, and Intel
#ifdef YUZU_UNIX #ifdef SUYU_UNIX
// Sorted vaguely by how likely a vendor is to appear // Sorted vaguely by how likely a vendor is to appear
if (vendor_name == "AMD") { if (vendor_name == "AMD") {
// RadeonSI // RadeonSI
return true; return true;
} }
if (vendor_name == "Intel") { if (vendor_name == "Intel") {
// Must be inside YUZU_UNIX ifdef as the Windows driver uses the same vendor string // Must be inside SUYU_UNIX ifdef as the Windows driver uses the same vendor string
// iris, crocus // iris, crocus
const bool is_intel_dg = (renderer.find("DG") != std::string_view::npos); const bool is_intel_dg = (renderer.find("DG") != std::string_view::npos);
return is_intel_dg; return is_intel_dg;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2015 Citra Emulator Project // SPDX-FileCopyrightText: 2015 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -12,7 +12,7 @@ namespace OpenGL {
class OGLRenderbuffer final { class OGLRenderbuffer final {
public: public:
YUZU_NON_COPYABLE(OGLRenderbuffer); SUYU_NON_COPYABLE(OGLRenderbuffer);
OGLRenderbuffer() = default; OGLRenderbuffer() = default;
@ -39,7 +39,7 @@ public:
class OGLTexture final { class OGLTexture final {
public: public:
YUZU_NON_COPYABLE(OGLTexture); SUYU_NON_COPYABLE(OGLTexture);
OGLTexture() = default; OGLTexture() = default;
@ -66,7 +66,7 @@ public:
class OGLTextureView final { class OGLTextureView final {
public: public:
YUZU_NON_COPYABLE(OGLTextureView); SUYU_NON_COPYABLE(OGLTextureView);
OGLTextureView() = default; OGLTextureView() = default;
@ -93,7 +93,7 @@ public:
class OGLSampler final { class OGLSampler final {
public: public:
YUZU_NON_COPYABLE(OGLSampler); SUYU_NON_COPYABLE(OGLSampler);
OGLSampler() = default; OGLSampler() = default;
@ -120,7 +120,7 @@ public:
class OGLShader final { class OGLShader final {
public: public:
YUZU_NON_COPYABLE(OGLShader); SUYU_NON_COPYABLE(OGLShader);
OGLShader() = default; OGLShader() = default;
@ -143,7 +143,7 @@ public:
class OGLProgram final { class OGLProgram final {
public: public:
YUZU_NON_COPYABLE(OGLProgram); SUYU_NON_COPYABLE(OGLProgram);
OGLProgram() = default; OGLProgram() = default;
@ -167,7 +167,7 @@ public:
class OGLAssemblyProgram final { class OGLAssemblyProgram final {
public: public:
YUZU_NON_COPYABLE(OGLAssemblyProgram); SUYU_NON_COPYABLE(OGLAssemblyProgram);
OGLAssemblyProgram() = default; OGLAssemblyProgram() = default;
@ -191,7 +191,7 @@ public:
class OGLPipeline final { class OGLPipeline final {
public: public:
YUZU_NON_COPYABLE(OGLPipeline); SUYU_NON_COPYABLE(OGLPipeline);
OGLPipeline() = default; OGLPipeline() = default;
OGLPipeline(OGLPipeline&& o) noexcept : handle{std::exchange<GLuint>(o.handle, 0)} {} OGLPipeline(OGLPipeline&& o) noexcept : handle{std::exchange<GLuint>(o.handle, 0)} {}
@ -215,7 +215,7 @@ public:
class OGLBuffer final { class OGLBuffer final {
public: public:
YUZU_NON_COPYABLE(OGLBuffer); SUYU_NON_COPYABLE(OGLBuffer);
OGLBuffer() = default; OGLBuffer() = default;
@ -242,7 +242,7 @@ public:
class OGLSync final { class OGLSync final {
public: public:
YUZU_NON_COPYABLE(OGLSync); SUYU_NON_COPYABLE(OGLSync);
OGLSync() = default; OGLSync() = default;
@ -271,7 +271,7 @@ public:
class OGLFramebuffer final { class OGLFramebuffer final {
public: public:
YUZU_NON_COPYABLE(OGLFramebuffer); SUYU_NON_COPYABLE(OGLFramebuffer);
OGLFramebuffer() = default; OGLFramebuffer() = default;
@ -298,7 +298,7 @@ public:
class OGLQuery final { class OGLQuery final {
public: public:
YUZU_NON_COPYABLE(OGLQuery); SUYU_NON_COPYABLE(OGLQuery);
OGLQuery() = default; OGLQuery() = default;
@ -325,7 +325,7 @@ public:
class OGLTransformFeedback final { class OGLTransformFeedback final {
public: public:
YUZU_NON_COPYABLE(OGLTransformFeedback); SUYU_NON_COPYABLE(OGLTransformFeedback);
OGLTransformFeedback() = default; OGLTransformFeedback() = default;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <atomic> #include <atomic>
@ -260,7 +260,7 @@ void ShaderCache::LoadDiskResources(u64 title_id, std::stop_token stop_loading,
if (title_id == 0) { if (title_id == 0) {
return; return;
} }
const auto shader_dir{Common::FS::GetYuzuPath(Common::FS::YuzuPath::ShaderDir)}; const auto shader_dir{Common::FS::GetSuyuPath(Common::FS::SuyuPath::ShaderDir)};
const auto base_dir{shader_dir / fmt::format("{:016x}", title_id)}; const auto base_dir{shader_dir / fmt::format("{:016x}", title_id)};
if (!Common::FS::CreateDir(shader_dir) || !Common::FS::CreateDir(base_dir)) { if (!Common::FS::CreateDir(shader_dir) || !Common::FS::CreateDir(base_dir)) {
LOG_ERROR(Common_Filesystem, "Failed to create shader cache directories"); LOG_ERROR(Common_Filesystem, "Failed to create shader cache directories");

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -464,7 +464,7 @@ void PipelineCache::LoadDiskResources(u64 title_id, std::stop_token stop_loading
if (title_id == 0) { if (title_id == 0) {
return; return;
} }
const auto shader_dir{Common::FS::GetYuzuPath(Common::FS::YuzuPath::ShaderDir)}; const auto shader_dir{Common::FS::GetSuyuPath(Common::FS::SuyuPath::ShaderDir)};
const auto base_dir{shader_dir / fmt::format("{:016x}", title_id)}; const auto base_dir{shader_dir / fmt::format("{:016x}", title_id)};
if (!Common::FS::CreateDir(shader_dir) || !Common::FS::CreateDir(base_dir)) { if (!Common::FS::CreateDir(shader_dir) || !Common::FS::CreateDir(base_dir)) {
LOG_ERROR(Common_Filesystem, "Failed to create pipeline cache directories"); LOG_ERROR(Common_Filesystem, "Failed to create pipeline cache directories");

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -91,7 +91,7 @@ static std::string_view StageToPrefix(Shader::Stage stage) {
static void DumpImpl(u64 pipeline_hash, u64 shader_hash, std::span<const u64> code, static void DumpImpl(u64 pipeline_hash, u64 shader_hash, std::span<const u64> code,
[[maybe_unused]] u32 read_highest, [[maybe_unused]] u32 read_lowest, [[maybe_unused]] u32 read_highest, [[maybe_unused]] u32 read_lowest,
u32 initial_offset, Shader::Stage stage) { u32 initial_offset, Shader::Stage stage) {
const auto shader_dir{Common::FS::GetYuzuPath(Common::FS::YuzuPath::DumpDir)}; const auto shader_dir{Common::FS::GetSuyuPath(Common::FS::SuyuPath::DumpDir)};
const auto base_dir{shader_dir / "shaders"}; const auto base_dir{shader_dir / "shaders"};
if (!Common::FS::CreateDir(shader_dir) || !Common::FS::CreateDir(base_dir)) { if (!Common::FS::CreateDir(shader_dir) || !Common::FS::CreateDir(base_dir)) {
LOG_ERROR(Common_Filesystem, "Failed to create shader dump directories"); LOG_ERROR(Common_Filesystem, "Failed to create shader dump directories");

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#ifdef HAS_NSIGHT_AFTERMATH #ifdef HAS_NSIGHT_AFTERMATH
@ -47,7 +47,7 @@ NsightAftermathTracker::NsightAftermathTracker() {
LOG_ERROR(Render_Vulkan, "Failed to load Nsight Aftermath function pointers"); LOG_ERROR(Render_Vulkan, "Failed to load Nsight Aftermath function pointers");
return; return;
} }
dump_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::LogDir) / "gpucrash"; dump_dir = Common::FS::GetSuyuPath(Common::FS::SuyuPath::LogDir) / "gpucrash";
Common::FS::RemoveDirRecursively(dump_dir); Common::FS::RemoveDirRecursively(dump_dir);
if (!Common::FS::CreateDir(dump_dir)) { if (!Common::FS::CreateDir(dump_dir)) {

View File

@ -1,8 +1,6 @@
# SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2024 Suyu Emulator Project # SPDX-FileCopyrightText: 2018 yuzu Emulator Project & 2024 Suyu Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later # SPDX-License-Identifier: GPL-2.0-or-later
# Modified by JuanCStar on 2024/03/06
set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON) set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOUIC ON)
@ -351,7 +349,7 @@ target_sources(yuzu
) )
if (APPLE) if (APPLE)
set(MACOSX_ICON "../../dist/yuzu.icns") set(MACOSX_ICON "../../dist/suyu.icns")
set_source_files_properties(${MACOSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) set_source_files_properties(${MACOSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
target_sources(yuzu PRIVATE ${MACOSX_ICON}) target_sources(yuzu PRIVATE ${MACOSX_ICON})
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE TRUE) set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE TRUE)
@ -431,9 +429,9 @@ if (ENABLE_WEB_SERVICE)
target_compile_definitions(yuzu PRIVATE -DENABLE_WEB_SERVICE) target_compile_definitions(yuzu PRIVATE -DENABLE_WEB_SERVICE)
endif() endif()
if (YUZU_USE_QT_MULTIMEDIA) if (SUYU_USE_QT_MULTIMEDIA)
target_link_libraries(yuzu PRIVATE Qt${QT_MAJOR_VERSION}::Multimedia) target_link_libraries(yuzu PRIVATE Qt${QT_MAJOR_VERSION}::Multimedia)
target_compile_definitions(yuzu PRIVATE -DYUZU_USE_QT_MULTIMEDIA) target_compile_definitions(yuzu PRIVATE -DSUYU_USE_QT_MULTIMEDIA)
endif () endif ()
if (YUZU_USE_QT_WEB_ENGINE) if (YUZU_USE_QT_WEB_ENGINE)

View File

@ -15,7 +15,7 @@ SPDX-License-Identifier: GPL-2.0-or-later
<key>CFBundleGetInfoString</key> <key>CFBundleGetInfoString</key>
<string></string> <string></string>
<key>CFBundleIconFile</key> <key>CFBundleIconFile</key>
<string>yuzu.icns</string> <string>suyu.icns</string>
<key>CFBundleIdentifier</key> <key>CFBundleIdentifier</key>
<string>com.yuzu-emu.yuzu</string> <string>com.yuzu-emu.yuzu</string>
<key>CFBundleInfoDictionaryVersion</key> <key>CFBundleInfoDictionaryVersion</key>

View File

@ -1,8 +1,6 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// Modified by JuanCStar on 2024/03/06
#include <QIcon> #include <QIcon>
#include <fmt/format.h> #include <fmt/format.h>
#include "common/scm_rev.h" #include "common/scm_rev.h"

View File

@ -1,8 +1,6 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
// Modified by JuanCStar on 2024/03/06
#pragma once #pragma once
#include <memory> #include <memory>

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <mutex> #include <mutex>
@ -30,7 +30,7 @@ QString FormatUserEntryText(const QString& username, Common::UUID uuid) {
QString GetImagePath(Common::UUID uuid) { QString GetImagePath(Common::UUID uuid) {
const auto path = const auto path =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir) / Common::FS::GetSuyuPath(Common::FS::SuyuPath::NANDDir) /
fmt::format("system/save/8000000000000010/su/avators/{}.jpg", uuid.FormattedString()); fmt::format("system/save/8000000000000010/su/avators/{}.jpg", uuid.FormattedString());
return QString::fromStdString(Common::FS::PathToUTF8String(path)); return QString::fromStdString(Common::FS::PathToUTF8String(path));
} }

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#ifdef YUZU_USE_QT_WEB_ENGINE #ifdef YUZU_USE_QT_WEB_ENGINE
@ -57,7 +57,7 @@ QtNXWebEngineView::QtNXWebEngineView(QWidget* parent, Core::System& system,
default_profile{QWebEngineProfile::defaultProfile()}, global_settings{ default_profile{QWebEngineProfile::defaultProfile()}, global_settings{
default_profile->settings()} { default_profile->settings()} {
default_profile->setPersistentStoragePath(QString::fromStdString(Common::FS::PathToUTF8String( default_profile->setPersistentStoragePath(QString::fromStdString(Common::FS::PathToUTF8String(
Common::FS::GetYuzuPath(Common::FS::YuzuPath::YuzuDir) / "qtwebengine"))); Common::FS::GetSuyuPath(Common::FS::SuyuPath::SuyuDir) / "qtwebengine")));
QWebEngineScript gamepad; QWebEngineScript gamepad;
QWebEngineScript window_nx; QWebEngineScript window_nx;
@ -336,7 +336,7 @@ void QtNXWebEngineView::LoadExtractedFonts() {
QWebEngineScript load_nx_font; QWebEngineScript load_nx_font;
auto fonts_dir_str = Common::FS::PathToUTF8String( auto fonts_dir_str = Common::FS::PathToUTF8String(
Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir) / "fonts/"); Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir) / "fonts/");
std::replace(fonts_dir_str.begin(), fonts_dir_str.end(), '\\', '/'); std::replace(fonts_dir_str.begin(), fonts_dir_str.end(), '\\', '/');

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -13,7 +13,7 @@
#include <QtCore/qglobal.h> #include <QtCore/qglobal.h>
#include "common/settings_enums.h" #include "common/settings_enums.h"
#include "uisettings.h" #include "uisettings.h"
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
#include <QCamera> #include <QCamera>
#include <QCameraImageCapture> #include <QCameraImageCapture>
#include <QCameraInfo> #include <QCameraInfo>
@ -286,7 +286,7 @@ GRenderWindow::GRenderWindow(GMainWindow* parent, EmuThread* emu_thread_,
Core::System& system_) Core::System& system_)
: QWidget(parent), : QWidget(parent),
emu_thread(emu_thread_), input_subsystem{std::move(input_subsystem_)}, system{system_} { emu_thread(emu_thread_), input_subsystem{std::move(input_subsystem_)}, system{system_} {
setWindowTitle(QStringLiteral("yuzu %1 | %2-%3") setWindowTitle(QStringLiteral("suyu %1 | %2-%3")
.arg(QString::fromUtf8(Common::g_build_name), .arg(QString::fromUtf8(Common::g_build_name),
QString::fromUtf8(Common::g_scm_branch), QString::fromUtf8(Common::g_scm_branch),
QString::fromUtf8(Common::g_scm_desc))); QString::fromUtf8(Common::g_scm_desc)));
@ -760,7 +760,7 @@ void GRenderWindow::TouchEndEvent() {
} }
void GRenderWindow::InitializeCamera() { void GRenderWindow::InitializeCamera() {
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
constexpr auto camera_update_ms = std::chrono::milliseconds{50}; // (50ms, 20Hz) constexpr auto camera_update_ms = std::chrono::milliseconds{50}; // (50ms, 20Hz)
if (!Settings::values.enable_ir_sensor) { if (!Settings::values.enable_ir_sensor) {
return; return;
@ -821,7 +821,7 @@ void GRenderWindow::InitializeCamera() {
} }
void GRenderWindow::FinalizeCamera() { void GRenderWindow::FinalizeCamera() {
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
if (camera_timer) { if (camera_timer) {
camera_timer->stop(); camera_timer->stop();
} }
@ -832,7 +832,7 @@ void GRenderWindow::FinalizeCamera() {
} }
void GRenderWindow::RequestCameraCapture() { void GRenderWindow::RequestCameraCapture() {
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
if (!Settings::values.enable_ir_sensor) { if (!Settings::values.enable_ir_sensor) {
return; return;
} }
@ -853,7 +853,7 @@ void GRenderWindow::RequestCameraCapture() {
} }
void GRenderWindow::OnCameraCapture(int requestId, const QImage& img) { void GRenderWindow::OnCameraCapture(int requestId, const QImage& img) {
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
// TODO: Capture directly in the format and resolution needed // TODO: Capture directly in the format and resolution needed
const auto camera_width = input_subsystem->GetCamera()->getImageWidth(); const auto camera_width = input_subsystem->GetCamera()->getImageWidth();
const auto camera_height = input_subsystem->GetCamera()->getImageHeight(); const auto camera_height = input_subsystem->GetCamera()->getImageHeight();
@ -1034,7 +1034,7 @@ bool GRenderWindow::InitializeOpenGL() {
return true; return true;
#else #else
QMessageBox::warning(this, tr("OpenGL not available!"), QMessageBox::warning(this, tr("OpenGL not available!"),
tr("yuzu has not been compiled with OpenGL support.")); tr("yusu has not been compiled with OpenGL support."));
return false; return false;
#endif #endif
} }

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2014 Citra Emulator Project // SPDX-FileCopyrightText: 2014 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#pragma once #pragma once
@ -261,7 +261,7 @@ private:
bool first_frame = false; bool first_frame = false;
InputCommon::TasInput::TasState last_tas_state; InputCommon::TasInput::TasState last_tas_state;
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
bool is_virtual_camera; bool is_virtual_camera;
int pending_camera_snapshots; int pending_camera_snapshots;
std::vector<u32> camera_data; std::vector<u32> camera_data;

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project // SPDX-FileCopyrightText: 2023 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -50,7 +50,7 @@ static void PruneDumpDirectory(const std::filesystem::path& dump_path) {
} }
#if defined(__linux__) #if defined(__linux__)
[[noreturn]] bool DumpCallback(const google_breakpad::MinidumpDescriptor& descriptor, void* context, [[noreturn]] static bool DumpCallback(const google_breakpad::MinidumpDescriptor& descriptor, void* context,
bool succeeded) { bool succeeded) {
// Prevent time- and space-consuming core dumps from being generated, as we have // Prevent time- and space-consuming core dumps from being generated, as we have
// already generated a minidump and a core file will not be useful anyway. // already generated a minidump and a core file will not be useful anyway.
@ -60,7 +60,7 @@ static void PruneDumpDirectory(const std::filesystem::path& dump_path) {
void InstallCrashHandler() { void InstallCrashHandler() {
// Write crash dumps to profile directory. // Write crash dumps to profile directory.
const auto dump_path = GetYuzuPath(Common::FS::YuzuPath::CrashDumpsDir); const auto dump_path = GetSuyuPath(Common::FS::SuyuPath::CrashDumpsDir);
PruneDumpDirectory(dump_path); PruneDumpDirectory(dump_path);
#if defined(_WIN32) #if defined(_WIN32)

View File

@ -33,7 +33,7 @@
<item> <item>
<widget class="QLabel" name="lbl_Spiel"> <widget class="QLabel" name="lbl_Spiel">
<property name="text"> <property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:10pt;&quot;&gt;Should you choose to submit a test case to the &lt;/span&gt;&lt;a href=&quot;https://yuzu-emu.org/game/&quot;&gt;&lt;span style=&quot; font-size:10pt; text-decoration: underline; color:#0000ff;&quot;&gt;yuzu Compatibility List&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot; font-size:10pt;&quot;&gt;, The following information will be collected and displayed on the site:&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Hardware Information (CPU / GPU / Operating System)&lt;/li&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Which version of yuzu you are running&lt;/li&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;The connected yuzu account&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string> <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:10pt;&quot;&gt;Should you choose to submit a test case to the &lt;/span&gt;&lt;a href=&quot;https://suyu-emu.org/game/&quot;&gt;&lt;span style=&quot; font-size:10pt; text-decoration: underline; color:#0000ff;&quot;&gt;suyu Compatibility List&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot; font-size:10pt;&quot;&gt;, The following information will be collected and displayed on the site:&lt;/span&gt;&lt;/p&gt;&lt;ul style=&quot;margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Hardware Information (CPU / GPU / Operating System)&lt;/li&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Which version of suyu you are running&lt;/li&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;The connected suyu account&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property> </property>
<property name="wordWrap"> <property name="wordWrap">
<bool>true</bool> <bool>true</bool>

View File

@ -1,9 +1,9 @@
// Text : Copyright 2022 yuzu Emulator Project // Text : Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later // SPDX-License-Identifier: GPL-3.0-or-later
#include <memory> #include <memory>
#include <QtCore> #include <QtCore>
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
#include <QCameraImageCapture> #include <QCameraImageCapture>
#include <QCameraInfo> #include <QCameraInfo>
#endif #endif
@ -36,7 +36,7 @@ ConfigureCamera::ConfigureCamera(QWidget* parent, InputCommon::InputSubsystem* i
ConfigureCamera::~ConfigureCamera() = default; ConfigureCamera::~ConfigureCamera() = default;
void ConfigureCamera::PreviewCamera() { void ConfigureCamera::PreviewCamera() {
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
const auto index = ui->ir_sensor_combo_box->currentIndex(); const auto index = ui->ir_sensor_combo_box->currentIndex();
bool camera_found = false; bool camera_found = false;
const QList<QCameraInfo> cameras = QCameraInfo::availableCameras(); const QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
@ -138,7 +138,7 @@ void ConfigureCamera::LoadConfiguration() {
ui->ir_sensor_combo_box->clear(); ui->ir_sensor_combo_box->clear();
input_devices.push_back("Auto"); input_devices.push_back("Auto");
ui->ir_sensor_combo_box->addItem(tr("Auto")); ui->ir_sensor_combo_box->addItem(tr("Auto"));
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
const auto cameras = QCameraInfo::availableCameras(); const auto cameras = QCameraInfo::availableCameras();
for (const QCameraInfo& cameraInfo : cameras) { for (const QCameraInfo& cameraInfo : cameras) {
input_devices.push_back(cameraInfo.deviceName().toStdString()); input_devices.push_back(cameraInfo.deviceName().toStdString());

View File

@ -1,4 +1,4 @@
// Text : Copyright 2022 yuzu Emulator Project // Text : Copyright 2022 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later // SPDX-License-Identifier: GPL-3.0-or-later
#pragma once #pragma once
@ -46,7 +46,7 @@ private:
bool is_virtual_camera; bool is_virtual_camera;
int pending_snapshots; int pending_snapshots;
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && SUYU_USE_QT_MULTIMEDIA
std::unique_ptr<QCamera> camera; std::unique_ptr<QCamera> camera;
std::unique_ptr<QCameraImageCapture> camera_capture; std::unique_ptr<QCameraImageCapture> camera_capture;
#endif #endif

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2016 Citra Emulator Project // SPDX-FileCopyrightText: 2016 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <QDesktopServices> #include <QDesktopServices>
@ -21,7 +21,7 @@ ConfigureDebug::ConfigureDebug(const Core::System& system_, QWidget* parent)
connect(ui->open_log_button, &QPushButton::clicked, []() { connect(ui->open_log_button, &QPushButton::clicked, []() {
const auto path = const auto path =
QString::fromStdString(Common::FS::GetYuzuPathString(Common::FS::YuzuPath::LogDir)); QString::fromStdString(Common::FS::GetSuyuPathString(Common::FS::SuyuPath::LogDir));
QDesktopServices::openUrl(QUrl::fromLocalFile(path)); QDesktopServices::openUrl(QUrl::fromLocalFile(path));
}); });

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <QFileDialog> #include <QFileDialog>
@ -47,15 +47,15 @@ void ConfigureFilesystem::changeEvent(QEvent* event) {
void ConfigureFilesystem::SetConfiguration() { void ConfigureFilesystem::SetConfiguration() {
ui->nand_directory_edit->setText( ui->nand_directory_edit->setText(
QString::fromStdString(Common::FS::GetYuzuPathString(Common::FS::YuzuPath::NANDDir))); QString::fromStdString(Common::FS::GetSuyuPathString(Common::FS::SuyuPath::NANDDir)));
ui->sdmc_directory_edit->setText( ui->sdmc_directory_edit->setText(
QString::fromStdString(Common::FS::GetYuzuPathString(Common::FS::YuzuPath::SDMCDir))); QString::fromStdString(Common::FS::GetSuyuPathString(Common::FS::SuyuPath::SDMCDir)));
ui->gamecard_path_edit->setText( ui->gamecard_path_edit->setText(
QString::fromStdString(Settings::values.gamecard_path.GetValue())); QString::fromStdString(Settings::values.gamecard_path.GetValue()));
ui->dump_path_edit->setText( ui->dump_path_edit->setText(
QString::fromStdString(Common::FS::GetYuzuPathString(Common::FS::YuzuPath::DumpDir))); QString::fromStdString(Common::FS::GetSuyuPathString(Common::FS::SuyuPath::DumpDir)));
ui->load_path_edit->setText( ui->load_path_edit->setText(
QString::fromStdString(Common::FS::GetYuzuPathString(Common::FS::YuzuPath::LoadDir))); QString::fromStdString(Common::FS::GetSuyuPathString(Common::FS::SuyuPath::LoadDir)));
ui->gamecard_inserted->setChecked(Settings::values.gamecard_inserted.GetValue()); ui->gamecard_inserted->setChecked(Settings::values.gamecard_inserted.GetValue());
ui->gamecard_current_game->setChecked(Settings::values.gamecard_current_game.GetValue()); ui->gamecard_current_game->setChecked(Settings::values.gamecard_current_game.GetValue());
@ -68,13 +68,13 @@ void ConfigureFilesystem::SetConfiguration() {
} }
void ConfigureFilesystem::ApplyConfiguration() { void ConfigureFilesystem::ApplyConfiguration() {
Common::FS::SetYuzuPath(Common::FS::YuzuPath::NANDDir, Common::FS::SetSuyuPath(Common::FS::SuyuPath::NANDDir,
ui->nand_directory_edit->text().toStdString()); ui->nand_directory_edit->text().toStdString());
Common::FS::SetYuzuPath(Common::FS::YuzuPath::SDMCDir, Common::FS::SetSuyuPath(Common::FS::SuyuPath::SDMCDir,
ui->sdmc_directory_edit->text().toStdString()); ui->sdmc_directory_edit->text().toStdString());
Common::FS::SetYuzuPath(Common::FS::YuzuPath::DumpDir, Common::FS::SetSuyuPath(Common::FS::SuyuPath::DumpDir,
ui->dump_path_edit->text().toStdString()); ui->dump_path_edit->text().toStdString());
Common::FS::SetYuzuPath(Common::FS::YuzuPath::LoadDir, Common::FS::SetSuyuPath(Common::FS::SuyuPath::LoadDir,
ui->load_path_edit->text().toStdString()); ui->load_path_edit->text().toStdString());
Settings::values.gamecard_inserted = ui->gamecard_inserted->isChecked(); Settings::values.gamecard_inserted = ui->gamecard_inserted->isChecked();
@ -126,12 +126,12 @@ void ConfigureFilesystem::SetDirectory(DirectoryTarget target, QLineEdit* edit)
} }
void ConfigureFilesystem::ResetMetadata() { void ConfigureFilesystem::ResetMetadata() {
if (!Common::FS::Exists(Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir) / if (!Common::FS::Exists(Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir) /
"game_list/")) { "game_list/")) {
QMessageBox::information(this, tr("Reset Metadata Cache"), QMessageBox::information(this, tr("Reset Metadata Cache"),
tr("The metadata cache is already empty.")); tr("The metadata cache is already empty."));
} else if (Common::FS::RemoveDirRecursively( } else if (Common::FS::RemoveDirRecursively(
Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir) / "game_list")) { Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir) / "game_list")) {
QMessageBox::information(this, tr("Reset Metadata Cache"), QMessageBox::information(this, tr("Reset Metadata Cache"),
tr("The operation completed successfully.")); tr("The operation completed successfully."));
UISettings::values.is_game_list_reload_pending.exchange(true); UISettings::values.is_game_list_reload_pending.exchange(true);

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <QColorDialog> #include <QColorDialog>
@ -197,7 +197,7 @@ void ConfigureInputAdvanced::UpdateUIEnabled() {
ui->debug_configure->setEnabled(ui->debug_enabled->isChecked()); ui->debug_configure->setEnabled(ui->debug_enabled->isChecked());
ui->touchscreen_advanced->setEnabled(ui->touchscreen_enabled->isChecked()); ui->touchscreen_advanced->setEnabled(ui->touchscreen_enabled->isChecked());
ui->ring_controller_configure->setEnabled(ui->enable_ring_controller->isChecked()); ui->ring_controller_configure->setEnabled(ui->enable_ring_controller->isChecked());
#if QT_VERSION > QT_VERSION_CHECK(6, 0, 0) || !defined(YUZU_USE_QT_MULTIMEDIA) #if QT_VERSION > QT_VERSION_CHECK(6, 0, 0) || !defined(SUYU_USE_QT_MULTIMEDIA)
ui->enable_ir_sensor->setEnabled(false); ui->enable_ir_sensor->setEnabled(false);
ui->camera_configure->setEnabled(false); ui->camera_configure->setEnabled(false);
#endif #endif

View File

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2016 Citra Emulator Project // SPDX-FileCopyrightText: 2016 Citra Emulator Project & 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later // SPDX-License-Identifier: GPL-2.0-or-later
#include <algorithm> #include <algorithm>
@ -80,7 +80,7 @@ void ConfigurePerGameAddons::ApplyConfiguration() {
std::sort(disabled_addons.begin(), disabled_addons.end()); std::sort(disabled_addons.begin(), disabled_addons.end());
std::sort(current.begin(), current.end()); std::sort(current.begin(), current.end());
if (disabled_addons != current) { if (disabled_addons != current) {
Common::FS::RemoveFile(Common::FS::GetYuzuPath(Common::FS::YuzuPath::CacheDir) / Common::FS::RemoveFile(Common::FS::GetSuyuPath(Common::FS::SuyuPath::CacheDir) /
"game_list" / fmt::format("{:016X}.pv.txt", title_id)); "game_list" / fmt::format("{:016X}.pv.txt", title_id));
} }

Some files were not shown because too many files have changed in this diff Show More