From 2c89d4d5cd4e308b04cebb1c9bca48e12f0945da Mon Sep 17 00:00:00 2001 From: Subv Date: Mon, 29 Dec 2014 13:04:37 -0500 Subject: Archives: Implemented ExtSaveData and SharedExtSaveData They will be stored in /extsavedata/SDMC and /extsavedata/NAND respectively. Also redirect some APT_A functions to their APT_U equivalents. Implemented the gamecoin.dat file in SharedExtSaveData in the PTM module. Implemented formatting the savegame. Retake a previous savegame if it exists instead of reporting them as not formatted every time a game is loaded. --- src/core/hle/service/fs/fs_user.cpp | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) (limited to 'src/core/hle/service/fs/fs_user.cpp') diff --git a/src/core/hle/service/fs/fs_user.cpp b/src/core/hle/service/fs/fs_user.cpp index b1a46527..7eb32146 100644 --- a/src/core/hle/service/fs/fs_user.cpp +++ b/src/core/hle/service/fs/fs_user.cpp @@ -107,14 +107,7 @@ static void OpenFileDirectly(Service::Interface* self) { LOG_DEBUG(Service_FS, "archive_path=%s file_path=%s, mode=%u attributes=%d", archive_path.DebugStr().c_str(), file_path.DebugStr().c_str(), mode.hex, attributes); - if (archive_path.GetType() != FileSys::Empty) { - LOG_ERROR(Service_FS, "archive LowPath type other than empty is currently unsupported"); - cmd_buff[1] = UnimplementedFunction(ErrorModule::FS).raw; - cmd_buff[3] = 0; - return; - } - - ResultVal archive_handle = OpenArchive(archive_id); + ResultVal archive_handle = OpenArchive(archive_id, archive_path); if (archive_handle.Failed()) { LOG_ERROR(Service_FS, "failed to get a handle for archive"); cmd_buff[1] = archive_handle.Code().raw; @@ -376,13 +369,7 @@ static void OpenArchive(Service::Interface* self) { LOG_DEBUG(Service_FS, "archive_path=%s", archive_path.DebugStr().c_str()); - if (archive_path.GetType() != FileSys::Empty) { - LOG_ERROR(Service_FS, "archive LowPath type other than empty is currently unsupported"); - cmd_buff[1] = UnimplementedFunction(ErrorModule::FS).raw; - return; - } - - ResultVal handle = OpenArchive(archive_id); + ResultVal handle = OpenArchive(archive_id, archive_path); cmd_buff[1] = handle.Code().raw; if (handle.Succeeded()) { cmd_buff[2] = *handle & 0xFFFFFFFF; -- cgit v1.2.3