mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-08-28 17:45:39 +00:00
[video_core] Simplify DMA options (#525)
This simplifies DMA options in a clearer and more objective way. Co-authored-by: PavelBARABANOV <pavelbarabanov94@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/525 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev> Co-authored-by: MaranBr <maranbr@outlook.com> Co-committed-by: MaranBr <maranbr@outlook.com>
This commit is contained in:
@@ -154,11 +154,19 @@ bool IsGPULevelHigh() {
|
||||
values.current_gpu_accuracy == GpuAccuracy::High;
|
||||
}
|
||||
|
||||
bool IsDMALevelDefault() {
|
||||
return values.dma_accuracy.GetValue() == DmaAccuracy::Default;
|
||||
}
|
||||
|
||||
bool IsDMALevelSafe() {
|
||||
return values.dma_accuracy.GetValue() == DmaAccuracy::Safe;
|
||||
}
|
||||
|
||||
bool IsFastmemEnabled() {
|
||||
if (values.cpu_debug_mode) {
|
||||
return static_cast<bool>(values.cpuopt_fastmem);
|
||||
}
|
||||
if (Settings::values.cpu_accuracy.GetValue() == Settings::CpuAccuracy::Unsafe) {
|
||||
if (values.cpu_accuracy.GetValue() == CpuAccuracy::Unsafe) {
|
||||
return static_cast<bool>(values.cpuopt_unsafe_host_mmu);
|
||||
}
|
||||
#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__sun__)
|
||||
|
||||
@@ -443,7 +443,7 @@ struct Values {
|
||||
SwitchableSetting<DmaAccuracy, true> dma_accuracy{linkage,
|
||||
DmaAccuracy::Default,
|
||||
DmaAccuracy::Default,
|
||||
DmaAccuracy::Extreme,
|
||||
DmaAccuracy::Safe,
|
||||
"dma_accuracy",
|
||||
Category::RendererAdvanced,
|
||||
Specialization::Default,
|
||||
@@ -783,6 +783,9 @@ void UpdateGPUAccuracy();
|
||||
bool IsGPULevelExtreme();
|
||||
bool IsGPULevelHigh();
|
||||
|
||||
bool IsDMALevelDefault();
|
||||
bool IsDMALevelSafe();
|
||||
|
||||
bool IsFastmemEnabled();
|
||||
void SetNceEnabled(bool is_64bit);
|
||||
bool IsNceEnabled();
|
||||
|
||||
@@ -136,7 +136,7 @@ ENUM(ShaderBackend, Glsl, Glasm, SpirV);
|
||||
|
||||
ENUM(GpuAccuracy, Normal, High, Extreme);
|
||||
|
||||
ENUM(DmaAccuracy, Default, Normal, High, Extreme);
|
||||
ENUM(DmaAccuracy, Default, Unsafe, Safe);
|
||||
|
||||
ENUM(CpuBackend, Dynarmic, Nce);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user