aboutsummaryrefslogtreecommitdiff
path: root/frontend/libretro.c
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/libretro.c')
-rw-r--r--frontend/libretro.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/frontend/libretro.c b/frontend/libretro.c
index 413098d..9be52f5 100644
--- a/frontend/libretro.c
+++ b/frontend/libretro.c
@@ -244,6 +244,7 @@ void retro_set_environment(retro_environment_t cb)
#ifdef __ARM_NEON__
{ "neon_interlace_enable", "Enable interlacing mode(s); disabled|enabled" },
{ "neon_enhancement_enable", "Enhanced resolution (slow); disabled|enabled" },
+ { "neon_enhancement_no_main", "Enhanced resolution speed hack; disabled|enabled" },
#endif
{ NULL, NULL },
};
@@ -778,6 +779,17 @@ static void update_variables(bool in_flight)
else if (strcmp(var.value, "enabled") == 0)
pl_rearmed_cbs.gpu_neon.enhancement_enable = 1;
}
+
+ var.value = NULL;
+ var.key = "neon_enhancement_no_main";
+
+ if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) || var.value)
+ {
+ if (strcmp(var.value, "disabled") == 0)
+ pl_rearmed_cbs.gpu_neon.enhancement_no_main = 0;
+ else if (strcmp(var.value, "enabled") == 0)
+ pl_rearmed_cbs.gpu_neon.enhancement_no_main = 1;
+ }
#endif
if (in_flight) {