diff options
| author | 2024-02-21 19:47:38 -0500 | |
|---|---|---|
| committer | 2024-02-21 19:47:54 -0500 | |
| commit | a8bca2429299dbc436b8c167107580a9e4697cb6 (patch) | |
| tree | 3179304a9041bfbef0f93fc36aefb3b1dcaa519a | |
| parent | olsc: add IDaemonController (diff) | |
| download | yuzu-a8bca2429299dbc436b8c167107580a9e4697cb6.tar.gz yuzu-a8bca2429299dbc436b8c167107580a9e4697cb6.tar.xz yuzu-a8bca2429299dbc436b8c167107580a9e4697cb6.zip | |
olsc: add IRemoteStorageController
| -rw-r--r-- | src/core/hle/service/olsc/remote_storage_controller.cpp | 54 | ||||
| -rw-r--r-- | src/core/hle/service/olsc/remote_storage_controller.h | 19 |
2 files changed, 73 insertions, 0 deletions
diff --git a/src/core/hle/service/olsc/remote_storage_controller.cpp b/src/core/hle/service/olsc/remote_storage_controller.cpp new file mode 100644 index 000000000..81d9c96ab --- /dev/null +++ b/src/core/hle/service/olsc/remote_storage_controller.cpp | |||
| @@ -0,0 +1,54 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include "core/hle/service/cmif_serialization.h" | ||
| 5 | #include "core/hle/service/olsc/remote_storage_controller.h" | ||
| 6 | |||
| 7 | namespace Service::OLSC { | ||
| 8 | |||
| 9 | IRemoteStorageController::IRemoteStorageController(Core::System& system_) | ||
| 10 | : ServiceFramework{system_, "IRemoteStorageController"} { | ||
| 11 | // clang-format off | ||
| 12 | static const FunctionInfo functions[] = { | ||
| 13 | {0, nullptr, "GetSaveDataArchiveInfoBySaveDataId"}, | ||
| 14 | {1, nullptr, "GetSaveDataArchiveInfoByApplicationId"}, | ||
| 15 | {3, nullptr, "GetSaveDataArchiveCount"}, | ||
| 16 | {6, nullptr, "CleanupSaveDataArchives"}, | ||
| 17 | {7, nullptr, "CreateSaveDataArchiveCacheUpdationTask"}, | ||
| 18 | {8, nullptr, "CreateSaveDataArchiveCacheUpdationForSpecifiedApplicationTask"}, | ||
| 19 | {9, nullptr, "Delete"}, | ||
| 20 | {10, nullptr, "GetSeriesInfo"}, | ||
| 21 | {11, nullptr, "CreateDeleteDataTask"}, | ||
| 22 | {12, nullptr, "DeleteSeriesInfo"}, | ||
| 23 | {13, nullptr, "CreateRegisterNotificationTokenTask"}, | ||
| 24 | {14, nullptr, "UpdateSeriesInfo"}, | ||
| 25 | {15, nullptr, "RegisterUploadSaveDataTransferTaskForAutonomyRegistration"}, | ||
| 26 | {16, nullptr, "CreateCleanupToDeleteSaveDataArchiveInfoTask"}, | ||
| 27 | {17, nullptr, "ListDataInfo"}, | ||
| 28 | {18, nullptr, "GetDataInfo"}, | ||
| 29 | {19, nullptr, "Unknown19"}, | ||
| 30 | {20, nullptr, "CreateSaveDataArchiveInfoCacheForSaveDataBackupUpdationTask"}, | ||
| 31 | {21, nullptr, "ListSecondarySaves"}, | ||
| 32 | {22, D<&IRemoteStorageController::GetSecondarySave>, "GetSecondarySave"}, | ||
| 33 | {23, nullptr, "TouchSecondarySave"}, | ||
| 34 | {24, nullptr, "GetSecondarySaveDataInfo"}, | ||
| 35 | {25, nullptr, "RegisterDownloadSaveDataTransferTaskForAutonomyRegistration"}, | ||
| 36 | {900, nullptr, "Unknown900"}, | ||
| 37 | }; | ||
| 38 | // clang-format on | ||
| 39 | |||
| 40 | RegisterHandlers(functions); | ||
| 41 | } | ||
| 42 | |||
| 43 | IRemoteStorageController::~IRemoteStorageController() = default; | ||
| 44 | |||
| 45 | Result IRemoteStorageController::GetSecondarySave(Out<bool> out_has_secondary_save, | ||
| 46 | Out<std::array<u64, 3>> out_unknown, | ||
| 47 | u64 application_id) { | ||
| 48 | LOG_ERROR(Service_OLSC, "(STUBBED) called, application_id={:016X}", application_id); | ||
| 49 | *out_has_secondary_save = false; | ||
| 50 | *out_unknown = {}; | ||
| 51 | R_SUCCEED(); | ||
| 52 | } | ||
| 53 | |||
| 54 | } // namespace Service::OLSC | ||
diff --git a/src/core/hle/service/olsc/remote_storage_controller.h b/src/core/hle/service/olsc/remote_storage_controller.h new file mode 100644 index 000000000..e7a0b5244 --- /dev/null +++ b/src/core/hle/service/olsc/remote_storage_controller.h | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | // SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project | ||
| 2 | // SPDX-License-Identifier: GPL-2.0-or-later | ||
| 3 | |||
| 4 | #include "core/hle/service/cmif_types.h" | ||
| 5 | #include "core/hle/service/service.h" | ||
| 6 | |||
| 7 | namespace Service::OLSC { | ||
| 8 | |||
| 9 | class IRemoteStorageController final : public ServiceFramework<IRemoteStorageController> { | ||
| 10 | public: | ||
| 11 | explicit IRemoteStorageController(Core::System& system_); | ||
| 12 | ~IRemoteStorageController() override; | ||
| 13 | |||
| 14 | private: | ||
| 15 | Result GetSecondarySave(Out<bool> out_has_secondary_save, Out<std::array<u64, 3>> out_unknown, | ||
| 16 | u64 application_id); | ||
| 17 | }; | ||
| 18 | |||
| 19 | } // namespace Service::OLSC | ||