From 8e9513cb5f61f2024426aec234f2b7ea7e4a2114 Mon Sep 17 00:00:00 2001 From: lizzie Date: Mon, 15 Jun 2026 21:59:53 +0200 Subject: [PATCH] [service/ro] Fix too many plugin.nro not being loaded for SSBU (#3982) Good fix or absolute trash? For me it seems like an OK balance, better would be fully dynamic; but I believe 256 is a reasonable limit? Signed-off-by: lizzie Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3982 Reviewed-by: MaranBr Reviewed-by: Maufeat --- src/core/hle/service/ro/ro.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/core/hle/service/ro/ro.cpp b/src/core/hle/service/ro/ro.cpp index cd50e69ce1..895bcad864 100644 --- a/src/core/hle/service/ro/ro.cpp +++ b/src/core/hle/service/ro/ro.cpp @@ -21,10 +21,13 @@ namespace Service::RO { namespace { -// Convenience definitions. -constexpr size_t MaxSessions = 0x3; -constexpr size_t MaxNrrInfos = 0x40; -constexpr size_t MaxNroInfos = 0x40; +// Atmosphere defines as follows: +// Sessions = 0x03, NrrInfos = 0x40, NroInfos = 0x40 +// This may not be enough for some mods (plugin.nro dependant games) like SSBU +// Suppose someone loads like 64 plugins of these, now what? +constexpr size_t MaxSessions = 0x03; // No change +constexpr size_t MaxNrrInfos = 0x100; // Up to 256 NRRs +constexpr size_t MaxNroInfos = 0x100; // Up to 256 NROs constexpr u64 InvalidProcessId = 0xffffffffffffffffULL; constexpr u64 InvalidContextId = 0xffffffffffffffffULL;