summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/hle/kernel/svc/svc_info.cpp10
-rw-r--r--src/core/hle/kernel/svc_types.h1
2 files changed, 11 insertions, 0 deletions
diff --git a/src/core/hle/kernel/svc/svc_info.cpp b/src/core/hle/kernel/svc/svc_info.cpp
index 46667a882..bd997dcd4 100644
--- a/src/core/hle/kernel/svc/svc_info.cpp
+++ b/src/core/hle/kernel/svc/svc_info.cpp
@@ -228,6 +228,16 @@ Result GetInfo(Core::System& system, u64* result, InfoType info_id_type, Handle
*result = system.Kernel().CurrentScheduler()->GetIdleThread()->GetCpuTime();
R_SUCCEED();
}
+ case InfoType::SystemResourceSize: {
+ LOG_DEBUG(Kernel_SVC, "called info_type={:#x}, info_subtype={:#x}, handle={:#x}", info_id,
+ info_sub_id, handle);
+
+ // VAMM (Virtual Address Memory Manager) typically expects a larger memory size
+ // The value below (512MB) is based on typical system resource allocations
+ *result = 0x20000000; // 512MB in bytes
+
+ R_SUCCEED();
+ }
case InfoType::MesosphereCurrentProcess: {
// Verify the input handle is invalid.
R_UNLESS(handle == InvalidHandle, ResultInvalidHandle);
diff --git a/src/core/hle/kernel/svc_types.h b/src/core/hle/kernel/svc_types.h
index f520d1805..3f51fb6fa 100644
--- a/src/core/hle/kernel/svc_types.h
+++ b/src/core/hle/kernel/svc_types.h
@@ -156,6 +156,7 @@ enum class InfoType : u32 {
MesosphereMeta = 65000,
MesosphereCurrentProcess = 65001,
+ SystemResourceSize = 0x1C,
};
enum class BreakReason : u32 {