configure_debug: Move reporting option to logging

This commit is contained in:
Zach Hilman 2019-09-21 18:43:11 -04:00
parent ccd70819c2
commit 038bcec111
15 changed files with 64 additions and 63 deletions

View file

@ -59,12 +59,12 @@ static std::string GetRelativePathFromNcaID(const std::array<u8, 16>& nca_id, bo
bool within_two_digit, bool cnmt_suffix) { bool within_two_digit, bool cnmt_suffix) {
if (!within_two_digit) if (!within_two_digit)
return fmt::format(cnmt_suffix ? "{}.cnmt.nca" : "/{}.nca", return fmt::format(cnmt_suffix ? "{}.cnmt.nca" : "/{}.nca",
Common::HexArrayToString(nca_id, second_hex_upper)); Common::HexToString(nca_id, second_hex_upper));
Core::Crypto::SHA256Hash hash{}; Core::Crypto::SHA256Hash hash{};
mbedtls_sha256(nca_id.data(), nca_id.size(), hash.data(), 0); mbedtls_sha256(nca_id.data(), nca_id.size(), hash.data(), 0);
return fmt::format(cnmt_suffix ? "/000000{:02X}/{}.cnmt.nca" : "/000000{:02X}/{}.nca", hash[0], return fmt::format(cnmt_suffix ? "/000000{:02X}/{}.cnmt.nca" : "/000000{:02X}/{}.nca", hash[0],
Common::HexArrayToString(nca_id, second_hex_upper)); Common::HexToString(nca_id, second_hex_upper));
} }
static std::string GetCNMTName(TitleType type, u64 title_id) { static std::string GetCNMTName(TitleType type, u64 title_id) {
@ -149,7 +149,7 @@ bool PlaceholderCache::Create(const NcaID& id, u64 size) const {
if (dir2 == nullptr) if (dir2 == nullptr)
return false; return false;
const auto file = dir2->CreateFile(fmt::format("{}.nca", Common::HexArrayToString(id, false))); const auto file = dir2->CreateFile(fmt::format("{}.nca", Common::HexToString(id, false)));
if (file == nullptr) if (file == nullptr)
return false; return false;
@ -170,7 +170,7 @@ bool PlaceholderCache::Delete(const NcaID& id) const {
const auto dir2 = GetOrCreateDirectoryRelative(dir, dirname); const auto dir2 = GetOrCreateDirectoryRelative(dir, dirname);
const auto res = dir2->DeleteFile(fmt::format("{}.nca", Common::HexArrayToString(id, false))); const auto res = dir2->DeleteFile(fmt::format("{}.nca", Common::HexToString(id, false)));
return res; return res;
} }

View file

@ -1151,7 +1151,8 @@ void IApplicationFunctions::EnsureSaveData(Kernel::HLERequestContext& ctx) {
descriptor.title_id = Core::CurrentProcess()->GetTitleID(); descriptor.title_id = Core::CurrentProcess()->GetTitleID();
descriptor.user_id = user_id; descriptor.user_id = user_id;
descriptor.type = FileSys::SaveDataType::SaveData; descriptor.type = FileSys::SaveDataType::SaveData;
const auto res = fsc.CreateSaveData(FileSys::SaveDataSpaceId::NandUser, descriptor); const auto res = system.GetFileSystemController().CreateSaveData(
FileSys::SaveDataSpaceId::NandUser, descriptor);
IPC::ResponseBuilder rb{ctx, 4}; IPC::ResponseBuilder rb{ctx, 4};
rb.Push(res.Code()); rb.Push(res.Code());
@ -1268,8 +1269,8 @@ void IApplicationFunctions::ExtendSaveData(Kernel::HLERequestContext& ctx) {
"new_journal={:016X}", "new_journal={:016X}",
static_cast<u8>(type), user_id[1], user_id[0], new_normal_size, new_journal_size); static_cast<u8>(type), user_id[1], user_id[0], new_normal_size, new_journal_size);
fsc.WriteSaveDataSize(type, system.CurrentProcess()->GetTitleID(), user_id, system.GetFileSystemController().WriteSaveDataSize(
{new_normal_size, new_journal_size}); type, system.CurrentProcess()->GetTitleID(), user_id, {new_normal_size, new_journal_size});
IPC::ResponseBuilder rb{ctx, 4}; IPC::ResponseBuilder rb{ctx, 4};
rb.Push(RESULT_SUCCESS); rb.Push(RESULT_SUCCESS);
@ -1288,7 +1289,7 @@ void IApplicationFunctions::GetSaveDataSize(Kernel::HLERequestContext& ctx) {
LOG_DEBUG(Service_AM, "called with type={:02X}, user_id={:016X}{:016X}", static_cast<u8>(type), LOG_DEBUG(Service_AM, "called with type={:02X}, user_id={:016X}{:016X}", static_cast<u8>(type),
user_id[1], user_id[0]); user_id[1], user_id[0]);
const auto size = system.FileSystemController().ReadSaveDataSize( const auto size = system.GetFileSystemController().ReadSaveDataSize(
type, system.CurrentProcess()->GetTitleID(), user_id); type, system.CurrentProcess()->GetTitleID(), user_id);
IPC::ResponseBuilder rb{ctx, 6}; IPC::ResponseBuilder rb{ctx, 6};

View file

@ -106,7 +106,7 @@ private:
IPC::ResponseBuilder rb{ctx, 2, 0, 1}; IPC::ResponseBuilder rb{ctx, 2, 0, 1};
rb.Push(RESULT_SUCCESS); rb.Push(RESULT_SUCCESS);
rb.PushIpcInterface<IApplicationFunctions>(system.FileSystemController()); rb.PushIpcInterface<IApplicationFunctions>(system);
} }
std::shared_ptr<NVFlinger::NVFlinger> nvflinger; std::shared_ptr<NVFlinger::NVFlinger> nvflinger;

View file

@ -95,7 +95,7 @@ private:
IPC::ResponseBuilder rb{ctx, 2, 0, 1}; IPC::ResponseBuilder rb{ctx, 2, 0, 1};
rb.Push(RESULT_SUCCESS); rb.Push(RESULT_SUCCESS);
rb.PushIpcInterface<IApplicationFunctions>(system.FileSystemController()); rb.PushIpcInterface<IApplicationFunctions>(system);
} }
std::shared_ptr<NVFlinger::NVFlinger> nvflinger; std::shared_ptr<NVFlinger::NVFlinger> nvflinger;

View file

@ -711,11 +711,10 @@ void FileSystemController::CreateFactories(FileSys::VfsFilesystem& vfs, bool ove
} }
void InstallInterfaces(Core::System& system) { void InstallInterfaces(Core::System& system) {
romfs_factory = nullptr;
CreateFactories(*system.GetFilesystem(), false);
std::make_shared<FSP_LDR>()->InstallAsService(system.ServiceManager()); std::make_shared<FSP_LDR>()->InstallAsService(system.ServiceManager());
std::make_shared<FSP_PR>()->InstallAsService(system.ServiceManager()); std::make_shared<FSP_PR>()->InstallAsService(system.ServiceManager());
std::make_shared<FSP_SRV>(system.GetReporter())->InstallAsService(system.ServiceManager()); std::make_shared<FSP_SRV>(system.GetFileSystemController(), system.GetReporter())
->InstallAsService(system.ServiceManager());
} }
} // namespace Service::FileSystem } // namespace Service::FileSystem

View file

@ -125,7 +125,7 @@ private:
std::unique_ptr<FileSys::PlaceholderCache> gamecard_placeholder; std::unique_ptr<FileSys::PlaceholderCache> gamecard_placeholder;
}; };
void InstallInterfaces(SM::ServiceManager& service_manager, FileSystemController& controller); void InstallInterfaces(Core::System& system);
// A class that wraps a VfsDirectory with methods that return ResultVal and ResultCode instead of // A class that wraps a VfsDirectory with methods that return ResultVal and ResultCode instead of
// pointers and booleans. This makes using a VfsDirectory with switch services much easier and // pointers and booleans. This makes using a VfsDirectory with switch services much easier and

View file

@ -650,7 +650,8 @@ private:
u64 next_entry_index = 0; u64 next_entry_index = 0;
}; };
FSP_SRV::FSP_SRV(FileSystemController& fsc) : ServiceFramework("fsp-srv"), fsc(fsc) { FSP_SRV::FSP_SRV(FileSystemController& fsc, const Core::Reporter& reporter)
: ServiceFramework("fsp-srv"), fsc(fsc), reporter(reporter) {
// clang-format off // clang-format off
static const FunctionInfo functions[] = { static const FunctionInfo functions[] = {
{0, nullptr, "OpenFileSystem"}, {0, nullptr, "OpenFileSystem"},

View file

@ -32,7 +32,7 @@ enum class LogMode : u32 {
class FSP_SRV final : public ServiceFramework<FSP_SRV> { class FSP_SRV final : public ServiceFramework<FSP_SRV> {
public: public:
explicit FSP_SRV(FileSystemController& fsc); explicit FSP_SRV(FileSystemController& fsc, const Core::Reporter& reporter);
~FSP_SRV() override; ~FSP_SRV() override;
private: private:

View file

@ -199,7 +199,7 @@ void Init(std::shared_ptr<SM::ServiceManager>& sm, Core::System& system) {
// NVFlinger needs to be accessed by several services like Vi and AppletOE so we instantiate it // NVFlinger needs to be accessed by several services like Vi and AppletOE so we instantiate it
// here and pass it into the respective InstallInterfaces functions. // here and pass it into the respective InstallInterfaces functions.
auto nv_flinger = std::make_shared<NVFlinger::NVFlinger>(system.CoreTiming()); auto nv_flinger = std::make_shared<NVFlinger::NVFlinger>(system.CoreTiming());
fsc.CreateFactories(*system.GetFilesystem(), false); system.GetFileSystemController().CreateFactories(*system.GetFilesystem(), false);
SM::ServiceManager::InstallInterfaces(sm); SM::ServiceManager::InstallInterfaces(sm);
@ -236,7 +236,7 @@ void Init(std::shared_ptr<SM::ServiceManager>& sm, Core::System& system) {
NIFM::InstallInterfaces(*sm); NIFM::InstallInterfaces(*sm);
NIM::InstallInterfaces(*sm); NIM::InstallInterfaces(*sm);
NPNS::InstallInterfaces(*sm); NPNS::InstallInterfaces(*sm);
NS::InstallInterfaces(*sm, fsc); NS::InstallInterfaces(*sm, system.GetFileSystemController());
Nvidia::InstallInterfaces(*sm, *nv_flinger, system); Nvidia::InstallInterfaces(*sm, *nv_flinger, system);
PCIe::InstallInterfaces(*sm); PCIe::InstallInterfaces(*sm);
PCTL::InstallInterfaces(*sm); PCTL::InstallInterfaces(*sm);

View file

@ -35,6 +35,7 @@ add_executable(yuzu
configuration/configure_dialog.h configuration/configure_dialog.h
configuration/configure_filesystem.cpp configuration/configure_filesystem.cpp
configuration/configure_filesystem.h configuration/configure_filesystem.h
configuration/configure_filesystem.ui
configuration/configure_gamelist.cpp configuration/configure_gamelist.cpp
configuration/configure_gamelist.h configuration/configure_gamelist.h
configuration/configure_gamelist.ui configuration/configure_gamelist.ui

View file

@ -488,18 +488,19 @@ void Config::ReadDataStorageValues() {
ReadSetting(QStringLiteral("gamecard_path"), QStringLiteral("")).toString().toStdString(); ReadSetting(QStringLiteral("gamecard_path"), QStringLiteral("")).toString().toStdString();
Settings::values.nand_total_size = static_cast<Settings::NANDTotalSize>( Settings::values.nand_total_size = static_cast<Settings::NANDTotalSize>(
ReadSetting(QStringLiteral("nand_total_size"), ReadSetting(QStringLiteral("nand_total_size"),
static_cast<u64>(Settings::NANDTotalSize::S29_1GB)) QVariant::fromValue<u64>(static_cast<u64>(Settings::NANDTotalSize::S29_1GB)))
.toULongLong()); .toULongLong());
Settings::values.nand_user_size = static_cast<Settings::NANDUserSize>( Settings::values.nand_user_size = static_cast<Settings::NANDUserSize>(
ReadSetting(QStringLiteral("nand_user_size"), ReadSetting(QStringLiteral("nand_user_size"),
static_cast<u64>(Settings::NANDUserSize::S26GB)) QVariant::fromValue<u64>(static_cast<u64>(Settings::NANDUserSize::S26GB)))
.toULongLong()); .toULongLong());
Settings::values.nand_system_size = static_cast<Settings::NANDSystemSize>( Settings::values.nand_system_size = static_cast<Settings::NANDSystemSize>(
ReadSetting(QStringLiteral("nand_system_size"), ReadSetting(QStringLiteral("nand_system_size"),
static_cast<u64>(Settings::NANDSystemSize::S2_5GB)) QVariant::fromValue<u64>(static_cast<u64>(Settings::NANDSystemSize::S2_5GB)))
.toULongLong()); .toULongLong());
Settings::values.sdmc_size = static_cast<Settings::SDMCSize>( Settings::values.sdmc_size = static_cast<Settings::SDMCSize>(
ReadSetting(QStringLiteral("sdmc_size"), static_cast<u64>(Settings::SDMCSize::S16GB)) ReadSetting(QStringLiteral("sdmc_size"),
QVariant::fromValue<u64>(static_cast<u64>(Settings::SDMCSize::S16GB)))
.toULongLong()); .toULongLong());
qt_config->endGroup(); qt_config->endGroup();
@ -932,16 +933,17 @@ void Config::SaveDataStorageValues() {
WriteSetting(QStringLiteral("gamecard_path"), WriteSetting(QStringLiteral("gamecard_path"),
QString::fromStdString(Settings::values.gamecard_path), QStringLiteral("")); QString::fromStdString(Settings::values.gamecard_path), QStringLiteral(""));
WriteSetting(QStringLiteral("nand_total_size"), WriteSetting(QStringLiteral("nand_total_size"),
static_cast<u64>(Settings::values.nand_total_size), QVariant::fromValue<u64>(static_cast<u64>(Settings::values.nand_total_size)),
static_cast<u64>(Settings::NANDTotalSize::S29_1GB)); QVariant::fromValue<u64>(static_cast<u64>(Settings::NANDTotalSize::S29_1GB)));
WriteSetting(QStringLiteral("nand_user_size"), WriteSetting(QStringLiteral("nand_user_size"),
static_cast<u64>(Settings::values.nand_user_size), QVariant::fromValue<u64>(static_cast<u64>(Settings::values.nand_user_size)),
static_cast<u64>(Settings::NANDUserSize::S26GB)); QVariant::fromValue<u64>(static_cast<u64>(Settings::NANDUserSize::S26GB)));
WriteSetting(QStringLiteral("nand_system_size"), WriteSetting(QStringLiteral("nand_system_size"),
static_cast<u64>(Settings::values.nand_system_size), QVariant::fromValue<u64>(static_cast<u64>(Settings::values.nand_system_size)),
static_cast<u64>(Settings::NANDSystemSize::S2_5GB)); QVariant::fromValue<u64>(static_cast<u64>(Settings::NANDSystemSize::S2_5GB)));
WriteSetting(QStringLiteral("sdmc_size"), static_cast<u64>(Settings::values.sdmc_size), WriteSetting(QStringLiteral("sdmc_size"),
static_cast<u64>(Settings::SDMCSize::S16GB)); QVariant::fromValue<u64>(static_cast<u64>(Settings::values.sdmc_size)),
QVariant::fromValue<u64>(static_cast<u64>(Settings::SDMCSize::S16GB)));
qt_config->endGroup(); qt_config->endGroup();
} }

View file

@ -103,33 +103,6 @@
</item> </item>
</layout> </layout>
</item> </item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_3">
<property name="title">
<string>Homebrew</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>Arguments String</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="homebrew_args_edit"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<item> <item>
<widget class="QCheckBox" name="reporting_services"> <widget class="QCheckBox" name="reporting_services">
<property name="text"> <property name="text">
@ -138,7 +111,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QLabel" name="label_3"> <widget class="QLabel" name="label">
<property name="font"> <property name="font">
<font> <font>
<italic>true</italic> <italic>true</italic>
@ -172,15 +145,36 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QGroupBox" name="groupBox_4"> <widget class="QGroupBox" name="groupBox_3">
<property name="title"> <property name="title">
<string>Dump</string> <string>Homebrew</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_6"> <layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>Arguments String</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="homebrew_args_edit"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer"> <spacer name="verticalSpacer">
<property name="orientation"> <property name="orientation">
<enum>Qt::Vertical</enum> <enum>Qt::Vertical</enum>
</property> </property>
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0"> <property name="sizeHint" stdset="0">
<size> <size>
<width>20</width> <width>20</width>

View file

@ -9,7 +9,7 @@
#include "core/settings.h" #include "core/settings.h"
#include "ui_configure_filesystem.h" #include "ui_configure_filesystem.h"
#include "yuzu/configuration/configure_filesystem.h" #include "yuzu/configuration/configure_filesystem.h"
#include "yuzu/ui_settings.h" #include "yuzu/uisettings.h"
namespace { namespace {

View file

@ -2,6 +2,7 @@
// Licensed under GPLv2 or any later version // Licensed under GPLv2 or any later version
// Refer to the license.txt file included. // Refer to the license.txt file included.
#include <QSpinBox>
#include "core/core.h" #include "core/core.h"
#include "core/settings.h" #include "core/settings.h"
#include "ui_configure_general.h" #include "ui_configure_general.h"

View file

@ -22,6 +22,7 @@
#include "common/telemetry.h" #include "common/telemetry.h"
#include "core/core.h" #include "core/core.h"
#include "core/crypto/key_manager.h" #include "core/crypto/key_manager.h"
#include "core/file_sys/registered_cache.h"
#include "core/file_sys/vfs_real.h" #include "core/file_sys/vfs_real.h"
#include "core/hle/service/filesystem/filesystem.h" #include "core/hle/service/filesystem/filesystem.h"
#include "core/loader/loader.h" #include "core/loader/loader.h"
@ -216,8 +217,9 @@ int main(int argc, char** argv) {
}; };
Core::System& system{Core::System::GetInstance()}; Core::System& system{Core::System::GetInstance()};
system.SetContentProvider(std::make_unique<FileSys::ContentProviderUnion>());
system.SetFilesystem(std::make_shared<FileSys::RealVfsFilesystem>()); system.SetFilesystem(std::make_shared<FileSys::RealVfsFilesystem>());
Service::FileSystem::CreateFactories(*system.GetFilesystem()); system.GetFileSystemController().CreateFactories(*system.GetFilesystem());
SCOPE_EXIT({ system.Shutdown(); }); SCOPE_EXIT({ system.Shutdown(); });