mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-29 18:22:47 +01:00
settings: Add debug setting to enable all controllers
This commit is contained in:
parent
564f105277
commit
51df96b7c0
8 changed files with 75 additions and 0 deletions
|
@ -604,6 +604,7 @@ struct Values {
|
||||||
BasicSetting<bool> extended_logging{false, "extended_logging"};
|
BasicSetting<bool> extended_logging{false, "extended_logging"};
|
||||||
BasicSetting<bool> use_debug_asserts{false, "use_debug_asserts"};
|
BasicSetting<bool> use_debug_asserts{false, "use_debug_asserts"};
|
||||||
BasicSetting<bool> use_auto_stub{false, "use_auto_stub"};
|
BasicSetting<bool> use_auto_stub{false, "use_auto_stub"};
|
||||||
|
BasicSetting<bool> enable_all_controllers{false, "enable_all_controllers"};
|
||||||
|
|
||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
BasicSetting<std::string> log_filter{"*:Info", "log_filter"};
|
BasicSetting<std::string> log_filter{"*:Info", "log_filter"};
|
||||||
|
|
|
@ -370,6 +370,11 @@ enum class ControllerType {
|
||||||
RightJoycon,
|
RightJoycon,
|
||||||
Handheld,
|
Handheld,
|
||||||
GameCube,
|
GameCube,
|
||||||
|
Pokeball,
|
||||||
|
NES,
|
||||||
|
SNES,
|
||||||
|
N64,
|
||||||
|
SegaGenesis,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct PlayerInput {
|
struct PlayerInput {
|
||||||
|
|
|
@ -27,6 +27,16 @@ NpadStyleIndex EmulatedController::MapSettingsTypeToNPad(Settings::ControllerTyp
|
||||||
return NpadStyleIndex::Handheld;
|
return NpadStyleIndex::Handheld;
|
||||||
case Settings::ControllerType::GameCube:
|
case Settings::ControllerType::GameCube:
|
||||||
return NpadStyleIndex::GameCube;
|
return NpadStyleIndex::GameCube;
|
||||||
|
case Settings::ControllerType::Pokeball:
|
||||||
|
return NpadStyleIndex::Pokeball;
|
||||||
|
case Settings::ControllerType::NES:
|
||||||
|
return NpadStyleIndex::NES;
|
||||||
|
case Settings::ControllerType::SNES:
|
||||||
|
return NpadStyleIndex::SNES;
|
||||||
|
case Settings::ControllerType::N64:
|
||||||
|
return NpadStyleIndex::N64;
|
||||||
|
case Settings::ControllerType::SegaGenesis:
|
||||||
|
return NpadStyleIndex::SegaGenesis;
|
||||||
default:
|
default:
|
||||||
return NpadStyleIndex::ProController;
|
return NpadStyleIndex::ProController;
|
||||||
}
|
}
|
||||||
|
@ -46,6 +56,16 @@ Settings::ControllerType EmulatedController::MapNPadToSettingsType(NpadStyleInde
|
||||||
return Settings::ControllerType::Handheld;
|
return Settings::ControllerType::Handheld;
|
||||||
case NpadStyleIndex::GameCube:
|
case NpadStyleIndex::GameCube:
|
||||||
return Settings::ControllerType::GameCube;
|
return Settings::ControllerType::GameCube;
|
||||||
|
case NpadStyleIndex::Pokeball:
|
||||||
|
return Settings::ControllerType::Pokeball;
|
||||||
|
case NpadStyleIndex::NES:
|
||||||
|
return Settings::ControllerType::NES;
|
||||||
|
case NpadStyleIndex::SNES:
|
||||||
|
return Settings::ControllerType::SNES;
|
||||||
|
case NpadStyleIndex::N64:
|
||||||
|
return Settings::ControllerType::N64;
|
||||||
|
case NpadStyleIndex::SegaGenesis:
|
||||||
|
return Settings::ControllerType::SegaGenesis;
|
||||||
default:
|
default:
|
||||||
return Settings::ControllerType::ProController;
|
return Settings::ControllerType::ProController;
|
||||||
}
|
}
|
||||||
|
|
|
@ -263,6 +263,10 @@ void Controller_NPad::OnInit() {
|
||||||
style.fullkey.Assign(1);
|
style.fullkey.Assign(1);
|
||||||
style.gamecube.Assign(1);
|
style.gamecube.Assign(1);
|
||||||
style.palma.Assign(1);
|
style.palma.Assign(1);
|
||||||
|
style.lark.Assign(1);
|
||||||
|
style.lucia.Assign(1);
|
||||||
|
style.lagoon.Assign(1);
|
||||||
|
style.lager.Assign(1);
|
||||||
hid_core.SetSupportedStyleTag(style);
|
hid_core.SetSupportedStyleTag(style);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -508,6 +508,7 @@ void Config::ReadDebuggingValues() {
|
||||||
ReadBasicSetting(Settings::values.extended_logging);
|
ReadBasicSetting(Settings::values.extended_logging);
|
||||||
ReadBasicSetting(Settings::values.use_debug_asserts);
|
ReadBasicSetting(Settings::values.use_debug_asserts);
|
||||||
ReadBasicSetting(Settings::values.use_auto_stub);
|
ReadBasicSetting(Settings::values.use_auto_stub);
|
||||||
|
ReadBasicSetting(Settings::values.enable_all_controllers);
|
||||||
|
|
||||||
qt_config->endGroup();
|
qt_config->endGroup();
|
||||||
}
|
}
|
||||||
|
@ -1051,6 +1052,7 @@ void Config::SaveDebuggingValues() {
|
||||||
WriteBasicSetting(Settings::values.quest_flag);
|
WriteBasicSetting(Settings::values.quest_flag);
|
||||||
WriteBasicSetting(Settings::values.use_debug_asserts);
|
WriteBasicSetting(Settings::values.use_debug_asserts);
|
||||||
WriteBasicSetting(Settings::values.disable_macro_jit);
|
WriteBasicSetting(Settings::values.disable_macro_jit);
|
||||||
|
WriteBasicSetting(Settings::values.enable_all_controllers);
|
||||||
|
|
||||||
qt_config->endGroup();
|
qt_config->endGroup();
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,6 +42,7 @@ void ConfigureDebug::SetConfiguration() {
|
||||||
ui->quest_flag->setChecked(Settings::values.quest_flag.GetValue());
|
ui->quest_flag->setChecked(Settings::values.quest_flag.GetValue());
|
||||||
ui->use_debug_asserts->setChecked(Settings::values.use_debug_asserts.GetValue());
|
ui->use_debug_asserts->setChecked(Settings::values.use_debug_asserts.GetValue());
|
||||||
ui->use_auto_stub->setChecked(Settings::values.use_auto_stub.GetValue());
|
ui->use_auto_stub->setChecked(Settings::values.use_auto_stub.GetValue());
|
||||||
|
ui->enable_all_controllers->setChecked(Settings::values.enable_all_controllers.GetValue());
|
||||||
ui->enable_graphics_debugging->setEnabled(runtime_lock);
|
ui->enable_graphics_debugging->setEnabled(runtime_lock);
|
||||||
ui->enable_graphics_debugging->setChecked(Settings::values.renderer_debug.GetValue());
|
ui->enable_graphics_debugging->setChecked(Settings::values.renderer_debug.GetValue());
|
||||||
ui->enable_shader_feedback->setEnabled(runtime_lock);
|
ui->enable_shader_feedback->setEnabled(runtime_lock);
|
||||||
|
@ -67,6 +68,7 @@ void ConfigureDebug::ApplyConfiguration() {
|
||||||
Settings::values.quest_flag = ui->quest_flag->isChecked();
|
Settings::values.quest_flag = ui->quest_flag->isChecked();
|
||||||
Settings::values.use_debug_asserts = ui->use_debug_asserts->isChecked();
|
Settings::values.use_debug_asserts = ui->use_debug_asserts->isChecked();
|
||||||
Settings::values.use_auto_stub = ui->use_auto_stub->isChecked();
|
Settings::values.use_auto_stub = ui->use_auto_stub->isChecked();
|
||||||
|
Settings::values.enable_all_controllers = ui->enable_all_controllers->isChecked();
|
||||||
Settings::values.renderer_debug = ui->enable_graphics_debugging->isChecked();
|
Settings::values.renderer_debug = ui->enable_graphics_debugging->isChecked();
|
||||||
Settings::values.renderer_shader_feedback = ui->enable_shader_feedback->isChecked();
|
Settings::values.renderer_shader_feedback = ui->enable_shader_feedback->isChecked();
|
||||||
Settings::values.cpu_debug_mode = ui->enable_cpu_debugging->isChecked();
|
Settings::values.cpu_debug_mode = ui->enable_cpu_debugging->isChecked();
|
||||||
|
|
|
@ -198,6 +198,13 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="QCheckBox" name="enable_all_controllers">
|
||||||
|
<property name="text">
|
||||||
|
<string>Enable all Controller Types</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
|
|
@ -947,6 +947,40 @@ void ConfigureInputPlayer::SetConnectableControllers() {
|
||||||
Core::HID::NpadStyleIndex::GameCube);
|
Core::HID::NpadStyleIndex::GameCube);
|
||||||
ui->comboControllerType->addItem(tr("GameCube Controller"));
|
ui->comboControllerType->addItem(tr("GameCube Controller"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Disable all unsupported controllers
|
||||||
|
if (!Settings::values.enable_all_controllers) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (enable_all || npad_style_set.palma == 1) {
|
||||||
|
index_controller_type_pairs.emplace_back(ui->comboControllerType->count(),
|
||||||
|
Core::HID::NpadStyleIndex::Pokeball);
|
||||||
|
ui->comboControllerType->addItem(tr("Poke Ball Plus"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (enable_all || npad_style_set.lark == 1) {
|
||||||
|
index_controller_type_pairs.emplace_back(ui->comboControllerType->count(),
|
||||||
|
Core::HID::NpadStyleIndex::NES);
|
||||||
|
ui->comboControllerType->addItem(tr("NES Controller"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (enable_all || npad_style_set.lucia == 1) {
|
||||||
|
index_controller_type_pairs.emplace_back(ui->comboControllerType->count(),
|
||||||
|
Core::HID::NpadStyleIndex::SNES);
|
||||||
|
ui->comboControllerType->addItem(tr("SNES Controller"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (enable_all || npad_style_set.lagoon == 1) {
|
||||||
|
index_controller_type_pairs.emplace_back(ui->comboControllerType->count(),
|
||||||
|
Core::HID::NpadStyleIndex::N64);
|
||||||
|
ui->comboControllerType->addItem(tr("N64 Controller"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (enable_all || npad_style_set.lager == 1) {
|
||||||
|
index_controller_type_pairs.emplace_back(ui->comboControllerType->count(),
|
||||||
|
Core::HID::NpadStyleIndex::SegaGenesis);
|
||||||
|
ui->comboControllerType->addItem(tr("Sega Genesis"));
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!is_powered_on) {
|
if (!is_powered_on) {
|
||||||
|
|
Loading…
Reference in a new issue