From 5e6cbfd005b8709218a9318f7389a52ae09b4a2d Mon Sep 17 00:00:00 2001 From: Douglas Teles Date: Fri, 17 Apr 2026 18:16:06 -0300 Subject: [PATCH] Fix Panel 4 overlay bug, optimize emulators for RK3326 performance Critical fixes: - archr-dtbo.py: Remove premature return for odroidgo3-compatible devices that was skipping hardware property generation (reset-gpios, power-supply, backlight-supply, enable-delay-ms). This is the ROOT CAUSE of Panel 4 wrong image and vibration issues reported by users. - RetroArch: Switch from glcore to gl (more efficient on Panfrost/Mali-G31), increase swapchain images from 2 to 3 (better frame pacing on Mali) - DraStic: Disable hires_3d on ALL RK3326 configs (Mali-G31 lacks power for high-res 3D rendering, was causing frame drops in NDS games) - EmulationStation: Bump to latest with performance optimizations Co-Authored-By: Claude Opus 4.6 (1M context) --- config/mipi-generator/archr-dtbo.py | 3 --- .../emulators/libretro/retroarch/sources/RK3326/retroarch.cfg | 4 ++-- .../emulators/standalone/drastic-sa/config/RK3326/drastic.cfg | 2 +- .../standalone/drastic-sa/config/RK3326/drastic.cfg.oga | 2 +- .../standalone/drastic-sa/config/RK3326/drastic.cfg.ogabe | 2 +- .../standalone/drastic-sa/config/RK3326/drastic.cfg.r33s | 2 +- .../standalone/drastic-sa/config/RK3326/drastic.cfg.r36s | 2 +- .../standalone/drastic-sa/config/RK3326/drastic.cfg.xut | 2 +- projects/ArchR/packages/ui/emulationstation/package.mk | 2 +- 9 files changed, 9 insertions(+), 12 deletions(-) diff --git a/config/mipi-generator/archr-dtbo.py b/config/mipi-generator/archr-dtbo.py index ec6d62c273..479b86b8e9 100644 --- a/config/mipi-generator/archr-dtbo.py +++ b/config/mipi-generator/archr-dtbo.py @@ -337,9 +337,6 @@ def make_dtbo(dtb_data, args): compat = dt.get_node('/').get_property('compatible').data[0] args['logger'].info(f"compatible {compat}") - if 'odroidgo3' in compat: - # quick return for well supported R36s - return overlay.to_dtb() # copy reset config pins_path = panel_ovl.path+'/__overlay__/pinctrl/gpio-lcd/lcd-rst' diff --git a/projects/ArchR/packages/emulators/libretro/retroarch/sources/RK3326/retroarch.cfg b/projects/ArchR/packages/emulators/libretro/retroarch/sources/RK3326/retroarch.cfg index c1febcbdcc..0d09761fa1 100755 --- a/projects/ArchR/packages/emulators/libretro/retroarch/sources/RK3326/retroarch.cfg +++ b/projects/ArchR/packages/emulators/libretro/retroarch/sources/RK3326/retroarch.cfg @@ -734,7 +734,7 @@ video_context_driver = "wayland" video_crop_overscan = "true" video_ctx_scaling = "false" video_disable_composition = "false" -video_driver = "glcore" +video_driver = "gl" video_filter = "" video_filter_dir = "~/.config/retroarch/filters/video" video_font_enable = "true" @@ -760,7 +760,7 @@ video_layout_directory = "~/.config/retroarch/layouts" video_layout_enable = "true" video_layout_path = "" video_layout_selected_view = "0" -video_max_swapchain_images = "2" +video_max_swapchain_images = "3" video_message_color = "ffff00" video_message_pos_x = "0.049999" video_message_pos_y = "0.049999" diff --git a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg index dc9efe3e2f..87a1c86898 100644 --- a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg +++ b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg @@ -21,7 +21,7 @@ trim_roms = 0 fix_main_2d_screen = 0 disable_edge_marking = 0 interframe_blend = 0 -hires_3d = 1 +hires_3d = 0 use_rtc_custom_time = 0 rtc_custom_time = 0 rtc_system_time = 0 diff --git a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga index 704e8d9692..048b007d10 100644 --- a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga +++ b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.oga @@ -21,7 +21,7 @@ trim_roms = 0 fix_main_2d_screen = 0 disable_edge_marking = 0 interframe_blend = 0 -hires_3d = 1 +hires_3d = 0 use_rtc_custom_time = 0 rtc_custom_time = 0 rtc_system_time = 0 diff --git a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.ogabe b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.ogabe index 592dec4beb..8d34df659b 100644 --- a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.ogabe +++ b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.ogabe @@ -21,7 +21,7 @@ trim_roms = 0 fix_main_2d_screen = 0 disable_edge_marking = 0 interframe_blend = 0 -hires_3d = 1 +hires_3d = 0 use_rtc_custom_time = 0 rtc_custom_time = 0 rtc_system_time = 0 diff --git a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r33s b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r33s index 7b2bf24e50..ad28c07b98 100644 --- a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r33s +++ b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r33s @@ -21,7 +21,7 @@ trim_roms = 0 fix_main_2d_screen = 0 disable_edge_marking = 0 interframe_blend = 0 -hires_3d = 1 +hires_3d = 0 use_rtc_custom_time = 0 rtc_custom_time = 0 rtc_system_time = 0 diff --git a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r36s b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r36s index fac972367f..564e9e51e2 100644 --- a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r36s +++ b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.r36s @@ -21,7 +21,7 @@ trim_roms = 0 fix_main_2d_screen = 0 disable_edge_marking = 0 interframe_blend = 0 -hires_3d = 1 +hires_3d = 0 use_rtc_custom_time = 0 rtc_custom_time = 0 rtc_system_time = 0 diff --git a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.xut b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.xut index dd6a317de3..44c7be899f 100644 --- a/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.xut +++ b/projects/ArchR/packages/emulators/standalone/drastic-sa/config/RK3326/drastic.cfg.xut @@ -21,7 +21,7 @@ trim_roms = 0 fix_main_2d_screen = 0 disable_edge_marking = 0 interframe_blend = 0 -hires_3d = 1 +hires_3d = 0 use_rtc_custom_time = 0 rtc_custom_time = 0 rtc_system_time = 0 diff --git a/projects/ArchR/packages/ui/emulationstation/package.mk b/projects/ArchR/packages/ui/emulationstation/package.mk index c1fb3e9612..c0f0329991 100644 --- a/projects/ArchR/packages/ui/emulationstation/package.mk +++ b/projects/ArchR/packages/ui/emulationstation/package.mk @@ -2,7 +2,7 @@ # Copyright (C) 2026 ArchR (https://github.com/archr-linux/Arch-R) PKG_NAME="emulationstation" -PKG_VERSION="89041b19276df779f8c40b2b45cc737a96576a37" +PKG_VERSION="dbe0ad814d7bc7f44dd8cfb94aff3b45335db442" PKG_GIT_CLONE_BRANCH="master" PKG_LICENSE="GPL" PKG_SITE="https://github.com/archr-linux/emulationstation-next"