Merge pull request #6196 from bunnei/asserts-setting

core: settings: Add setting for debug assertions and disable by default.
This commit is contained in:
bunnei
2021-04-14 17:47:18 -07:00
committed by GitHub
118 changed files with 171 additions and 147 deletions

View File

@ -29,10 +29,10 @@
#include "common/microprofile.h"
#include "common/scm_rev.h"
#include "common/scope_exit.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/frontend/framebuffer_layout.h"
#include "core/hle/kernel/process.h"
#include "core/settings.h"
#include "input_common/keyboard.h"
#include "input_common/main.h"
#include "input_common/mouse/mouse_input.h"

View File

@ -641,6 +641,8 @@ void Config::ReadDebuggingValues() {
ReadSetting(QStringLiteral("disable_macro_jit"), false).toBool();
Settings::values.extended_logging =
ReadSetting(QStringLiteral("extended_logging"), false).toBool();
Settings::values.use_debug_asserts =
ReadSetting(QStringLiteral("use_debug_asserts"), false).toBool();
Settings::values.use_auto_stub = ReadSetting(QStringLiteral("use_auto_stub"), false).toBool();
qt_config->endGroup();
@ -1238,6 +1240,7 @@ void Config::SaveDebuggingValues() {
WriteSetting(QStringLiteral("dump_exefs"), Settings::values.dump_exefs, false);
WriteSetting(QStringLiteral("dump_nso"), Settings::values.dump_nso, false);
WriteSetting(QStringLiteral("quest_flag"), Settings::values.quest_flag, false);
WriteSetting(QStringLiteral("use_debug_asserts"), Settings::values.use_debug_asserts, false);
WriteSetting(QStringLiteral("disable_macro_jit"), Settings::values.disable_macro_jit, false);
qt_config->endGroup();
@ -1599,7 +1602,7 @@ void Config::Reload() {
ReadValues();
// To apply default value changes
SaveValues();
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
}
void Config::Save() {

View File

@ -9,7 +9,7 @@
#include <string>
#include <QMetaType>
#include <QVariant>
#include "core/settings.h"
#include "common/settings.h"
#include "yuzu/uisettings.h"
class QSettings;
@ -131,6 +131,6 @@ private:
bool global;
};
// These metatype declarations cannot be in core/settings.h because core is devoid of QT
// These metatype declarations cannot be in common/settings.h because core is devoid of QT
Q_DECLARE_METATYPE(Settings::RendererBackend);
Q_DECLARE_METATYPE(Settings::GPUAccuracy);

View File

@ -6,7 +6,7 @@
#include <QComboBox>
#include <QObject>
#include <QString>
#include "core/settings.h"
#include "common/settings.h"
#include "yuzu/configuration/configuration_shared.h"
#include "yuzu/configuration/configure_per_game.h"

View File

@ -7,7 +7,7 @@
#include <QCheckBox>
#include <QComboBox>
#include <QString>
#include "core/settings.h"
#include "common/settings.h"
namespace ConfigurationShared {

View File

@ -8,8 +8,8 @@
#include "audio_core/sink.h"
#include "audio_core/sink_details.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_audio.h"
#include "yuzu/configuration/configuration_shared.h"
#include "yuzu/configuration/configure_audio.h"

View File

@ -7,8 +7,8 @@
#include "common/common_types.h"
#include "common/logging/log.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_cpu.h"
#include "yuzu/configuration/configure_cpu.h"

View File

@ -6,7 +6,7 @@
#include <memory>
#include <QWidget>
#include "core/settings.h"
#include "common/settings.h"
namespace Ui {
class ConfigureCpu;

View File

@ -6,8 +6,8 @@
#include "common/common_types.h"
#include "common/logging/log.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_cpu_debug.h"
#include "yuzu/configuration/configure_cpu_debug.h"

View File

@ -6,7 +6,7 @@
#include <memory>
#include <QWidget>
#include "core/settings.h"
#include "common/settings.h"
namespace Ui {
class ConfigureCpuDebug;

View File

@ -7,8 +7,8 @@
#include "common/file_util.h"
#include "common/logging/backend.h"
#include "common/logging/filter.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_debug.h"
#include "yuzu/configuration/configure_debug.h"
#include "yuzu/debugger/console.h"
@ -34,6 +34,7 @@ void ConfigureDebug::SetConfiguration() {
ui->homebrew_args_edit->setText(QString::fromStdString(Settings::values.program_args));
ui->reporting_services->setChecked(Settings::values.reporting_services);
ui->quest_flag->setChecked(Settings::values.quest_flag);
ui->use_debug_asserts->setChecked(Settings::values.use_debug_asserts);
ui->use_auto_stub->setChecked(Settings::values.use_auto_stub);
ui->enable_graphics_debugging->setEnabled(!Core::System::GetInstance().IsPoweredOn());
ui->enable_graphics_debugging->setChecked(Settings::values.renderer_debug);
@ -48,6 +49,7 @@ void ConfigureDebug::ApplyConfiguration() {
Settings::values.program_args = ui->homebrew_args_edit->text().toStdString();
Settings::values.reporting_services = ui->reporting_services->isChecked();
Settings::values.quest_flag = ui->quest_flag->isChecked();
Settings::values.use_debug_asserts = ui->use_debug_asserts->isChecked();
Settings::values.use_auto_stub = ui->use_auto_stub->isChecked();
Settings::values.renderer_debug = ui->enable_graphics_debugging->isChecked();
Settings::values.disable_macro_jit = ui->disable_macro_jit->isChecked();

View File

@ -185,6 +185,13 @@
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="use_debug_asserts">
<property name="text">
<string>Enable Debug Asserts</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="use_auto_stub">
<property name="text">

View File

@ -5,8 +5,8 @@
#include <QHash>
#include <QListWidgetItem>
#include <QSignalBlocker>
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure.h"
#include "yuzu/configuration/config.h"
#include "yuzu/configuration/configure_dialog.h"
@ -55,7 +55,7 @@ void ConfigureDialog::ApplyConfiguration() {
ui->debugTab->ApplyConfiguration();
ui->webTab->ApplyConfiguration();
ui->serviceTab->ApplyConfiguration();
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
Settings::LogSettings();
}

View File

@ -6,7 +6,7 @@
#include <QMessageBox>
#include "common/common_paths.h"
#include "common/file_util.h"
#include "core/settings.h"
#include "common/settings.h"
#include "ui_configure_filesystem.h"
#include "yuzu/configuration/configure_filesystem.h"
#include "yuzu/uisettings.h"

View File

@ -4,8 +4,8 @@
#include <QCheckBox>
#include <QSpinBox>
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_general.h"
#include "yuzu/configuration/configuration_shared.h"
#include "yuzu/configuration/configure_general.h"

View File

@ -11,8 +11,8 @@
#include "common/common_types.h"
#include "common/logging/log.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_graphics.h"
#include "video_core/vulkan_common/vulkan_instance.h"
#include "video_core/vulkan_common/vulkan_library.h"

View File

@ -8,7 +8,7 @@
#include <vector>
#include <QString>
#include <QWidget>
#include "core/settings.h"
#include "common/settings.h"
namespace ConfigurationShared {
enum class CheckState;

View File

@ -2,8 +2,8 @@
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_graphics_advanced.h"
#include "yuzu/configuration/configuration_shared.h"
#include "yuzu/configuration/configure_graphics_advanced.h"

View File

@ -5,7 +5,7 @@
#include <QMenu>
#include <QMessageBox>
#include <QStandardItemModel>
#include "core/settings.h"
#include "common/settings.h"
#include "ui_configure_hotkeys.h"
#include "yuzu/configuration/config.h"
#include "yuzu/configuration/configure_hotkeys.h"

View File

@ -3,8 +3,8 @@
// Refer to the license.txt file included.
#include <QColorDialog>
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_input_advanced.h"
#include "yuzu/configuration/configure_input_advanced.h"

View File

@ -14,7 +14,7 @@
#include <QWidget>
#include "common/param_package.h"
#include "core/settings.h"
#include "common/settings.h"
#include "ui_configure_input.h"
class QCheckBox;

View File

@ -7,8 +7,8 @@
#include <array>
#include <QFrame>
#include <QPointer>
#include "common/settings.h"
#include "core/frontend/input.h"
#include "core/settings.h"
class QLabel;

View File

@ -14,7 +14,7 @@
#include <QVBoxLayout>
#include "common/logging/log.h"
#include "core/settings.h"
#include "common/settings.h"
#include "input_common/main.h"
#include "input_common/udp/client.h"
#include "input_common/udp/udp.h"

View File

@ -57,7 +57,7 @@ void ConfigurePerGame::ApplyConfiguration() {
ui->graphicsAdvancedTab->ApplyConfiguration();
ui->audioTab->ApplyConfiguration();
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
Settings::LogSettings();
game_config->Save();

View File

@ -13,10 +13,10 @@
#include <QVBoxLayout>
#include "common/assert.h"
#include "common/file_util.h"
#include "common/settings.h"
#include "common/string_util.h"
#include "core/core.h"
#include "core/hle/service/acc/profile_manager.h"
#include "core/settings.h"
#include "ui_configure_profile_manager.h"
#include "yuzu/configuration/configure_profile_manager.h"
#include "yuzu/util/limitable_input_dialog.h"
@ -180,7 +180,7 @@ void ConfigureProfileManager::ApplyConfiguration() {
return;
}
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
}
void ConfigureProfileManager::SelectUser(const QModelIndex& index) {

View File

@ -4,8 +4,8 @@
#include <QGraphicsItem>
#include <QtConcurrent/QtConcurrent>
#include "common/settings.h"
#include "core/hle/service/bcat/backend/boxcat.h"
#include "core/settings.h"
#include "ui_configure_service.h"
#include "yuzu/configuration/configure_service.h"

View File

@ -11,9 +11,9 @@
#include <QMessageBox>
#include "common/assert.h"
#include "common/file_util.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/hle/service/time/time.h"
#include "core/settings.h"
#include "ui_configure_system.h"
#include "yuzu/configuration/configuration_shared.h"
#include "yuzu/configuration/configure_system.h"
@ -199,7 +199,7 @@ void ConfigureSystem::ApplyConfiguration() {
}
}
Settings::Apply(system);
system.ApplySettings();
}
void ConfigureSystem::RefreshConsoleID() {

View File

@ -10,8 +10,8 @@
#include <QStandardItemModel>
#include <QTimer>
#include "common/param_package.h"
#include "common/settings.h"
#include "core/frontend/framebuffer_layout.h"
#include "core/settings.h"
#include "input_common/main.h"
#include "ui_configure_touch_from_button.h"
#include "yuzu/configuration/configure_touch_from_button.h"

View File

@ -9,8 +9,8 @@
#include <QDirIterator>
#include "common/common_types.h"
#include "common/file_util.h"
#include "common/settings.h"
#include "core/core.h"
#include "core/settings.h"
#include "ui_configure_ui.h"
#include "yuzu/configuration/configure_ui.h"
#include "yuzu/uisettings.h"
@ -85,7 +85,7 @@ void ConfigureUi::ApplyConfiguration() {
UISettings::values.enable_screenshot_save_as = ui->enable_screenshot_save_as->isChecked();
Common::FS::GetUserPath(Common::FS::UserPath::ScreenshotsDir,
ui->screenshot_path_edit->text().toStdString());
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
}
void ConfigureUi::RequestGameListUpdate() {

View File

@ -8,7 +8,7 @@
#include <fmt/format.h>
#include "common/param_package.h"
#include "core/settings.h"
#include "common/settings.h"
#include "ui_configure_vibration.h"
#include "yuzu/configuration/configure_vibration.h"

View File

@ -5,7 +5,7 @@
#include <QIcon>
#include <QMessageBox>
#include <QtConcurrent/QtConcurrentRun>
#include "core/settings.h"
#include "common/settings.h"
#include "core/telemetry_session.h"
#include "ui_configure_web.h"
#include "yuzu/configuration/configure_web.h"

View File

@ -5,7 +5,7 @@
#include <QAction>
#include <QLayout>
#include <QString>
#include "core/settings.h"
#include "common/settings.h"
#include "yuzu/configuration/configure_input_player_widget.h"
#include "yuzu/debugger/controller.h"

View File

@ -79,6 +79,7 @@ static FileSys::VirtualFile VfsDirectoryCreateFileWrapper(const FileSys::Virtual
#ifdef ARCHITECTURE_x86_64
#include "common/x64/cpu_detect.h"
#endif
#include "common/settings.h"
#include "common/telemetry.h"
#include "core/core.h"
#include "core/crypto/key_manager.h"
@ -98,7 +99,6 @@ static FileSys::VirtualFile VfsDirectoryCreateFileWrapper(const FileSys::Virtual
#include "core/hle/service/sm/sm.h"
#include "core/loader/loader.h"
#include "core/perf_stats.h"
#include "core/settings.h"
#include "core/telemetry_session.h"
#include "input_common/main.h"
#include "video_core/gpu.h"
@ -164,7 +164,7 @@ void GMainWindow::ShowTelemetryCallout() {
"<br/><br/>Would you like to share your usage data with us?");
if (QMessageBox::question(this, tr("Telemetry"), telemetry_message) != QMessageBox::Yes) {
Settings::values.enable_telemetry = false;
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
}
}
@ -385,7 +385,7 @@ void GMainWindow::ControllerSelectorReconfigureControllers(
emit ControllerSelectorReconfigureFinished();
// Don't forget to apply settings.
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
config->Save();
UpdateStatusButtons();
@ -650,7 +650,7 @@ void GMainWindow::InitializeWidgets() {
Settings::values.use_asynchronous_gpu_emulation.SetValue(
!Settings::values.use_asynchronous_gpu_emulation.GetValue());
async_status_button->setChecked(Settings::values.use_asynchronous_gpu_emulation.GetValue());
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
});
async_status_button->setText(tr("ASYNC"));
async_status_button->setCheckable(true);
@ -666,7 +666,7 @@ void GMainWindow::InitializeWidgets() {
}
Settings::values.use_multi_core.SetValue(!Settings::values.use_multi_core.GetValue());
multicore_status_button->setChecked(Settings::values.use_multi_core.GetValue());
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
});
multicore_status_button->setText(tr("MULTICORE"));
multicore_status_button->setCheckable(true);
@ -697,7 +697,7 @@ void GMainWindow::InitializeWidgets() {
Settings::values.renderer_backend.SetValue(Settings::RendererBackend::OpenGL);
}
Settings::Apply(Core::System::GetInstance());
Core::System::GetInstance().ApplySettings();
});
statusBar()->insertPermanentWidget(0, renderer_status_button);