From 68b147488eef593586dad6f1b7bb409b0e5c5770 Mon Sep 17 00:00:00 2001 From: kalaposfos13 <153381648+kalaposfos13@users.noreply.github.com> Date: Wed, 16 Jul 2025 17:03:39 +0200 Subject: [PATCH] If CONTENT_ID is empty in param.sfo, try using TITLE_ID as fallback (#3258) * If CONTENT_ID is empty in param.sfo, try using TITLE_ID as fallback * Remove assert that is now not needed and fix me switching up variable names --- src/emulator.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/emulator.cpp b/src/emulator.cpp index 480ceee0b..9485b0e23 100644 --- a/src/emulator.cpp +++ b/src/emulator.cpp @@ -99,9 +99,12 @@ void Emulator::Run(std::filesystem::path file, const std::vector ar ASSERT_MSG(param_sfo->Open(param_sfo_path), "Failed to open param.sfo"); const auto content_id = param_sfo->GetString("CONTENT_ID"); - ASSERT_MSG(content_id.has_value(), "Failed to get CONTENT_ID"); - - id = std::string(*content_id, 7, 9); + const auto title_id = param_sfo->GetString("TITLE_ID"); + if (content_id.has_value() && !content_id->empty()) { + id = std::string(*content_id, 7, 9); + } else if (title_id.has_value()) { + id = *title_id; + } title = param_sfo->GetString("TITLE").value_or("Unknown title"); fw_version = param_sfo->GetInteger("SYSTEM_VER").value_or(0x4700000); app_version = param_sfo->GetString("APP_VER").value_or("Unknown version");