mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-23 07:12:46 +01:00
Merge pull request #2942 from ReinUsesLisp/clang-warnings
Silence miscellaneous warnings
This commit is contained in:
commit
deecd7f074
36 changed files with 68 additions and 58 deletions
|
@ -713,7 +713,6 @@ const std::string& GetUserPath(UserPath path, const std::string& new_path) {
|
||||||
case UserPath::RootDir:
|
case UserPath::RootDir:
|
||||||
user_path = paths[UserPath::RootDir] + DIR_SEP;
|
user_path = paths[UserPath::RootDir] + DIR_SEP;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case UserPath::UserDir:
|
case UserPath::UserDir:
|
||||||
user_path = paths[UserPath::RootDir] + DIR_SEP;
|
user_path = paths[UserPath::RootDir] + DIR_SEP;
|
||||||
paths[UserPath::ConfigDir] = user_path + CONFIG_DIR DIR_SEP;
|
paths[UserPath::ConfigDir] = user_path + CONFIG_DIR DIR_SEP;
|
||||||
|
@ -721,6 +720,8 @@ const std::string& GetUserPath(UserPath path, const std::string& new_path) {
|
||||||
paths[UserPath::SDMCDir] = user_path + SDMC_DIR DIR_SEP;
|
paths[UserPath::SDMCDir] = user_path + SDMC_DIR DIR_SEP;
|
||||||
paths[UserPath::NANDDir] = user_path + NAND_DIR DIR_SEP;
|
paths[UserPath::NANDDir] = user_path + NAND_DIR DIR_SEP;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -147,6 +147,7 @@ private:
|
||||||
void GetAccumulatedSuspendedTickValue(Kernel::HLERequestContext& ctx);
|
void GetAccumulatedSuspendedTickValue(Kernel::HLERequestContext& ctx);
|
||||||
void GetAccumulatedSuspendedTickChangedEvent(Kernel::HLERequestContext& ctx);
|
void GetAccumulatedSuspendedTickChangedEvent(Kernel::HLERequestContext& ctx);
|
||||||
|
|
||||||
|
Core::System& system;
|
||||||
std::shared_ptr<NVFlinger::NVFlinger> nvflinger;
|
std::shared_ptr<NVFlinger::NVFlinger> nvflinger;
|
||||||
Kernel::EventPair launchable_event;
|
Kernel::EventPair launchable_event;
|
||||||
Kernel::EventPair accumulated_suspended_tick_changed_event;
|
Kernel::EventPair accumulated_suspended_tick_changed_event;
|
||||||
|
@ -154,8 +155,6 @@ private:
|
||||||
u32 idle_time_detection_extension = 0;
|
u32 idle_time_detection_extension = 0;
|
||||||
u64 num_fatal_sections_entered = 0;
|
u64 num_fatal_sections_entered = 0;
|
||||||
bool is_auto_sleep_disabled = false;
|
bool is_auto_sleep_disabled = false;
|
||||||
|
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class ICommonStateGetter final : public ServiceFramework<ICommonStateGetter> {
|
class ICommonStateGetter final : public ServiceFramework<ICommonStateGetter> {
|
||||||
|
|
|
@ -13,7 +13,7 @@ constexpr PerformanceConfiguration DEFAULT_PERFORMANCE_CONFIGURATION =
|
||||||
PerformanceConfiguration::Config7;
|
PerformanceConfiguration::Config7;
|
||||||
|
|
||||||
Controller::Controller(Core::Timing::CoreTiming& core_timing)
|
Controller::Controller(Core::Timing::CoreTiming& core_timing)
|
||||||
: core_timing(core_timing), configs{
|
: core_timing{core_timing}, configs{
|
||||||
{PerformanceMode::Handheld, DEFAULT_PERFORMANCE_CONFIGURATION},
|
{PerformanceMode::Handheld, DEFAULT_PERFORMANCE_CONFIGURATION},
|
||||||
{PerformanceMode::Docked, DEFAULT_PERFORMANCE_CONFIGURATION},
|
{PerformanceMode::Docked, DEFAULT_PERFORMANCE_CONFIGURATION},
|
||||||
} {}
|
} {}
|
||||||
|
@ -63,6 +63,7 @@ PerformanceConfiguration Controller::GetCurrentPerformanceConfiguration(Performa
|
||||||
void Controller::SetClockSpeed(u32 mhz) {
|
void Controller::SetClockSpeed(u32 mhz) {
|
||||||
LOG_INFO(Service_APM, "called, mhz={:08X}", mhz);
|
LOG_INFO(Service_APM, "called, mhz={:08X}", mhz);
|
||||||
// TODO(DarkLordZach): Actually signal core_timing to change clock speed.
|
// TODO(DarkLordZach): Actually signal core_timing to change clock speed.
|
||||||
|
// TODO(Rodrigo): Remove [[maybe_unused]] when core_timing is used.
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Service::APM
|
} // namespace Service::APM
|
||||||
|
|
|
@ -50,7 +50,7 @@ enum class PerformanceMode : u8 {
|
||||||
// system during times of high load -- this simply maps to different PerformanceConfigs to use.
|
// system during times of high load -- this simply maps to different PerformanceConfigs to use.
|
||||||
class Controller {
|
class Controller {
|
||||||
public:
|
public:
|
||||||
Controller(Core::Timing::CoreTiming& core_timing);
|
explicit Controller(Core::Timing::CoreTiming& core_timing);
|
||||||
~Controller();
|
~Controller();
|
||||||
|
|
||||||
void SetPerformanceConfiguration(PerformanceMode mode, PerformanceConfiguration config);
|
void SetPerformanceConfiguration(PerformanceMode mode, PerformanceConfiguration config);
|
||||||
|
@ -62,9 +62,9 @@ public:
|
||||||
private:
|
private:
|
||||||
void SetClockSpeed(u32 mhz);
|
void SetClockSpeed(u32 mhz);
|
||||||
|
|
||||||
std::map<PerformanceMode, PerformanceConfiguration> configs;
|
[[maybe_unused]] Core::Timing::CoreTiming& core_timing;
|
||||||
|
|
||||||
Core::Timing::CoreTiming& core_timing;
|
std::map<PerformanceMode, PerformanceConfiguration> configs;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Service::APM
|
} // namespace Service::APM
|
||||||
|
|
|
@ -205,7 +205,7 @@ private:
|
||||||
AudioCore::StreamPtr stream;
|
AudioCore::StreamPtr stream;
|
||||||
std::string device_name;
|
std::string device_name;
|
||||||
|
|
||||||
AudoutParams audio_params{};
|
[[maybe_unused]] AudoutParams audio_params {};
|
||||||
|
|
||||||
/// This is the event handle used to check if the audio buffer was released
|
/// This is the event handle used to check if the audio buffer was released
|
||||||
Kernel::EventPair buffer_event;
|
Kernel::EventPair buffer_event;
|
||||||
|
|
|
@ -88,7 +88,7 @@ std::ostream& operator<<(std::ostream& os, DownloadResult result) {
|
||||||
|
|
||||||
constexpr u32 PORT = 443;
|
constexpr u32 PORT = 443;
|
||||||
constexpr u32 TIMEOUT_SECONDS = 30;
|
constexpr u32 TIMEOUT_SECONDS = 30;
|
||||||
constexpr u64 VFS_COPY_BLOCK_SIZE = 1ull << 24; // 4MB
|
[[maybe_unused]] constexpr u64 VFS_COPY_BLOCK_SIZE = 1ULL << 24; // 4MB
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
|
|
|
@ -567,7 +567,7 @@ std::unique_ptr<Backend> CreateBackendFromSettings(DirectoryGetter getter) {
|
||||||
|
|
||||||
Module::Interface::Interface(std::shared_ptr<Module> module, FileSystem::FileSystemController& fsc,
|
Module::Interface::Interface(std::shared_ptr<Module> module, FileSystem::FileSystemController& fsc,
|
||||||
const char* name)
|
const char* name)
|
||||||
: ServiceFramework(name), module(std::move(module)), fsc(fsc),
|
: ServiceFramework(name), fsc(fsc), module(std::move(module)),
|
||||||
backend(CreateBackendFromSettings([&fsc](u64 tid) { return fsc.GetBCATDirectory(tid); })) {}
|
backend(CreateBackendFromSettings([&fsc](u64 tid) { return fsc.GetBCATDirectory(tid); })) {}
|
||||||
|
|
||||||
Module::Interface::~Interface() = default;
|
Module::Interface::~Interface() = default;
|
||||||
|
|
|
@ -803,7 +803,7 @@ void FSP_SRV::CreateSaveDataFileSystem(Kernel::HLERequestContext& ctx) {
|
||||||
IPC::RequestParser rp{ctx};
|
IPC::RequestParser rp{ctx};
|
||||||
|
|
||||||
auto save_struct = rp.PopRaw<FileSys::SaveDataDescriptor>();
|
auto save_struct = rp.PopRaw<FileSys::SaveDataDescriptor>();
|
||||||
auto save_create_struct = rp.PopRaw<std::array<u8, 0x40>>();
|
[[maybe_unused]] auto save_create_struct = rp.PopRaw<std::array<u8, 0x40>>();
|
||||||
u128 uid = rp.PopRaw<u128>();
|
u128 uid = rp.PopRaw<u128>();
|
||||||
|
|
||||||
LOG_DEBUG(Service_FS, "called save_struct = {}, uid = {:016X}{:016X}", save_struct.DebugInfo(),
|
LOG_DEBUG(Service_FS, "called save_struct = {}, uid = {:016X}{:016X}", save_struct.DebugInfo(),
|
||||||
|
|
|
@ -237,7 +237,6 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
Common::UUID uuid;
|
Common::UUID uuid;
|
||||||
bool is_event_created = false;
|
|
||||||
Kernel::EventPair notification_event;
|
Kernel::EventPair notification_event;
|
||||||
std::queue<SizedNotificationInfo> notifications;
|
std::queue<SizedNotificationInfo> notifications;
|
||||||
States states{};
|
States states{};
|
||||||
|
|
|
@ -11,11 +11,10 @@
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
|
|
||||||
constexpr s32 HID_JOYSTICK_MAX = 0x7fff;
|
constexpr s32 HID_JOYSTICK_MAX = 0x7fff;
|
||||||
constexpr s32 HID_JOYSTICK_MIN = -0x7fff;
|
[[maybe_unused]] constexpr s32 HID_JOYSTICK_MIN = -0x7fff;
|
||||||
enum class JoystickId : std::size_t { Joystick_Left, Joystick_Right };
|
enum class JoystickId : std::size_t { Joystick_Left, Joystick_Right };
|
||||||
|
|
||||||
Controller_DebugPad::Controller_DebugPad(Core::System& system)
|
Controller_DebugPad::Controller_DebugPad(Core::System& system) : ControllerBase(system) {}
|
||||||
: ControllerBase(system), system(system) {}
|
|
||||||
Controller_DebugPad::~Controller_DebugPad() = default;
|
Controller_DebugPad::~Controller_DebugPad() = default;
|
||||||
|
|
||||||
void Controller_DebugPad::OnInit() {}
|
void Controller_DebugPad::OnInit() {}
|
||||||
|
|
|
@ -89,6 +89,5 @@ private:
|
||||||
buttons;
|
buttons;
|
||||||
std::array<std::unique_ptr<Input::AnalogDevice>, Settings::NativeAnalog::NUM_STICKS_HID>
|
std::array<std::unique_ptr<Input::AnalogDevice>, Settings::NativeAnalog::NUM_STICKS_HID>
|
||||||
analogs;
|
analogs;
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -10,8 +10,7 @@
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3BA00;
|
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3BA00;
|
||||||
|
|
||||||
Controller_Gesture::Controller_Gesture(Core::System& system)
|
Controller_Gesture::Controller_Gesture(Core::System& system) : ControllerBase(system) {}
|
||||||
: ControllerBase(system), system(system) {}
|
|
||||||
Controller_Gesture::~Controller_Gesture() = default;
|
Controller_Gesture::~Controller_Gesture() = default;
|
||||||
|
|
||||||
void Controller_Gesture::OnInit() {}
|
void Controller_Gesture::OnInit() {}
|
||||||
|
|
|
@ -59,6 +59,5 @@ private:
|
||||||
std::array<GestureState, 17> gesture_states;
|
std::array<GestureState, 17> gesture_states;
|
||||||
};
|
};
|
||||||
SharedMemory shared_memory{};
|
SharedMemory shared_memory{};
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -12,8 +12,7 @@ namespace Service::HID {
|
||||||
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3800;
|
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3800;
|
||||||
constexpr u8 KEYS_PER_BYTE = 8;
|
constexpr u8 KEYS_PER_BYTE = 8;
|
||||||
|
|
||||||
Controller_Keyboard::Controller_Keyboard(Core::System& system)
|
Controller_Keyboard::Controller_Keyboard(Core::System& system) : ControllerBase(system) {}
|
||||||
: ControllerBase(system), system(system) {}
|
|
||||||
Controller_Keyboard::~Controller_Keyboard() = default;
|
Controller_Keyboard::~Controller_Keyboard() = default;
|
||||||
|
|
||||||
void Controller_Keyboard::OnInit() {}
|
void Controller_Keyboard::OnInit() {}
|
||||||
|
|
|
@ -53,6 +53,5 @@ private:
|
||||||
keyboard_keys;
|
keyboard_keys;
|
||||||
std::array<std::unique_ptr<Input::ButtonDevice>, Settings::NativeKeyboard::NumKeyboardMods>
|
std::array<std::unique_ptr<Input::ButtonDevice>, Settings::NativeKeyboard::NumKeyboardMods>
|
||||||
keyboard_mods;
|
keyboard_mods;
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3400;
|
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3400;
|
||||||
|
|
||||||
Controller_Mouse::Controller_Mouse(Core::System& system) : ControllerBase(system), system(system) {}
|
Controller_Mouse::Controller_Mouse(Core::System& system) : ControllerBase(system) {}
|
||||||
Controller_Mouse::~Controller_Mouse() = default;
|
Controller_Mouse::~Controller_Mouse() = default;
|
||||||
|
|
||||||
void Controller_Mouse::OnInit() {}
|
void Controller_Mouse::OnInit() {}
|
||||||
|
|
|
@ -53,6 +53,5 @@ private:
|
||||||
std::unique_ptr<Input::MouseDevice> mouse_device;
|
std::unique_ptr<Input::MouseDevice> mouse_device;
|
||||||
std::array<std::unique_ptr<Input::ButtonDevice>, Settings::NativeMouseButton::NumMouseButtons>
|
std::array<std::unique_ptr<Input::ButtonDevice>, Settings::NativeMouseButton::NumMouseButtons>
|
||||||
mouse_button_devices;
|
mouse_button_devices;
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
|
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
constexpr s32 HID_JOYSTICK_MAX = 0x7fff;
|
constexpr s32 HID_JOYSTICK_MAX = 0x7fff;
|
||||||
constexpr s32 HID_JOYSTICK_MIN = -0x7fff;
|
[[maybe_unused]] constexpr s32 HID_JOYSTICK_MIN = -0x7fff;
|
||||||
constexpr std::size_t NPAD_OFFSET = 0x9A00;
|
constexpr std::size_t NPAD_OFFSET = 0x9A00;
|
||||||
constexpr u32 BATTERY_FULL = 2;
|
constexpr u32 BATTERY_FULL = 2;
|
||||||
constexpr u32 MAX_NPAD_ID = 7;
|
constexpr u32 MAX_NPAD_ID = 7;
|
||||||
|
@ -105,6 +105,8 @@ void Controller_NPad::InitNewlyAddedControler(std::size_t controller_idx) {
|
||||||
controller.joy_styles.raw = 0; // Zero out
|
controller.joy_styles.raw = 0; // Zero out
|
||||||
controller.device_type.raw = 0;
|
controller.device_type.raw = 0;
|
||||||
switch (controller_type) {
|
switch (controller_type) {
|
||||||
|
case NPadControllerType::None:
|
||||||
|
UNREACHABLE();
|
||||||
case NPadControllerType::Handheld:
|
case NPadControllerType::Handheld:
|
||||||
controller.joy_styles.handheld.Assign(1);
|
controller.joy_styles.handheld.Assign(1);
|
||||||
controller.device_type.handheld.Assign(1);
|
controller.device_type.handheld.Assign(1);
|
||||||
|
@ -239,7 +241,7 @@ void Controller_NPad::OnRelease() {}
|
||||||
|
|
||||||
void Controller_NPad::RequestPadStateUpdate(u32 npad_id) {
|
void Controller_NPad::RequestPadStateUpdate(u32 npad_id) {
|
||||||
const auto controller_idx = NPadIdToIndex(npad_id);
|
const auto controller_idx = NPadIdToIndex(npad_id);
|
||||||
const auto controller_type = connected_controllers[controller_idx].type;
|
[[maybe_unused]] const auto controller_type = connected_controllers[controller_idx].type;
|
||||||
if (!connected_controllers[controller_idx].is_connected) {
|
if (!connected_controllers[controller_idx].is_connected) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -346,6 +348,8 @@ void Controller_NPad::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
|
||||||
libnx_entry.connection_status.raw = 0;
|
libnx_entry.connection_status.raw = 0;
|
||||||
|
|
||||||
switch (controller_type) {
|
switch (controller_type) {
|
||||||
|
case NPadControllerType::None:
|
||||||
|
UNREACHABLE();
|
||||||
case NPadControllerType::Handheld:
|
case NPadControllerType::Handheld:
|
||||||
handheld_entry.connection_status.raw = 0;
|
handheld_entry.connection_status.raw = 0;
|
||||||
handheld_entry.connection_status.IsWired.Assign(1);
|
handheld_entry.connection_status.IsWired.Assign(1);
|
||||||
|
|
|
@ -9,8 +9,7 @@
|
||||||
|
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
|
|
||||||
Controller_Stubbed::Controller_Stubbed(Core::System& system)
|
Controller_Stubbed::Controller_Stubbed(Core::System& system) : ControllerBase(system) {}
|
||||||
: ControllerBase(system), system(system) {}
|
|
||||||
Controller_Stubbed::~Controller_Stubbed() = default;
|
Controller_Stubbed::~Controller_Stubbed() = default;
|
||||||
|
|
||||||
void Controller_Stubbed::OnInit() {}
|
void Controller_Stubbed::OnInit() {}
|
||||||
|
|
|
@ -30,6 +30,5 @@ public:
|
||||||
private:
|
private:
|
||||||
bool smart_update{};
|
bool smart_update{};
|
||||||
std::size_t common_offset{};
|
std::size_t common_offset{};
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -13,8 +13,7 @@
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x400;
|
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x400;
|
||||||
|
|
||||||
Controller_Touchscreen::Controller_Touchscreen(Core::System& system)
|
Controller_Touchscreen::Controller_Touchscreen(Core::System& system) : ControllerBase(system) {}
|
||||||
: ControllerBase(system), system(system) {}
|
|
||||||
Controller_Touchscreen::~Controller_Touchscreen() = default;
|
Controller_Touchscreen::~Controller_Touchscreen() = default;
|
||||||
|
|
||||||
void Controller_Touchscreen::OnInit() {}
|
void Controller_Touchscreen::OnInit() {}
|
||||||
|
|
|
@ -69,6 +69,5 @@ private:
|
||||||
TouchScreenSharedMemory shared_memory{};
|
TouchScreenSharedMemory shared_memory{};
|
||||||
std::unique_ptr<Input::TouchDevice> touch_device;
|
std::unique_ptr<Input::TouchDevice> touch_device;
|
||||||
s64_le last_touch{};
|
s64_le last_touch{};
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
namespace Service::HID {
|
namespace Service::HID {
|
||||||
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3C00;
|
constexpr std::size_t SHARED_MEMORY_OFFSET = 0x3C00;
|
||||||
|
|
||||||
Controller_XPad::Controller_XPad(Core::System& system) : ControllerBase(system), system(system) {}
|
Controller_XPad::Controller_XPad(Core::System& system) : ControllerBase(system) {}
|
||||||
Controller_XPad::~Controller_XPad() = default;
|
Controller_XPad::~Controller_XPad() = default;
|
||||||
|
|
||||||
void Controller_XPad::OnInit() {}
|
void Controller_XPad::OnInit() {}
|
||||||
|
|
|
@ -56,6 +56,5 @@ private:
|
||||||
};
|
};
|
||||||
static_assert(sizeof(SharedMemory) == 0x1000, "SharedMemory is an invalid size");
|
static_assert(sizeof(SharedMemory) == 0x1000, "SharedMemory is an invalid size");
|
||||||
SharedMemory shared_memory{};
|
SharedMemory shared_memory{};
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
} // namespace Service::HID
|
} // namespace Service::HID
|
||||||
|
|
|
@ -38,8 +38,10 @@ namespace Service::HID {
|
||||||
// Updating period for each HID device.
|
// Updating period for each HID device.
|
||||||
// TODO(ogniK): Find actual polling rate of hid
|
// TODO(ogniK): Find actual polling rate of hid
|
||||||
constexpr s64 pad_update_ticks = static_cast<s64>(Core::Timing::BASE_CLOCK_RATE / 66);
|
constexpr s64 pad_update_ticks = static_cast<s64>(Core::Timing::BASE_CLOCK_RATE / 66);
|
||||||
constexpr s64 accelerometer_update_ticks = static_cast<s64>(Core::Timing::BASE_CLOCK_RATE / 100);
|
[[maybe_unused]] constexpr s64 accelerometer_update_ticks =
|
||||||
constexpr s64 gyroscope_update_ticks = static_cast<s64>(Core::Timing::BASE_CLOCK_RATE / 100);
|
static_cast<s64>(Core::Timing::BASE_CLOCK_RATE / 100);
|
||||||
|
[[maybe_unused]] constexpr s64 gyroscope_update_ticks =
|
||||||
|
static_cast<s64>(Core::Timing::BASE_CLOCK_RATE / 100);
|
||||||
constexpr std::size_t SHARED_MEMORY_SIZE = 0x40000;
|
constexpr std::size_t SHARED_MEMORY_SIZE = 0x40000;
|
||||||
|
|
||||||
IAppletResource::IAppletResource(Core::System& system)
|
IAppletResource::IAppletResource(Core::System& system)
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
namespace Service::NFP {
|
namespace Service::NFP {
|
||||||
|
|
||||||
namespace ErrCodes {
|
namespace ErrCodes {
|
||||||
constexpr ResultCode ERR_TAG_FAILED(ErrorModule::NFP,
|
[[maybe_unused]] constexpr ResultCode ERR_TAG_FAILED(ErrorModule::NFP,
|
||||||
-1); // TODO(ogniK): Find the actual error code
|
-1); // TODO(ogniK): Find the actual error code
|
||||||
constexpr ResultCode ERR_NO_APPLICATION_AREA(ErrorModule::NFP, 152);
|
constexpr ResultCode ERR_NO_APPLICATION_AREA(ErrorModule::NFP, 152);
|
||||||
} // namespace ErrCodes
|
} // namespace ErrCodes
|
||||||
|
@ -35,7 +35,7 @@ Module::Interface::~Interface() = default;
|
||||||
class IUser final : public ServiceFramework<IUser> {
|
class IUser final : public ServiceFramework<IUser> {
|
||||||
public:
|
public:
|
||||||
IUser(Module::Interface& nfp_interface, Core::System& system)
|
IUser(Module::Interface& nfp_interface, Core::System& system)
|
||||||
: ServiceFramework("NFP::IUser"), nfp_interface(nfp_interface), system(system) {
|
: ServiceFramework("NFP::IUser"), nfp_interface(nfp_interface) {
|
||||||
static const FunctionInfo functions[] = {
|
static const FunctionInfo functions[] = {
|
||||||
{0, &IUser::Initialize, "Initialize"},
|
{0, &IUser::Initialize, "Initialize"},
|
||||||
{1, &IUser::Finalize, "Finalize"},
|
{1, &IUser::Finalize, "Finalize"},
|
||||||
|
@ -183,6 +183,8 @@ private:
|
||||||
case DeviceState::TagRemoved:
|
case DeviceState::TagRemoved:
|
||||||
device_state = DeviceState::Initialized;
|
device_state = DeviceState::Initialized;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
IPC::ResponseBuilder rb{ctx, 2};
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
rb.Push(RESULT_SUCCESS);
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
@ -324,7 +326,6 @@ private:
|
||||||
Kernel::EventPair deactivate_event;
|
Kernel::EventPair deactivate_event;
|
||||||
Kernel::EventPair availability_change_event;
|
Kernel::EventPair availability_change_event;
|
||||||
const Module::Interface& nfp_interface;
|
const Module::Interface& nfp_interface;
|
||||||
Core::System& system;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
void Module::Interface::CreateUserInterface(Kernel::HLERequestContext& ctx) {
|
void Module::Interface::CreateUserInterface(Kernel::HLERequestContext& ctx) {
|
||||||
|
|
|
@ -45,6 +45,8 @@ u32 nvhost_as_gpu::ioctl(Ioctl command, const std::vector<u8>& input, const std:
|
||||||
return GetVARegions(input, output);
|
return GetVARegions(input, output);
|
||||||
case IoctlCommand::IocUnmapBufferCommand:
|
case IoctlCommand::IocUnmapBufferCommand:
|
||||||
return UnmapBuffer(input, output);
|
return UnmapBuffer(input, output);
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (static_cast<IoctlCommand>(command.cmd.Value()) == IoctlCommand::IocRemapCommand)
|
if (static_cast<IoctlCommand>(command.cmd.Value()) == IoctlCommand::IocRemapCommand)
|
||||||
|
|
|
@ -38,10 +38,11 @@ u32 nvhost_ctrl::ioctl(Ioctl command, const std::vector<u8>& input, const std::v
|
||||||
return IocCtrlEventUnregister(input, output);
|
return IocCtrlEventUnregister(input, output);
|
||||||
case IoctlCommand::IocCtrlEventSignalCommand:
|
case IoctlCommand::IocCtrlEventSignalCommand:
|
||||||
return IocCtrlEventSignal(input, output);
|
return IocCtrlEventSignal(input, output);
|
||||||
}
|
default:
|
||||||
UNIMPLEMENTED_MSG("Unimplemented ioctl");
|
UNIMPLEMENTED_MSG("Unimplemented ioctl");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
u32 nvhost_ctrl::NvOsGetConfigU32(const std::vector<u8>& input, std::vector<u8>& output) {
|
u32 nvhost_ctrl::NvOsGetConfigU32(const std::vector<u8>& input, std::vector<u8>& output) {
|
||||||
IocGetConfigParams params{};
|
IocGetConfigParams params{};
|
||||||
|
|
|
@ -40,10 +40,11 @@ u32 nvhost_ctrl_gpu::ioctl(Ioctl command, const std::vector<u8>& input,
|
||||||
return FlushL2(input, output);
|
return FlushL2(input, output);
|
||||||
case IoctlCommand::IocGetGpuTime:
|
case IoctlCommand::IocGetGpuTime:
|
||||||
return GetGpuTime(input, output);
|
return GetGpuTime(input, output);
|
||||||
}
|
default:
|
||||||
UNIMPLEMENTED_MSG("Unimplemented ioctl");
|
UNIMPLEMENTED_MSG("Unimplemented ioctl");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
u32 nvhost_ctrl_gpu::GetCharacteristics(const std::vector<u8>& input, std::vector<u8>& output,
|
u32 nvhost_ctrl_gpu::GetCharacteristics(const std::vector<u8>& input, std::vector<u8>& output,
|
||||||
std::vector<u8>& output2, IoctlVersion version) {
|
std::vector<u8>& output2, IoctlVersion version) {
|
||||||
|
|
|
@ -44,6 +44,8 @@ u32 nvhost_gpu::ioctl(Ioctl command, const std::vector<u8>& input, const std::ve
|
||||||
return GetWaitbase(input, output);
|
return GetWaitbase(input, output);
|
||||||
case IoctlCommand::IocChannelSetTimeoutCommand:
|
case IoctlCommand::IocChannelSetTimeoutCommand:
|
||||||
return ChannelSetTimeout(input, output);
|
return ChannelSetTimeout(input, output);
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (command.group == NVGPU_IOCTL_MAGIC) {
|
if (command.group == NVGPU_IOCTL_MAGIC) {
|
||||||
|
|
|
@ -73,6 +73,8 @@ std::pair<QString, QString> ConfigureService::BCATDownloadEvents() {
|
||||||
const auto res = Service::BCAT::Boxcat::GetStatus(global, map);
|
const auto res = Service::BCAT::Boxcat::GetStatus(global, map);
|
||||||
|
|
||||||
switch (res) {
|
switch (res) {
|
||||||
|
case Service::BCAT::Boxcat::StatusResult::Success:
|
||||||
|
break;
|
||||||
case Service::BCAT::Boxcat::StatusResult::Offline:
|
case Service::BCAT::Boxcat::StatusResult::Offline:
|
||||||
return {QString{},
|
return {QString{},
|
||||||
tr("The boxcat service is offline or you are not connected to the internet.")};
|
tr("The boxcat service is offline or you are not connected to the internet.")};
|
||||||
|
|
|
@ -172,9 +172,7 @@ void GameList::onTextChanged(const QString& new_text) {
|
||||||
const int folder_count = tree_view->model()->rowCount();
|
const int folder_count = tree_view->model()->rowCount();
|
||||||
QString edit_filter_text = new_text.toLower();
|
QString edit_filter_text = new_text.toLower();
|
||||||
QStandardItem* folder;
|
QStandardItem* folder;
|
||||||
QStandardItem* child;
|
|
||||||
int children_total = 0;
|
int children_total = 0;
|
||||||
QModelIndex root_index = item_model->invisibleRootItem()->index();
|
|
||||||
|
|
||||||
// If the searchfield is empty every item is visible
|
// If the searchfield is empty every item is visible
|
||||||
// Otherwise the filter gets applied
|
// Otherwise the filter gets applied
|
||||||
|
@ -272,6 +270,8 @@ void GameList::onUpdateThemedIcons() {
|
||||||
.scaled(icon_size, icon_size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation),
|
.scaled(icon_size, icon_size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation),
|
||||||
Qt::DecorationRole);
|
Qt::DecorationRole);
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -392,6 +392,8 @@ void GameList::ValidateEntry(const QModelIndex& item) {
|
||||||
case GameListItemType::AddDir:
|
case GameListItemType::AddDir:
|
||||||
emit AddDirectory();
|
emit AddDirectory();
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -462,6 +464,8 @@ void GameList::PopupContextMenu(const QPoint& menu_location) {
|
||||||
case GameListItemType::SysNandDir:
|
case GameListItemType::SysNandDir:
|
||||||
AddPermDirPopup(context_menu, selected);
|
AddPermDirPopup(context_menu, selected);
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
context_menu.exec(tree_view->viewport()->mapToGlobal(menu_location));
|
context_menu.exec(tree_view->viewport()->mapToGlobal(menu_location));
|
||||||
}
|
}
|
||||||
|
|
|
@ -247,7 +247,7 @@ public:
|
||||||
Qt::DecorationRole);
|
Qt::DecorationRole);
|
||||||
setData(QObject::tr("System Titles"), Qt::DisplayRole);
|
setData(QObject::tr("System Titles"), Qt::DisplayRole);
|
||||||
break;
|
break;
|
||||||
case GameListItemType::CustomDir:
|
case GameListItemType::CustomDir: {
|
||||||
const QString icon_name = QFileInfo::exists(game_dir->path)
|
const QString icon_name = QFileInfo::exists(game_dir->path)
|
||||||
? QStringLiteral("folder")
|
? QStringLiteral("folder")
|
||||||
: QStringLiteral("bad_folder");
|
: QStringLiteral("bad_folder");
|
||||||
|
@ -256,8 +256,11 @@ public:
|
||||||
Qt::DecorationRole);
|
Qt::DecorationRole);
|
||||||
setData(game_dir->path, Qt::DisplayRole);
|
setData(game_dir->path, Qt::DisplayRole);
|
||||||
break;
|
break;
|
||||||
};
|
}
|
||||||
};
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int type() const override {
|
int type() const override {
|
||||||
return static_cast<int>(dir_type);
|
return static_cast<int>(dir_type);
|
||||||
|
|
|
@ -326,10 +326,10 @@ void GameListWorker::ScanFileSystem(ScanTarget target, const std::string& dir_pa
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
std::vector<u8> icon;
|
std::vector<u8> icon;
|
||||||
const auto res1 = loader->ReadIcon(icon);
|
[[maybe_unused]] const auto res1 = loader->ReadIcon(icon);
|
||||||
|
|
||||||
std::string name = " ";
|
std::string name = " ";
|
||||||
const auto res3 = loader->ReadTitle(name);
|
[[maybe_unused]] const auto res3 = loader->ReadTitle(name);
|
||||||
|
|
||||||
const FileSys::PatchManager patch{program_id};
|
const FileSys::PatchManager patch{program_id};
|
||||||
|
|
||||||
|
@ -354,20 +354,20 @@ void GameListWorker::run() {
|
||||||
for (UISettings::GameDir& game_dir : game_dirs) {
|
for (UISettings::GameDir& game_dir : game_dirs) {
|
||||||
if (game_dir.path == QStringLiteral("SDMC")) {
|
if (game_dir.path == QStringLiteral("SDMC")) {
|
||||||
auto* const game_list_dir = new GameListDir(game_dir, GameListItemType::SdmcDir);
|
auto* const game_list_dir = new GameListDir(game_dir, GameListItemType::SdmcDir);
|
||||||
emit DirEntryReady({game_list_dir});
|
emit DirEntryReady(game_list_dir);
|
||||||
AddTitlesToGameList(game_list_dir);
|
AddTitlesToGameList(game_list_dir);
|
||||||
} else if (game_dir.path == QStringLiteral("UserNAND")) {
|
} else if (game_dir.path == QStringLiteral("UserNAND")) {
|
||||||
auto* const game_list_dir = new GameListDir(game_dir, GameListItemType::UserNandDir);
|
auto* const game_list_dir = new GameListDir(game_dir, GameListItemType::UserNandDir);
|
||||||
emit DirEntryReady({game_list_dir});
|
emit DirEntryReady(game_list_dir);
|
||||||
AddTitlesToGameList(game_list_dir);
|
AddTitlesToGameList(game_list_dir);
|
||||||
} else if (game_dir.path == QStringLiteral("SysNAND")) {
|
} else if (game_dir.path == QStringLiteral("SysNAND")) {
|
||||||
auto* const game_list_dir = new GameListDir(game_dir, GameListItemType::SysNandDir);
|
auto* const game_list_dir = new GameListDir(game_dir, GameListItemType::SysNandDir);
|
||||||
emit DirEntryReady({game_list_dir});
|
emit DirEntryReady(game_list_dir);
|
||||||
AddTitlesToGameList(game_list_dir);
|
AddTitlesToGameList(game_list_dir);
|
||||||
} else {
|
} else {
|
||||||
watch_list.append(game_dir.path);
|
watch_list.append(game_dir.path);
|
||||||
auto* const game_list_dir = new GameListDir(game_dir);
|
auto* const game_list_dir = new GameListDir(game_dir);
|
||||||
emit DirEntryReady({game_list_dir});
|
emit DirEntryReady(game_list_dir);
|
||||||
provider->ClearAllEntries();
|
provider->ClearAllEntries();
|
||||||
ScanFileSystem(ScanTarget::FillManualContentProvider, game_dir.path.toStdString(), 2,
|
ScanFileSystem(ScanTarget::FillManualContentProvider, game_dir.path.toStdString(), 2,
|
||||||
game_list_dir);
|
game_list_dir);
|
||||||
|
|
|
@ -75,8 +75,9 @@ private:
|
||||||
|
|
||||||
std::shared_ptr<FileSys::VfsFilesystem> vfs;
|
std::shared_ptr<FileSys::VfsFilesystem> vfs;
|
||||||
FileSys::ManualContentProvider* provider;
|
FileSys::ManualContentProvider* provider;
|
||||||
QStringList watch_list;
|
|
||||||
const CompatibilityList& compatibility_list;
|
|
||||||
QVector<UISettings::GameDir>& game_dirs;
|
QVector<UISettings::GameDir>& game_dirs;
|
||||||
|
const CompatibilityList& compatibility_list;
|
||||||
|
|
||||||
|
QStringList watch_list;
|
||||||
std::atomic_bool stop_processing;
|
std::atomic_bool stop_processing;
|
||||||
};
|
};
|
||||||
|
|
|
@ -93,7 +93,6 @@ void Config::ReadValues() {
|
||||||
|
|
||||||
// System
|
// System
|
||||||
Settings::values.use_docked_mode = sdl2_config->GetBoolean("System", "use_docked_mode", false);
|
Settings::values.use_docked_mode = sdl2_config->GetBoolean("System", "use_docked_mode", false);
|
||||||
const auto size = sdl2_config->GetInteger("System", "users_size", 0);
|
|
||||||
|
|
||||||
Settings::values.current_user = std::clamp<int>(
|
Settings::values.current_user = std::clamp<int>(
|
||||||
sdl2_config->GetInteger("System", "current_user", 0), 0, Service::Account::MAX_USERS - 1);
|
sdl2_config->GetInteger("System", "current_user", 0), 0, Service::Account::MAX_USERS - 1);
|
||||||
|
|
Loading…
Reference in a new issue