mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-12-10 13:48:40 +00:00
More settings
This commit is contained in:
@@ -130,11 +130,7 @@ public:
|
|||||||
|
|
||||||
// General
|
// General
|
||||||
static ConfigEntry<int> volumeSlider(100);
|
static ConfigEntry<int> volumeSlider(100);
|
||||||
static ConfigEntry<string> logFilter("");
|
|
||||||
static ConfigEntry<string> logType("sync");
|
|
||||||
static ConfigEntry<string> userName("shadPS4");
|
static ConfigEntry<string> userName("shadPS4");
|
||||||
static ConfigEntry<bool> isConnectedToNetwork(false);
|
|
||||||
static bool enableDiscordRPC = false;
|
|
||||||
|
|
||||||
// Input
|
// Input
|
||||||
static ConfigEntry<int> cursorState(HideCursorState::Idle);
|
static ConfigEntry<int> cursorState(HideCursorState::Idle);
|
||||||
@@ -288,10 +284,6 @@ std::string getPresentMode() {
|
|||||||
return presentMode.get();
|
return presentMode.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool getEnableDiscordRPC() {
|
|
||||||
return enableDiscordRPC;
|
|
||||||
}
|
|
||||||
|
|
||||||
s16 getCursorState() {
|
s16 getCursorState() {
|
||||||
return cursorState.get();
|
return cursorState.get();
|
||||||
}
|
}
|
||||||
@@ -332,14 +324,6 @@ s32 getGpuId() {
|
|||||||
return gpuId.get();
|
return gpuId.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
string getLogFilter() {
|
|
||||||
return logFilter.get();
|
|
||||||
}
|
|
||||||
|
|
||||||
string getLogType() {
|
|
||||||
return logType.get();
|
|
||||||
}
|
|
||||||
|
|
||||||
string getUserName() {
|
string getUserName() {
|
||||||
return userName.get();
|
return userName.get();
|
||||||
}
|
}
|
||||||
@@ -451,14 +435,6 @@ void setVkGuestMarkersEnabled(bool enable, bool is_game_specific) {
|
|||||||
vkGuestMarkers.set(enable, is_game_specific);
|
vkGuestMarkers.set(enable, is_game_specific);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool getIsConnectedToNetwork() {
|
|
||||||
return isConnectedToNetwork.get();
|
|
||||||
}
|
|
||||||
|
|
||||||
void setConnectedToNetwork(bool enable, bool is_game_specific) {
|
|
||||||
isConnectedToNetwork.set(enable, is_game_specific);
|
|
||||||
}
|
|
||||||
|
|
||||||
void setGpuId(s32 selectedGpuId, bool is_game_specific) {
|
void setGpuId(s32 selectedGpuId, bool is_game_specific) {
|
||||||
gpuId.set(selectedGpuId, is_game_specific);
|
gpuId.set(selectedGpuId, is_game_specific);
|
||||||
}
|
}
|
||||||
@@ -555,10 +531,6 @@ void setPresentMode(std::string mode, bool is_game_specific) {
|
|||||||
presentMode.set(mode, is_game_specific);
|
presentMode.set(mode, is_game_specific);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setEnableDiscordRPC(bool enable) {
|
|
||||||
enableDiscordRPC = enable;
|
|
||||||
}
|
|
||||||
|
|
||||||
void setCursorState(s16 newCursorState, bool is_game_specific) {
|
void setCursorState(s16 newCursorState, bool is_game_specific) {
|
||||||
cursorState.set(newCursorState, is_game_specific);
|
cursorState.set(newCursorState, is_game_specific);
|
||||||
}
|
}
|
||||||
@@ -583,14 +555,6 @@ void setLanguage(u32 language, bool is_game_specific) {
|
|||||||
m_language.set(language, is_game_specific);
|
m_language.set(language, is_game_specific);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setLogType(const string& type, bool is_game_specific) {
|
|
||||||
logType.set(type, is_game_specific);
|
|
||||||
}
|
|
||||||
|
|
||||||
void setLogFilter(const string& type, bool is_game_specific) {
|
|
||||||
logFilter.set(type, is_game_specific);
|
|
||||||
}
|
|
||||||
|
|
||||||
void setUserName(const string& name, bool is_game_specific) {
|
void setUserName(const string& name, bool is_game_specific) {
|
||||||
userName.set(name, is_game_specific);
|
userName.set(name, is_game_specific);
|
||||||
}
|
}
|
||||||
@@ -696,11 +660,7 @@ void load(const std::filesystem::path& path, bool is_game_specific) {
|
|||||||
const toml::value& general = data.at("General");
|
const toml::value& general = data.at("General");
|
||||||
|
|
||||||
volumeSlider.setFromToml(general, "volumeSlider", is_game_specific);
|
volumeSlider.setFromToml(general, "volumeSlider", is_game_specific);
|
||||||
enableDiscordRPC = toml::find_or<bool>(general, "enableDiscordRPC", enableDiscordRPC);
|
|
||||||
logFilter.setFromToml(general, "logFilter", is_game_specific);
|
|
||||||
logType.setFromToml(general, "logType", is_game_specific);
|
|
||||||
userName.setFromToml(general, "userName", is_game_specific);
|
userName.setFromToml(general, "userName", is_game_specific);
|
||||||
isConnectedToNetwork.setFromToml(general, "isConnectedToNetwork", is_game_specific);
|
|
||||||
defaultControllerID.setFromToml(general, "defaultControllerID", is_game_specific);
|
defaultControllerID.setFromToml(general, "defaultControllerID", is_game_specific);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -870,10 +830,7 @@ void save(const std::filesystem::path& path, bool is_game_specific) {
|
|||||||
}
|
}
|
||||||
// Entries saved by the game-specific settings GUI
|
// Entries saved by the game-specific settings GUI
|
||||||
volumeSlider.setTomlValue(data, "General", "volumeSlider", is_game_specific);
|
volumeSlider.setTomlValue(data, "General", "volumeSlider", is_game_specific);
|
||||||
logFilter.setTomlValue(data, "General", "logFilter", is_game_specific);
|
|
||||||
logType.setTomlValue(data, "General", "logType", is_game_specific);
|
|
||||||
userName.setTomlValue(data, "General", "userName", is_game_specific);
|
userName.setTomlValue(data, "General", "userName", is_game_specific);
|
||||||
isConnectedToNetwork.setTomlValue(data, "General", "isConnectedToNetwork", is_game_specific);
|
|
||||||
|
|
||||||
cursorState.setTomlValue(data, "Input", "cursorState", is_game_specific);
|
cursorState.setTomlValue(data, "Input", "cursorState", is_game_specific);
|
||||||
cursorHideTimeout.setTomlValue(data, "Input", "cursorHideTimeout", is_game_specific);
|
cursorHideTimeout.setTomlValue(data, "Input", "cursorHideTimeout", is_game_specific);
|
||||||
@@ -951,7 +908,6 @@ void save(const std::filesystem::path& path, bool is_game_specific) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Non game-specific entries
|
// Non game-specific entries
|
||||||
data["General"]["enableDiscordRPC"] = enableDiscordRPC;
|
|
||||||
data["GUI"]["installDirs"] = install_dirs;
|
data["GUI"]["installDirs"] = install_dirs;
|
||||||
data["GUI"]["installDirsEnabled"] = install_dirs_enabled;
|
data["GUI"]["installDirsEnabled"] = install_dirs_enabled;
|
||||||
data["GUI"]["saveDataPath"] = string{fmt::UTF(save_data_path.u8string()).data};
|
data["GUI"]["saveDataPath"] = string{fmt::UTF(save_data_path.u8string()).data};
|
||||||
@@ -984,15 +940,12 @@ void setDefaultValues(bool is_game_specific) {
|
|||||||
if (is_game_specific) {
|
if (is_game_specific) {
|
||||||
readbacksEnabled.set(false, is_game_specific);
|
readbacksEnabled.set(false, is_game_specific);
|
||||||
readbackLinearImagesEnabled.set(false, is_game_specific);
|
readbackLinearImagesEnabled.set(false, is_game_specific);
|
||||||
isConnectedToNetwork.set(false, is_game_specific);
|
|
||||||
directMemoryAccessEnabled.set(false, is_game_specific);
|
directMemoryAccessEnabled.set(false, is_game_specific);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Entries with game-specific settings that are in both the game-specific and global GUI
|
// Entries with game-specific settings that are in both the game-specific and global GUI
|
||||||
// GS - General
|
// GS - General
|
||||||
volumeSlider.set(100, is_game_specific);
|
volumeSlider.set(100, is_game_specific);
|
||||||
logFilter.set("", is_game_specific);
|
|
||||||
logType.set("sync", is_game_specific);
|
|
||||||
userName.set("shadPS4", is_game_specific);
|
userName.set("shadPS4", is_game_specific);
|
||||||
|
|
||||||
// GS - Input
|
// GS - Input
|
||||||
@@ -1041,10 +994,6 @@ void setDefaultValues(bool is_game_specific) {
|
|||||||
|
|
||||||
// All other entries
|
// All other entries
|
||||||
if (!is_game_specific) {
|
if (!is_game_specific) {
|
||||||
|
|
||||||
// General
|
|
||||||
enableDiscordRPC = false;
|
|
||||||
|
|
||||||
// Input
|
// Input
|
||||||
useSpecialPad.base_value = false;
|
useSpecialPad.base_value = false;
|
||||||
specialPadClass.base_value = 1;
|
specialPadClass.base_value = 1;
|
||||||
|
|||||||
@@ -85,14 +85,8 @@ bool getVkHostMarkersEnabled();
|
|||||||
void setVkHostMarkersEnabled(bool enable, bool is_game_specific = false);
|
void setVkHostMarkersEnabled(bool enable, bool is_game_specific = false);
|
||||||
bool getVkGuestMarkersEnabled();
|
bool getVkGuestMarkersEnabled();
|
||||||
void setVkGuestMarkersEnabled(bool enable, bool is_game_specific = false);
|
void setVkGuestMarkersEnabled(bool enable, bool is_game_specific = false);
|
||||||
bool getEnableDiscordRPC();
|
|
||||||
void setEnableDiscordRPC(bool enable);
|
|
||||||
bool isRdocEnabled();
|
bool isRdocEnabled();
|
||||||
void setRdocEnabled(bool enable, bool is_game_specific = false);
|
void setRdocEnabled(bool enable, bool is_game_specific = false);
|
||||||
std::string getLogType();
|
|
||||||
void setLogType(const std::string& type, bool is_game_specific = false);
|
|
||||||
std::string getLogFilter();
|
|
||||||
void setLogFilter(const std::string& type, bool is_game_specific = false);
|
|
||||||
int getCursorHideTimeout();
|
int getCursorHideTimeout();
|
||||||
std::string getMainOutputDevice();
|
std::string getMainOutputDevice();
|
||||||
void setMainOutputDevice(std::string device, bool is_game_specific = false);
|
void setMainOutputDevice(std::string device, bool is_game_specific = false);
|
||||||
@@ -123,8 +117,6 @@ bool getRcasEnabled();
|
|||||||
void setRcasEnabled(bool enable, bool is_game_specific = false);
|
void setRcasEnabled(bool enable, bool is_game_specific = false);
|
||||||
int getRcasAttenuation();
|
int getRcasAttenuation();
|
||||||
void setRcasAttenuation(int value, bool is_game_specific = false);
|
void setRcasAttenuation(int value, bool is_game_specific = false);
|
||||||
bool getIsConnectedToNetwork();
|
|
||||||
void setConnectedToNetwork(bool enable, bool is_game_specific = false);
|
|
||||||
void setUserName(const std::string& name, bool is_game_specific = false);
|
void setUserName(const std::string& name, bool is_game_specific = false);
|
||||||
bool getLoadAutoPatches();
|
bool getLoadAutoPatches();
|
||||||
void setLoadAutoPatches(bool enable);
|
void setLoadAutoPatches(bool enable);
|
||||||
|
|||||||
@@ -22,6 +22,7 @@
|
|||||||
#include "common/path_util.h"
|
#include "common/path_util.h"
|
||||||
#include "common/string_util.h"
|
#include "common/string_util.h"
|
||||||
#include "common/thread.h"
|
#include "common/thread.h"
|
||||||
|
#include "core/emulator_settings.h"
|
||||||
|
|
||||||
namespace Common::Log {
|
namespace Common::Log {
|
||||||
|
|
||||||
@@ -139,7 +140,7 @@ public:
|
|||||||
const auto& log_dir = GetUserPath(PathType::LogDir);
|
const auto& log_dir = GetUserPath(PathType::LogDir);
|
||||||
std::filesystem::create_directory(log_dir);
|
std::filesystem::create_directory(log_dir);
|
||||||
Filter filter;
|
Filter filter;
|
||||||
filter.ParseFilterString(Config::getLogFilter());
|
filter.ParseFilterString(EmulatorSettings::GetInstance()->GetLogFilter());
|
||||||
const auto& log_file_path = log_file.empty() ? LOG_FILE : log_file;
|
const auto& log_file_path = log_file.empty() ? LOG_FILE : log_file;
|
||||||
instance = std::unique_ptr<Impl, decltype(&Deleter)>(
|
instance = std::unique_ptr<Impl, decltype(&Deleter)>(
|
||||||
new Impl(log_dir / log_file_path, filter), Deleter);
|
new Impl(log_dir / log_file_path, filter), Deleter);
|
||||||
@@ -220,7 +221,7 @@ public:
|
|||||||
.function = function,
|
.function = function,
|
||||||
.message = std::move(message),
|
.message = std::move(message),
|
||||||
};
|
};
|
||||||
if (Config::getLogType() == "async") {
|
if (EmulatorSettings::GetInstance()->GetLogType() == "async") {
|
||||||
message_queue.EmplaceWait(entry);
|
message_queue.EmplaceWait(entry);
|
||||||
} else {
|
} else {
|
||||||
ForEachBackend([&entry](auto& backend) { backend.Write(entry); });
|
ForEachBackend([&entry](auto& backend) { backend.Write(entry); });
|
||||||
|
|||||||
@@ -333,6 +333,10 @@ public:
|
|||||||
SETTING_FORWARD(m_general, TrophyNotificationSide, trophy_notification_side)
|
SETTING_FORWARD(m_general, TrophyNotificationSide, trophy_notification_side)
|
||||||
SETTING_FORWARD_BOOL(m_general, ShowSplash, show_splash)
|
SETTING_FORWARD_BOOL(m_general, ShowSplash, show_splash)
|
||||||
SETTING_FORWARD(m_general, AddonInstallDir, addon_install_dir)
|
SETTING_FORWARD(m_general, AddonInstallDir, addon_install_dir)
|
||||||
|
SETTING_FORWARD(m_general, LogFilter, log_filter)
|
||||||
|
SETTING_FORWARD(m_general, LogType, log_type)
|
||||||
|
SETTING_FORWARD_BOOL(m_general, ConnectedToNetwork, connected_to_network)
|
||||||
|
SETTING_FORWARD_BOOL(m_general, DiscorRPCEnabled, discord_rpc_enabled)
|
||||||
|
|
||||||
// Debug settings
|
// Debug settings
|
||||||
SETTING_FORWARD_BOOL(m_debug, SeparateLoggingEnabled, separate_logging_enabled)
|
SETTING_FORWARD_BOOL(m_debug, SeparateLoggingEnabled, separate_logging_enabled)
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include "common/config.h"
|
#include "common/config.h"
|
||||||
#include "common/logging/log.h"
|
#include "common/logging/log.h"
|
||||||
|
#include "core/emulator_settings.h"
|
||||||
#include "core/libraries/network/net_ctl_codes.h"
|
#include "core/libraries/network/net_ctl_codes.h"
|
||||||
#include "core/libraries/network/net_ctl_obj.h"
|
#include "core/libraries/network/net_ctl_obj.h"
|
||||||
#include "core/tls.h"
|
#include "core/tls.h"
|
||||||
@@ -46,8 +47,9 @@ s32 NetCtlInternal::RegisterNpToolkitCallback(OrbisNetCtlCallbackForNpToolkit fu
|
|||||||
|
|
||||||
void NetCtlInternal::CheckCallback() {
|
void NetCtlInternal::CheckCallback() {
|
||||||
std::scoped_lock lock{m_mutex};
|
std::scoped_lock lock{m_mutex};
|
||||||
const auto event = Config::getIsConnectedToNetwork() ? ORBIS_NET_CTL_EVENT_TYPE_IPOBTAINED
|
const auto event = EmulatorSettings::GetInstance()->IsConnectedToNetwork()
|
||||||
: ORBIS_NET_CTL_EVENT_TYPE_DISCONNECTED;
|
? ORBIS_NET_CTL_EVENT_TYPE_IPOBTAINED
|
||||||
|
: ORBIS_NET_CTL_EVENT_TYPE_DISCONNECTED;
|
||||||
for (const auto [func, arg] : callbacks) {
|
for (const auto [func, arg] : callbacks) {
|
||||||
if (func != nullptr) {
|
if (func != nullptr) {
|
||||||
Core::ExecuteGuest(func, event, arg);
|
Core::ExecuteGuest(func, event, arg);
|
||||||
@@ -57,8 +59,9 @@ void NetCtlInternal::CheckCallback() {
|
|||||||
|
|
||||||
void NetCtlInternal::CheckNpToolkitCallback() {
|
void NetCtlInternal::CheckNpToolkitCallback() {
|
||||||
std::scoped_lock lock{m_mutex};
|
std::scoped_lock lock{m_mutex};
|
||||||
const auto event = Config::getIsConnectedToNetwork() ? ORBIS_NET_CTL_EVENT_TYPE_IPOBTAINED
|
const auto event = EmulatorSettings::GetInstance()->IsConnectedToNetwork()
|
||||||
: ORBIS_NET_CTL_EVENT_TYPE_DISCONNECTED;
|
? ORBIS_NET_CTL_EVENT_TYPE_IPOBTAINED
|
||||||
|
: ORBIS_NET_CTL_EVENT_TYPE_DISCONNECTED;
|
||||||
for (const auto [func, arg] : nptool_callbacks) {
|
for (const auto [func, arg] : nptool_callbacks) {
|
||||||
if (func != nullptr) {
|
if (func != nullptr) {
|
||||||
Core::ExecuteGuest(func, event, arg);
|
Core::ExecuteGuest(func, event, arg);
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
#include <common/singleton.h>
|
#include <common/singleton.h>
|
||||||
#include "common/config.h"
|
#include "common/config.h"
|
||||||
#include "common/logging/log.h"
|
#include "common/logging/log.h"
|
||||||
|
#include "core/emulator_settings.h"
|
||||||
#include "core/libraries/error_codes.h"
|
#include "core/libraries/error_codes.h"
|
||||||
#include "core/libraries/libs.h"
|
#include "core/libraries/libs.h"
|
||||||
#include "core/libraries/network/net_ctl_codes.h"
|
#include "core/libraries/network/net_ctl_codes.h"
|
||||||
@@ -162,7 +163,7 @@ int PS4_SYSV_ABI sceNetCtlGetIfStat() {
|
|||||||
|
|
||||||
int PS4_SYSV_ABI sceNetCtlGetInfo(int code, OrbisNetCtlInfo* info) {
|
int PS4_SYSV_ABI sceNetCtlGetInfo(int code, OrbisNetCtlInfo* info) {
|
||||||
LOG_DEBUG(Lib_NetCtl, "code = {}", code);
|
LOG_DEBUG(Lib_NetCtl, "code = {}", code);
|
||||||
if (!Config::getIsConnectedToNetwork()) {
|
if (!EmulatorSettings::GetInstance()->IsConnectedToNetwork()) {
|
||||||
return ORBIS_NET_CTL_ERROR_NOT_CONNECTED;
|
return ORBIS_NET_CTL_ERROR_NOT_CONNECTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -180,8 +181,9 @@ int PS4_SYSV_ABI sceNetCtlGetInfo(int code, OrbisNetCtlInfo* info) {
|
|||||||
info->mtu = 1500; // default value
|
info->mtu = 1500; // default value
|
||||||
break;
|
break;
|
||||||
case ORBIS_NET_CTL_INFO_LINK:
|
case ORBIS_NET_CTL_INFO_LINK:
|
||||||
info->link = Config::getIsConnectedToNetwork() ? ORBIS_NET_CTL_LINK_CONNECTED
|
info->link = EmulatorSettings::GetInstance()->IsConnectedToNetwork()
|
||||||
: ORBIS_NET_CTL_LINK_DISCONNECTED;
|
? ORBIS_NET_CTL_LINK_CONNECTED
|
||||||
|
: ORBIS_NET_CTL_LINK_DISCONNECTED;
|
||||||
break;
|
break;
|
||||||
case ORBIS_NET_CTL_INFO_IP_ADDRESS: {
|
case ORBIS_NET_CTL_INFO_IP_ADDRESS: {
|
||||||
strcpy(info->ip_address,
|
strcpy(info->ip_address,
|
||||||
@@ -318,7 +320,7 @@ int PS4_SYSV_ABI sceNetCtlGetScanInfoForSsidScanIpcInt() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int PS4_SYSV_ABI sceNetCtlGetState(int* state) {
|
int PS4_SYSV_ABI sceNetCtlGetState(int* state) {
|
||||||
const auto connected = Config::getIsConnectedToNetwork();
|
const auto connected = EmulatorSettings::GetInstance()->IsConnectedToNetwork();
|
||||||
LOG_DEBUG(Lib_NetCtl, "connected = {}", connected);
|
LOG_DEBUG(Lib_NetCtl, "connected = {}", connected);
|
||||||
const auto current_state =
|
const auto current_state =
|
||||||
connected ? ORBIS_NET_CTL_STATE_IPOBTAINED : ORBIS_NET_CTL_STATE_DISCONNECTED;
|
connected ? ORBIS_NET_CTL_STATE_IPOBTAINED : ORBIS_NET_CTL_STATE_DISCONNECTED;
|
||||||
|
|||||||
@@ -203,10 +203,11 @@ void Emulator::Run(std::filesystem::path file, std::vector<std::string> args,
|
|||||||
Common::FS::GetUserPath(Common::FS::PathType::CustomConfigs) / (id + ".toml"));
|
Common::FS::GetUserPath(Common::FS::PathType::CustomConfigs) / (id + ".toml"));
|
||||||
LOG_INFO(Config, "Game-specific config exists: {}", has_game_config);
|
LOG_INFO(Config, "Game-specific config exists: {}", has_game_config);
|
||||||
|
|
||||||
LOG_INFO(Config, "General LogType: {}", Config::getLogType());
|
LOG_INFO(Config, "General LogType: {}", EmulatorSettings::GetInstance()->GetLogType());
|
||||||
LOG_INFO(Config, "General isNeo: {}", EmulatorSettings::GetInstance()->IsNeo());
|
LOG_INFO(Config, "General isNeo: {}", EmulatorSettings::GetInstance()->IsNeo());
|
||||||
LOG_INFO(Config, "General isDevKit: {}", EmulatorSettings::GetInstance()->IsDevKit());
|
LOG_INFO(Config, "General isDevKit: {}", EmulatorSettings::GetInstance()->IsDevKit());
|
||||||
LOG_INFO(Config, "General isConnectedToNetwork: {}", Config::getIsConnectedToNetwork());
|
LOG_INFO(Config, "General isConnectedToNetwork: {}",
|
||||||
|
EmulatorSettings::GetInstance()->IsConnectedToNetwork());
|
||||||
LOG_INFO(Config, "General isPsnSignedIn: {}", EmulatorSettings::GetInstance()->IsPSNSignedIn());
|
LOG_INFO(Config, "General isPsnSignedIn: {}", EmulatorSettings::GetInstance()->IsPSNSignedIn());
|
||||||
LOG_INFO(Config, "GPU isNullGpu: {}", Config::nullGpu());
|
LOG_INFO(Config, "GPU isNullGpu: {}", Config::nullGpu());
|
||||||
LOG_INFO(Config, "GPU readbacks: {}", Config::readbacks());
|
LOG_INFO(Config, "GPU readbacks: {}", Config::readbacks());
|
||||||
@@ -358,7 +359,7 @@ void Emulator::Run(std::filesystem::path file, std::vector<std::string> args,
|
|||||||
|
|
||||||
#ifdef ENABLE_DISCORD_RPC
|
#ifdef ENABLE_DISCORD_RPC
|
||||||
// Discord RPC
|
// Discord RPC
|
||||||
if (Config::getEnableDiscordRPC()) {
|
if (EmulatorSettings::GetInstance()->IsDiscorRPCEnabled()) {
|
||||||
auto* rpc = Common::Singleton<DiscordRPCHandler::RPC>::Instance();
|
auto* rpc = Common::Singleton<DiscordRPCHandler::RPC>::Instance();
|
||||||
if (rpc->getRPCEnabled() == false) {
|
if (rpc->getRPCEnabled() == false) {
|
||||||
rpc->init();
|
rpc->init();
|
||||||
|
|||||||
Reference in New Issue
Block a user