aboutsummaryrefslogtreecommitdiff
path: root/src/common/settings.h
diff options
context:
space:
mode:
authorxbzk <xbzk@eden-emu.dev>2026-06-27 02:52:13 +0200
committercrueter <crueter@eden-emu.dev>2026-06-27 02:52:13 +0200
commit09b6b3b71e74a47ae8b8ffe64b1803fc34bae6a2 (patch)
tree7949d8522bafb1565b98c3821db07c2b96867f89 /src/common/settings.h
parent629ebf1bdee023d3d3ecc96c3276cf3285f8f727 (diff)
xbzk/gpu-logging_qt-controls_android-fix (#4018)
5af7771f83-Bugfix: Made gpu_log_level global-only (was per-game switchable). Fixed Android non-determinism where a per-game profile silently overrode the global to Off and trapped GPULogger::Initialize() in a dead state, making shader dumps fail invisibly. Android per-game UI now hides the whole GPU logging block; Qt UI is untouched (global-only anyway). bf4aabe8ab-Refactor/Cleanup: Removed gpu_logging_enabled master toggle as redundant with gpu_log_level == Off. Introduced GPU::Logging::IsActive() helper, replaced 14 call sites across vk_*.cpp. Refactored LogShaderCompilation() to be text-only and extracted SPIR-V dumping into a standalone GPU::Logging::DumpSpirvShader() free function. No singleton dependency, gated only by gpu_log_shader_dumps. Now gpu_log_level and gpu_log_shader_dumps are fully orthogonal. Cleaned up Android (BooleanSetting, SettingsItem, presenter, 7 locale string files). 865a1c5027-Refactor: Renamed dump_shaders → dump_guest_shaders to disambiguate from gpu_log_shader_dumps. Updated Qt label to "Dump Guest (Maxwell) Shaders" and rewrote the tooltip to mention .ash, the DumpDir/shaders/ location, and nvdisasm. 7cab456fdf-Feature: Added Qt UI control for GPU log level in the Logging session. Added gpu_log_shader_dumps checkbox to the Graphics column right below dump_guest_shaders. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4018 Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Diffstat (limited to 'src/common/settings.h')
-rw-r--r--src/common/settings.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/common/settings.h b/src/common/settings.h
index 5f6e1a2206..61979d836e 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -788,8 +788,8 @@ struct Values {
false}; // runtime_modifiable_ — startup-only
Setting<bool> dump_exefs{linkage, false, "dump_exefs", Category::Debugging};
Setting<bool> dump_nso{linkage, false, "dump_nso", Category::Debugging};
- Setting<bool> dump_shaders{
- linkage, false, "dump_shaders", Category::DebuggingGraphics, Specialization::Default,
+ Setting<bool> dump_guest_shaders{
+ linkage, false, "dump_guest_shaders", Category::DebuggingGraphics, Specialization::Default,
false};
Setting<bool> dump_macros{
linkage, false, "dump_macros", Category::DebuggingGraphics, Specialization::Default, false};
@@ -813,9 +813,8 @@ struct Values {
Setting<bool> disable_web_applet{linkage, true, "disable_web_applet", Category::Debugging};
// GPU Logging
- Setting<bool> gpu_logging_enabled{linkage, false, "gpu_logging_enabled", Category::Debugging};
- SwitchableSetting<GpuLogLevel> gpu_log_level{linkage, GpuLogLevel::Standard, "gpu_log_level",
- Category::Debugging};
+ Setting<GpuLogLevel> gpu_log_level{linkage, GpuLogLevel::Off, "gpu_log_level",
+ Category::Debugging};
Setting<bool> gpu_log_vulkan_calls{linkage, true, "gpu_log_vulkan_calls", Category::Debugging};
Setting<bool> gpu_log_shader_dumps{linkage, false, "gpu_log_shader_dumps", Category::Debugging};
Setting<bool> gpu_log_memory_tracking{linkage, true, "gpu_log_memory_tracking",
@@ -876,6 +875,9 @@ bool IsFastmemEnabled();
void SetNceEnabled(bool is_64bit);
bool IsNceEnabled();
+void SetCurrentProgramID(u64 program_id);
+u64 GetCurrentProgramID();
+
bool IsOpenGL();
bool IsDockedMode();