diff --git a/documentation/PER_DEVICE_DOCUMENTATION/H700/SUPPORTED_EMULATORS_AND_CORES.md b/documentation/PER_DEVICE_DOCUMENTATION/H700/SUPPORTED_EMULATORS_AND_CORES.md
index 195ec167df..f27144b658 100644
--- a/documentation/PER_DEVICE_DOCUMENTATION/H700/SUPPORTED_EMULATORS_AND_CORES.md
+++ b/documentation/PER_DEVICE_DOCUMENTATION/H700/SUPPORTED_EMULATORS_AND_CORES.md
@@ -107,7 +107,7 @@
|SNK|Neo Geo CD (neocd)|1994|`neocd`|.cue .iso .chd|**retroarch:** neocd (default)
**retroarch:** fbneo
|
|SNK|Neo Geo Pocket (ngp)|1998|`ngp`|.ngp .ngc .zip .7z|**retroarch:** beetle_ngp (default)
**retroarch:** race
**mednafen:** ngp
|
|SNK|Neo Geo Pocket Color (ngpc)|1999|`ngpc`|.ngp .ngc .zip .7z|**retroarch:** beetle_ngp (default)
**retroarch:** race
**mednafen:** ngp
|
-|Sony|PlayStation (psx)|1994|`psx`|.bin .cue .img .mdf .pbp .toc .cbn .m3u .ccd .chd .iso|**retroarch:** pcsx_rearmed32 (default)
**retroarch:** pcsx_rearmed
**duckstation:** duckstation-sa
**retroarch:** duckstation
**retroarch:** swanstation
|
+|Sony|PlayStation (psx)|1994|`psx`|.bin .cue .img .mdf .pbp .toc .cbn .m3u .ccd .chd .iso|**retroarch:** pcsx_rearmed32 (default)
**retroarch:** pcsx_rearmed
**duckstation:** duckstation-sa
**retroarch:** swanstation
|
|Sony|PlayStation Portable (psp)|2004|`psp`|.iso .cso .pbp .chd|**ppsspp:** ppsspp-sa (default)
|
|Sony|PSP Minis (pspminis)|2004|`pspminis`|.iso .cso .pbp .chd|**ppsspp:** ppsspp-sa (default)
**retroarch:** ppsspp
|
|Sun Microsystems|J2ME (j2me)|2002|`j2me`|.jar|**retroarch:** freej2me (default)
|
diff --git a/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/package.mk b/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/package.mk
deleted file mode 100644
index f25307263f..0000000000
--- a/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/package.mk
+++ /dev/null
@@ -1,31 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0-or-later
-# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
-
-PKG_NAME="duckstation-lr"
-PKG_VERSION="24c373245ebdab946f11627520edea76e1f23b8e"
-PKG_LICENSE="GPLv3"
-PKG_SITE="https://github.com/stenzek/duckstation"
-PKG_URL="${PKG_SITE}.git"
-PKG_DEPENDS_TARGET="toolchain SDL2 nasm:host pulseaudio openssl libidn2 nghttp2 zlib curl libevdev"
-PKG_LONGDESC="DuckStation - PlayStation 1, aka. PSX Emulator"
-PKG_TOOLCHAIN="cmake"
-PKG_BUILD_FLAGS="-lto"
-
-pre_configure_target() {
- case ${TARGET_ARCH} in
- x86_64)
- CFLAGS+=" -march=x86-64"
- ;;
- esac
-
-PKG_CMAKE_OPTS_TARGET+=" -DBUILD_SDL_FRONTEND=OFF \
- -DBUILD_QT_FRONTEND=OFF \
- -DBUILD_LIBRETRO_CORE=ON \
- -DENABLE_DISCORD_PRESENCE=OFF \
- -DUSE_X11=OFF"
-}
-
-makeinstall_target() {
- mkdir -p ${INSTALL}/usr/lib/libretro
- cp ${PKG_BUILD}/.${TARGET_NAME}/duckstation_libretro.so ${INSTALL}/usr/lib/libretro/
-}
diff --git a/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/patches/000-hide-cache-dir.patch b/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/patches/000-hide-cache-dir.patch
deleted file mode 100644
index 2e909636f9..0000000000
--- a/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/patches/000-hide-cache-dir.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/src/duckstation-libretro/libretro_host_interface.cpp b/src/duckstation-libretro/libretro_host_interface.cpp
-index bb5f647e..35ef7f4a 100644
---- a/src/duckstation-libretro/libretro_host_interface.cpp
-+++ b/src/duckstation-libretro/libretro_host_interface.cpp
-@@ -175,9 +175,9 @@ std::string LibretroHostInterface::GetShaderCacheBasePath() const
- }
- }
-
-- // Use a directory named "duckstation_cache" in the save/system directory.
-+ // Use a directory named ".duckstation_cache" in the save/system directory.
- std::string shader_cache_path = StringUtil::StdStringFromFormat(
-- "%s" FS_OSPATH_SEPARATOR_STR "duckstation_cache" FS_OSPATH_SEPARATOR_STR, save_directory_ptr);
-+ "%s" FS_OSPATH_SEPARATOR_STR ".duckstation_cache" FS_OSPATH_SEPARATOR_STR, save_directory_ptr);
- if (!FileSystem::DirectoryExists(shader_cache_path.c_str()) &&
- !FileSystem::CreateDirectory(shader_cache_path.c_str(), false))
- {
diff --git a/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/patches/001-fix-gcc13-compile.patch b/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/patches/001-fix-gcc13-compile.patch
deleted file mode 100644
index 90428ab9a5..0000000000
--- a/projects/ROCKNIX/packages/emulators/libretro/duckstation-lr/patches/001-fix-gcc13-compile.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-diff --git a/src/common/log.h b/src/common/log.h
-index 1223ce03..0c6b0856 100644
---- a/src/common/log.h
-+++ b/src/common/log.h
-@@ -1,6 +1,8 @@
- #pragma once
- #include "types.h"
- #include
-+#include
-+#include
- #include
-
- enum LOGLEVEL
-diff --git a/src/core/cpu_core.h b/src/core/cpu_core.h
-index c9199153..5d82b5c0 100644
---- a/src/core/cpu_core.h
-+++ b/src/core/cpu_core.h
-@@ -84,6 +84,8 @@ struct State
- std::array dcache = {};
- std::array icache_tags = {};
- std::array icache_data = {};
-+
-+ static constexpr u32 GTERegisterOffset(u32 index) { return offsetof(State, gte_regs.r32) + (sizeof(u32) * index); }
- };
-
- extern State g_state;
-diff --git a/src/core/cpu_recompiler_code_generator.cpp b/src/core/cpu_recompiler_code_generator.cpp
-index 68492b03..e550844e 100644
---- a/src/core/cpu_recompiler_code_generator.cpp
-+++ b/src/core/cpu_recompiler_code_generator.cpp
-@@ -2377,7 +2377,7 @@ Value CodeGenerator::DoGTERegisterRead(u32 index)
-
- default:
- {
-- EmitLoadCPUStructField(value.host_reg, RegSize_32, offsetof(State, gte_regs.r32[index]));
-+ EmitLoadCPUStructField(value.host_reg, RegSize_32, State::GTERegisterOffset(index));
- }
- break;
- }
-@@ -2406,7 +2406,7 @@ void CodeGenerator::DoGTERegisterWrite(u32 index, const Value& value)
- {
- // sign-extend z component of vector registers
- Value temp = ConvertValueSize(value.ViewAsSize(RegSize_16), RegSize_32, true);
-- EmitStoreCPUStructField(offsetof(State, gte_regs.r32[index]), temp);
-+ EmitStoreCPUStructField(State::GTERegisterOffset(index), temp);
- return;
- }
- break;
-@@ -2419,7 +2419,7 @@ void CodeGenerator::DoGTERegisterWrite(u32 index, const Value& value)
- {
- // zero-extend unsigned values
- Value temp = ConvertValueSize(value.ViewAsSize(RegSize_16), RegSize_32, false);
-- EmitStoreCPUStructField(offsetof(State, gte_regs.r32[index]), temp);
-+ EmitStoreCPUStructField(State::GTERegisterOffset(index), temp);
- return;
- }
- break;
-@@ -2461,7 +2461,7 @@ void CodeGenerator::DoGTERegisterWrite(u32 index, const Value& value)
- default:
- {
- // written as-is, 2x16 or 1x32 bits
-- EmitStoreCPUStructField(offsetof(State, gte_regs.r32[index]), value);
-+ EmitStoreCPUStructField(State::GTERegisterOffset(index), value);
- return;
- }
- }
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/AMD64/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/AMD64/retroarch-core-options.cfg
index 4339e5d94e..479187cadb 100644
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/AMD64/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/AMD64/retroarch-core-options.cfg
@@ -148,7 +148,6 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Touch"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
desmume_screens_layout = "left/right"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/H700/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/H700/retroarch-core-options.cfg
index 85a919af4e..8ccae69cf1 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/H700/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/H700/retroarch-core-options.cfg
@@ -148,7 +148,6 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
swanstation_GPU_Renderer = "Software"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3326/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3326/retroarch-core-options.cfg
index f0f3122721..0bcbaa2661 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3326/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3326/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3399/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3399/retroarch-core-options.cfg
index f0f3122721..0bcbaa2661 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3399/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3399/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3566/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3566/retroarch-core-options.cfg
index 38e4ab0646..59b65f5bfb 100644
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3566/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3566/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3588/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3588/retroarch-core-options.cfg
index f0f3122721..0bcbaa2661 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3588/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/RK3588/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/S922X/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/S922X/retroarch-core-options.cfg
index ce05eb6ff3..3f1cc2ca9e 100644
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/S922X/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/S922X/retroarch-core-options.cfg
@@ -148,7 +148,6 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
desmume_screens_layout = "left/right"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SDM845/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SDM845/retroarch-core-options.cfg
index f0f3122721..0bcbaa2661 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SDM845/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SDM845/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8250/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8250/retroarch-core-options.cfg
index f0f3122721..0bcbaa2661 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8250/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8250/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8550/retroarch-core-options.cfg b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8550/retroarch-core-options.cfg
index f0f3122721..0bcbaa2661 100755
--- a/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8550/retroarch-core-options.cfg
+++ b/projects/ROCKNIX/packages/emulators/libretro/retroarch/sources/SM8550/retroarch-core-options.cfg
@@ -148,6 +148,5 @@ melonds_screen_layout = "Left/Right"
melonds_swapscreen_mode = "Toggle"
melonds_threaded_renderer = "enabled"
melonds_touch_mode = "Joystick"
-duckstation_GPU.Renderer = "Software"
virtualjaguar_bios = "enabled"
virtualjaguar_usefastblitter = "enabled"
diff --git a/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg b/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg
index f47d909cbd..39d2e023f4 100644
--- a/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg
+++ b/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg
@@ -1487,7 +1487,6 @@
-
diff --git a/projects/ROCKNIX/packages/virtual/emulators/package.mk b/projects/ROCKNIX/packages/virtual/emulators/package.mk
index 536099fbe1..b92a8bbb1a 100644
--- a/projects/ROCKNIX/packages/virtual/emulators/package.mk
+++ b/projects/ROCKNIX/packages/virtual/emulators/package.mk
@@ -15,8 +15,8 @@ PKG_RETROARCH="core-info libretro-database retroarch retroarch-assets retroarch-
LIBRETRO_CORES="81-lr a5200-lr arduous-lr atari800-lr beetle-gba-lr beetle-lynx-lr beetle-ngp-lr beetle-pce-lr beetle-pce-fast-lr \
beetle-pcfx-lr bsnes-mercury-accuracy-lr bsnes-mercury-balanced-lr bsnes-mercury-performance-lr beetle-supafaust-lr \
beetle-supergrafx-lr beetle-vb-lr beetle-wswan-lr bluemsx-lr cap32-lr crocods-lr daphne-lr doublecherrygb-lr \
- dosbox-core-lr dosbox-pure-lr duckstation-lr easyrpg-lr emuscv-lr fake08-lr fbalpha2012-lr \
- fbalpha2019-lr fbneo-lr fceumm-lr flycast-lr fmsx-lr freechaf-lr freeintv-lr freej2me-lr fuse-lr gambatte-lr \
+ dosbox-core-lr dosbox-pure-lr easyrpg-lr emuscv-lr fake08-lr fbalpha2012-lr \
+ fbalpha2019-lr fbneo-lr fceumm-lr flycast-lr fmsx-lr freechaf-lr freeintv-lr freej2me-lr fuse-lr gambatte-lr \
gearboy-lr gearcoleco-lr gearsystem-lr genesis-plus-gx-lr genesis-plus-gx-wide-lr gw-lr handy-lr hatari-lr idtech-lr \
jaxe-lr mame-lr mame2003-plus-lr mame2010-lr mame2015-lr melonds-lr melonds-ds-lr mesen-lr mgba-lr minivmac-lr \
mojozork-lr mu-lr mupen64plus-lr mupen64plus-nx-lr neocd_lr nestopia-lr np2kai-lr o2em-lr opera-lr parallel-n64-lr \
@@ -890,7 +890,6 @@ makeinstall_target() {
;;
esac
add_emu_core psx duckstation duckstation-sa false
- add_emu_core psx retroarch duckstation false
add_emu_core psx retroarch swanstation false
add_es_system psx