summaryrefslogtreecommitdiffstats
path: root/src/core/hle
diff options
context:
space:
mode:
authorwwylele <wwylele@gmail.com>2016-11-28 23:52:11 +0100
committerwwylele <wwylele@gmail.com>2016-11-29 22:50:00 +0100
commit589b6427909dfc7a4b5ee1a64cb86d38d459b0f3 (patch)
treeb6ad186dd5d10ef0aa5db9153962a1c18060f417 /src/core/hle
parentFS: add missing MediaType (diff)
downloadyuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.tar
yuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.tar.gz
yuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.tar.bz2
yuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.tar.lz
yuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.tar.xz
yuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.tar.zst
yuzu-589b6427909dfc7a4b5ee1a64cb86d38d459b0f3.zip
Diffstat (limited to 'src/core/hle')
-rw-r--r--src/core/hle/result.h1
-rw-r--r--src/core/hle/service/fs/archive.cpp9
-rw-r--r--src/core/hle/service/fs/archive.h2
3 files changed, 12 insertions, 0 deletions
diff --git a/src/core/hle/result.h b/src/core/hle/result.h
index f7356f9d8..8d29117a8 100644
--- a/src/core/hle/result.h
+++ b/src/core/hle/result.h
@@ -22,6 +22,7 @@ enum class ErrorDescription : u32 {
FS_ArchiveNotMounted = 101,
FS_FileNotFound = 112,
FS_PathNotFound = 113,
+ FS_GameCardNotInserted = 141,
FS_NotFound = 120,
FS_FileAlreadyExists = 180,
FS_DirectoryAlreadyExists = 185,
diff --git a/src/core/hle/service/fs/archive.cpp b/src/core/hle/service/fs/archive.cpp
index a067e9262..bef75f5df 100644
--- a/src/core/hle/service/fs/archive.cpp
+++ b/src/core/hle/service/fs/archive.cpp
@@ -16,6 +16,7 @@
#include "core/file_sys/archive_backend.h"
#include "core/file_sys/archive_extsavedata.h"
#include "core/file_sys/archive_ncch.h"
+#include "core/file_sys/archive_other_savedata.h"
#include "core/file_sys/archive_savedata.h"
#include "core/file_sys/archive_sdmc.h"
#include "core/file_sys/archive_sdmcwriteonly.h"
@@ -538,6 +539,14 @@ void RegisterArchiveTypes() {
auto sd_savedata_source = std::make_shared<FileSys::ArchiveSource_SDSaveData>(sdmc_directory);
auto savedata_factory = std::make_unique<FileSys::ArchiveFactory_SaveData>(sd_savedata_source);
RegisterArchiveType(std::move(savedata_factory), ArchiveIdCode::SaveData);
+ auto other_savedata_permitted_factory =
+ std::make_unique<FileSys::ArchiveFactory_OtherSaveDataPermitted>(sd_savedata_source);
+ RegisterArchiveType(std::move(other_savedata_permitted_factory),
+ ArchiveIdCode::OtherSaveDataPermitted);
+ auto other_savedata_general_factory =
+ std::make_unique<FileSys::ArchiveFactory_OtherSaveDataGeneral>(sd_savedata_source);
+ RegisterArchiveType(std::move(other_savedata_general_factory),
+ ArchiveIdCode::OtherSaveDataGeneral);
auto extsavedata_factory =
std::make_unique<FileSys::ArchiveFactory_ExtSaveData>(sdmc_directory, false);
diff --git a/src/core/hle/service/fs/archive.h b/src/core/hle/service/fs/archive.h
index d0220db17..87089bd92 100644
--- a/src/core/hle/service/fs/archive.h
+++ b/src/core/hle/service/fs/archive.h
@@ -34,6 +34,8 @@ enum class ArchiveIdCode : u32 {
SDMC = 0x00000009,
SDMCWriteOnly = 0x0000000A,
NCCH = 0x2345678A,
+ OtherSaveDataGeneral = 0x567890B2,
+ OtherSaveDataPermitted = 0x567890B4,
};
/// Media types for the archives