aboutsummaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorMaranBr <maranbr@outlook.com>2025-08-23 19:42:10 +0200
committercrueter <crueter@eden-emu.dev>2025-08-23 19:42:10 +0200
commit5b864d406d44cd786b00ce0a4cec70fc44930652 (patch)
tree9fac927346362e6b18843303d7e7b84565cc5024 /src/common
parenta51953e4f9f8ec4868c473857a4f297eb7a5e2b8 (diff)
[video_core] Add option to control the DMA precision level at runtime (#304)
This adds an option to control the DMA precision level at runtime. Co-authored-by: crueter <crueter@eden-emu.dev> Co-authored-by: PavelBARABANOV <pavelbarabanov94@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/304 Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: MaranBr <maranbr@outlook.com> Co-committed-by: MaranBr <maranbr@outlook.com>
Diffstat (limited to 'src/common')
-rw-r--r--src/common/settings.h12
-rw-r--r--src/common/settings_enums.h2
2 files changed, 14 insertions, 0 deletions
diff --git a/src/common/settings.h b/src/common/settings.h
index 2a1c88c79e..01e391d501 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -427,7 +427,19 @@ struct Values {
Specialization::Default,
true,
true};
+
GpuAccuracy current_gpu_accuracy{GpuAccuracy::High};
+
+ SwitchableSetting<DmaAccuracy, true> dma_accuracy{linkage,
+ DmaAccuracy::Default,
+ DmaAccuracy::Default,
+ DmaAccuracy::Extreme,
+ "dma_accuracy",
+ Category::RendererAdvanced,
+ Specialization::Default,
+ true,
+ true};
+
SwitchableSetting<AnisotropyMode, true> max_anisotropy{linkage,
#ifdef ANDROID
AnisotropyMode::Default,
diff --git a/src/common/settings_enums.h b/src/common/settings_enums.h
index c2347f74d0..52b4a128f7 100644
--- a/src/common/settings_enums.h
+++ b/src/common/settings_enums.h
@@ -136,6 +136,8 @@ ENUM(ShaderBackend, Glsl, Glasm, SpirV);
ENUM(GpuAccuracy, Normal, High, Extreme);
+ENUM(DmaAccuracy, Default, Normal, High, Extreme);
+
ENUM(CpuBackend, Dynarmic, Nce);
ENUM(CpuAccuracy, Auto, Accurate, Unsafe, Paranoid);