diff options
| author | 2019-04-04 21:10:47 -0400 | |
|---|---|---|
| committer | 2019-04-05 11:03:53 -0400 | |
| commit | d9ee58a3b5c3682d96713067e6cf2bf3ef72ec55 (patch) | |
| tree | 3b4a74ff1f81e95c437519714bcb619fd2bbdbfd /src | |
| parent | Merge pull request #2330 from lioncash/pragma (diff) | |
| download | yuzu-d9ee58a3b5c3682d96713067e6cf2bf3ef72ec55.tar.gz yuzu-d9ee58a3b5c3682d96713067e6cf2bf3ef72ec55.tar.xz yuzu-d9ee58a3b5c3682d96713067e6cf2bf3ef72ec55.zip | |
service/fsp_srv: Update SaveDataInfo and SaveDataDescriptor structs
I realized that I updated the documentation on SwitchBrew a while ago,
but never actually updated the structs within yuzu.
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/file_sys/savedata_factory.cpp | 6 | ||||
| -rw-r--r-- | src/core/file_sys/savedata_factory.h | 9 | ||||
| -rw-r--r-- | src/core/hle/service/filesystem/fsp_srv.cpp | 4 |
3 files changed, 15 insertions, 4 deletions
diff --git a/src/core/file_sys/savedata_factory.cpp b/src/core/file_sys/savedata_factory.cpp index 1913dc956..aba7249b5 100644 --- a/src/core/file_sys/savedata_factory.cpp +++ b/src/core/file_sys/savedata_factory.cpp | |||
| @@ -16,8 +16,10 @@ namespace FileSys { | |||
| 16 | constexpr char SAVE_DATA_SIZE_FILENAME[] = ".yuzu_save_size"; | 16 | constexpr char SAVE_DATA_SIZE_FILENAME[] = ".yuzu_save_size"; |
| 17 | 17 | ||
| 18 | std::string SaveDataDescriptor::DebugInfo() const { | 18 | std::string SaveDataDescriptor::DebugInfo() const { |
| 19 | return fmt::format("[type={:02X}, title_id={:016X}, user_id={:016X}{:016X}, save_id={:016X}]", | 19 | return fmt::format("[type={:02X}, title_id={:016X}, user_id={:016X}{:016X}, save_id={:016X}, " |
| 20 | static_cast<u8>(type), title_id, user_id[1], user_id[0], save_id); | 20 | "rank={}, index={}]", |
| 21 | static_cast<u8>(type), title_id, user_id[1], user_id[0], save_id, | ||
| 22 | static_cast<u8>(rank), index); | ||
| 21 | } | 23 | } |
| 22 | 24 | ||
| 23 | SaveDataFactory::SaveDataFactory(VirtualDir save_directory) : dir(std::move(save_directory)) { | 25 | SaveDataFactory::SaveDataFactory(VirtualDir save_directory) : dir(std::move(save_directory)) { |
diff --git a/src/core/file_sys/savedata_factory.h b/src/core/file_sys/savedata_factory.h index 3a1caf292..77e93250a 100644 --- a/src/core/file_sys/savedata_factory.h +++ b/src/core/file_sys/savedata_factory.h | |||
| @@ -32,12 +32,19 @@ enum class SaveDataType : u8 { | |||
| 32 | CacheStorage = 5, | 32 | CacheStorage = 5, |
| 33 | }; | 33 | }; |
| 34 | 34 | ||
| 35 | enum class SaveDataRank : u8 { | ||
| 36 | Primary, | ||
| 37 | Secondary, | ||
| 38 | }; | ||
| 39 | |||
| 35 | struct SaveDataDescriptor { | 40 | struct SaveDataDescriptor { |
| 36 | u64_le title_id; | 41 | u64_le title_id; |
| 37 | u128 user_id; | 42 | u128 user_id; |
| 38 | u64_le save_id; | 43 | u64_le save_id; |
| 39 | SaveDataType type; | 44 | SaveDataType type; |
| 40 | INSERT_PADDING_BYTES(7); | 45 | SaveDataRank rank; |
| 46 | u16_le index; | ||
| 47 | INSERT_PADDING_BYTES(4); | ||
| 41 | u64_le zero_1; | 48 | u64_le zero_1; |
| 42 | u64_le zero_2; | 49 | u64_le zero_2; |
| 43 | u64_le zero_3; | 50 | u64_le zero_3; |
diff --git a/src/core/hle/service/filesystem/fsp_srv.cpp b/src/core/hle/service/filesystem/fsp_srv.cpp index f03fb629c..06547e063 100644 --- a/src/core/hle/service/filesystem/fsp_srv.cpp +++ b/src/core/hle/service/filesystem/fsp_srv.cpp | |||
| @@ -616,7 +616,9 @@ private: | |||
| 616 | u64_le save_id; | 616 | u64_le save_id; |
| 617 | u64_le title_id; | 617 | u64_le title_id; |
| 618 | u64_le save_image_size; | 618 | u64_le save_image_size; |
| 619 | INSERT_PADDING_BYTES(0x28); | 619 | u16_le index; |
| 620 | FileSys::SaveDataRank rank; | ||
| 621 | INSERT_PADDING_BYTES(0x25); | ||
| 620 | }; | 622 | }; |
| 621 | static_assert(sizeof(SaveDataInfo) == 0x60, "SaveDataInfo has incorrect size."); | 623 | static_assert(sizeof(SaveDataInfo) == 0x60, "SaveDataInfo has incorrect size."); |
| 622 | 624 | ||