diff --git a/frontend/libretro.c b/frontend/libretro.c index 8cbae419f..80b1739bc 100644 --- a/frontend/libretro.c +++ b/frontend/libretro.c @@ -2453,7 +2453,7 @@ static void update_variables(bool in_flight) } var.value = NULL; - var.key = "pcsx_rearmed_neon_enhancement_tex_adj"; + var.key = "pcsx_rearmed_neon_enhancement_tex_adj_v2"; if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) { diff --git a/frontend/libretro_core_options.h b/frontend/libretro_core_options.h index e4995277d..bcc34706d 100644 --- a/frontend/libretro_core_options.h +++ b/frontend/libretro_core_options.h @@ -558,10 +558,10 @@ struct retro_core_option_v2_definition option_defs_us[] = { "disabled", }, { - "pcsx_rearmed_neon_enhancement_tex_adj", + "pcsx_rearmed_neon_enhancement_tex_adj_v2", "(GPU) Enhanced Resolution Texture Adjustment", "Enhanced Resolution Texture Adjustment", - "('Enhanced Resolution' Hack) Attempts to solve some texturing issues in some games, but causes new ones in others.", + "('Enhanced Resolution' Hack) Solves some texturing issues in some games in Enhanced Resolution mode. May cause a small performance hit.", NULL, "gpu_neon", { @@ -569,7 +569,7 @@ struct retro_core_option_v2_definition option_defs_us[] = { { "enabled", NULL }, { NULL, NULL }, }, - "disabled", + "enabled", }, #endif /* GPU_NEON */ #ifdef GPU_PEOPS diff --git a/frontend/main.c b/frontend/main.c index 1318e1956..4c051e2c7 100644 --- a/frontend/main.c +++ b/frontend/main.c @@ -143,6 +143,7 @@ void emu_set_default_config(void) pl_rearmed_cbs.gpu_neon.allow_interlace = 2; // auto pl_rearmed_cbs.gpu_neon.enhancement_enable = pl_rearmed_cbs.gpu_neon.enhancement_no_main = 0; + pl_rearmed_cbs.gpu_neon.enhancement_tex_adj = 1; pl_rearmed_cbs.gpu_peops.iUseDither = 0; pl_rearmed_cbs.gpu_peops.dwActFixes = 1<<7; pl_rearmed_cbs.gpu_unai.ilace_force = 0; diff --git a/frontend/menu.c b/frontend/menu.c index 9b9af7c87..15034a90f 100644 --- a/frontend/menu.c +++ b/frontend/menu.c @@ -454,7 +454,7 @@ static const struct { CE_INTVAL_P(gpu_neon.allow_interlace), CE_INTVAL_P(gpu_neon.enhancement_enable), CE_INTVAL_P(gpu_neon.enhancement_no_main), - CE_INTVAL_P(gpu_neon.enhancement_tex_adj), + CE_INTVAL_PV(gpu_neon.enhancement_tex_adj, 2), CE_INTVAL_P(gpu_peopsgl.bDrawDither), CE_INTVAL_P(gpu_peopsgl.iFilterType), CE_INTVAL_P(gpu_peopsgl.iFrameTexType), @@ -1411,10 +1411,12 @@ static int menu_loop_gfx_options(int id, int keys) static const char h_gpu_neon[] = "Configure built-in NEON GPU plugin"; static const char h_gpu_neon_enhanced[] = - "Renders in double resolution at the cost of lower performance\n" + "Renders in double resolution at perf. cost\n" "(not available for high resolution games)"; static const char h_gpu_neon_enhanced_hack[] = "Speed hack for above option (glitches some games)"; +static const char h_gpu_neon_enhanced_texadj[] = + "Solves some Enh. res. texture issues, some perf hit"; static const char *men_gpu_interlace[] = { "Off", "On", "Auto", NULL }; static menu_entry e_menu_plugin_gpu_neon[] = @@ -1422,7 +1424,7 @@ static menu_entry e_menu_plugin_gpu_neon[] = mee_enum ("Enable interlace mode", 0, pl_rearmed_cbs.gpu_neon.allow_interlace, men_gpu_interlace), mee_onoff_h ("Enhanced resolution", 0, pl_rearmed_cbs.gpu_neon.enhancement_enable, 1, h_gpu_neon_enhanced), mee_onoff_h ("Enhanced res. speed hack", 0, pl_rearmed_cbs.gpu_neon.enhancement_no_main, 1, h_gpu_neon_enhanced_hack), - mee_onoff ("Enh. res. texture adjust", 0, pl_rearmed_cbs.gpu_neon.enhancement_tex_adj, 1), + mee_onoff_h ("Enh. res. texture adjust", 0, pl_rearmed_cbs.gpu_neon.enhancement_tex_adj, 1, h_gpu_neon_enhanced_texadj), mee_end, };