[settings,android] surfaced dump guest shaders and dump macro controls

This commit is contained in:
xbzk 2026-05-27 18:41:36 -03:00
parent 38b4830ab0
commit fd28d7f7c2
4 changed files with 24 additions and 2 deletions

View file

@ -85,6 +85,8 @@ enum class BooleanSetting(override val key: String) : AbstractBooleanSetting {
// GPU Logging
GPU_LOG_VULKAN_CALLS("gpu_log_vulkan_calls"),
GPU_LOG_SHADER_DUMPS("gpu_log_shader_dumps"),
DUMP_GUEST_SHADERS("dump_guest_shaders"),
DUMP_MACROS("dump_macros"),
GPU_LOG_MEMORY_TRACKING("gpu_log_memory_tracking"),
GPU_LOG_DRIVER_DEBUG("gpu_log_driver_debug"),

View file

@ -940,6 +940,13 @@ abstract class SettingsItem(
descriptionId = R.string.gpu_log_vulkan_calls_description
)
)
put(
SwitchSetting(
BooleanSetting.DUMP_GUEST_SHADERS,
titleId = R.string.dump_guest_shaders,
descriptionId = R.string.dump_guest_shaders_description
)
)
put(
SwitchSetting(
BooleanSetting.GPU_LOG_SHADER_DUMPS,
@ -947,6 +954,13 @@ abstract class SettingsItem(
descriptionId = R.string.gpu_log_shader_dumps_description
)
)
put(
SwitchSetting(
BooleanSetting.DUMP_MACROS,
titleId = R.string.dump_macros,
descriptionId = R.string.dump_macros_description
)
)
put(
SwitchSetting(
BooleanSetting.GPU_LOG_MEMORY_TRACKING,

View file

@ -1291,7 +1291,9 @@ class SettingsFragmentPresenter(
add(HeaderSetting(R.string.gpu_logging_header))
add(ByteSetting.GPU_LOG_LEVEL.key)
add(BooleanSetting.GPU_LOG_VULKAN_CALLS.key)
add(BooleanSetting.DUMP_GUEST_SHADERS.key)
add(BooleanSetting.GPU_LOG_SHADER_DUMPS.key)
add(BooleanSetting.DUMP_MACROS.key)
add(BooleanSetting.GPU_LOG_MEMORY_TRACKING.key)
add(BooleanSetting.GPU_LOG_DRIVER_DEBUG.key)
add(IntSetting.GPU_LOG_RING_BUFFER_SIZE.key)

View file

@ -576,8 +576,12 @@
<string name="gpu_log_level_description">Detail level for GPU logs (higher = more detail, more overhead)</string>
<string name="gpu_log_vulkan_calls">Log Vulkan API Calls</string>
<string name="gpu_log_vulkan_calls_description">Track all Vulkan API calls in ring buffer</string>
<string name="gpu_log_shader_dumps">Dump Shaders</string>
<string name="gpu_log_shader_dumps_description">Save compiled shader SPIR-V to files</string>
<string name="gpu_log_shader_dumps">Dump SPIR-V Shaders</string>
<string name="gpu_log_shader_dumps_description">Save recompiled SPIR-V binaries to &lt;dump&gt;/&lt;title_id&gt;_&lt;hash&gt;.spv. Inspect with spirv-dis / spirv-cross / spirv-val.</string>
<string name="dump_guest_shaders">Dump Guest (Maxwell) Shaders</string>
<string name="dump_guest_shaders_description">Save original Maxwell guest shader bytecode to &lt;dump&gt;/&lt;title_id&gt;_&lt;hash&gt;_&lt;stage&gt;.ash. Inspect with nvdisasm.</string>
<string name="dump_macros">Dump Maxwell Macros</string>
<string name="dump_macros_description">Save Maxwell macro programs to &lt;dump&gt;/&lt;title_id&gt;_&lt;hash&gt;_raw.macro (and _jit.macro when the macro JIT compiles them).</string>
<string name="gpu_log_memory_tracking">Track GPU Memory</string>
<string name="gpu_log_memory_tracking_description">Monitor GPU memory allocations and deallocations</string>
<string name="gpu_log_driver_debug">Driver Debug Info</string>