mirror of
https://git.suyu.dev/suyu/suyu
synced 2024-12-25 19:02:45 -06:00
fs: stub cache storage and fix params alignment
This commit is contained in:
parent
182221b9ff
commit
13e4ceb990
2 changed files with 17 additions and 5 deletions
|
@ -24,8 +24,10 @@
|
||||||
#include "core/file_sys/savedata_factory.h"
|
#include "core/file_sys/savedata_factory.h"
|
||||||
#include "core/file_sys/system_archive/system_archive.h"
|
#include "core/file_sys/system_archive/system_archive.h"
|
||||||
#include "core/file_sys/vfs.h"
|
#include "core/file_sys/vfs.h"
|
||||||
|
#include "core/hle/result.h"
|
||||||
#include "core/hle/service/filesystem/filesystem.h"
|
#include "core/hle/service/filesystem/filesystem.h"
|
||||||
#include "core/hle/service/filesystem/fsp_srv.h"
|
#include "core/hle/service/filesystem/fsp_srv.h"
|
||||||
|
#include "core/hle/service/hle_ipc.h"
|
||||||
#include "core/hle/service/ipc_helpers.h"
|
#include "core/hle/service/ipc_helpers.h"
|
||||||
#include "core/reporter.h"
|
#include "core/reporter.h"
|
||||||
|
|
||||||
|
@ -308,8 +310,8 @@ private:
|
||||||
class IFileSystem final : public ServiceFramework<IFileSystem> {
|
class IFileSystem final : public ServiceFramework<IFileSystem> {
|
||||||
public:
|
public:
|
||||||
explicit IFileSystem(Core::System& system_, FileSys::VirtualDir backend_, SizeGetter size_)
|
explicit IFileSystem(Core::System& system_, FileSys::VirtualDir backend_, SizeGetter size_)
|
||||||
: ServiceFramework{system_, "IFileSystem"}, backend{std::move(backend_)}, size{std::move(
|
: ServiceFramework{system_, "IFileSystem"}, backend{std::move(backend_)},
|
||||||
size_)} {
|
size{std::move(size_)} {
|
||||||
static const FunctionInfo functions[] = {
|
static const FunctionInfo functions[] = {
|
||||||
{0, &IFileSystem::CreateFile, "CreateFile"},
|
{0, &IFileSystem::CreateFile, "CreateFile"},
|
||||||
{1, &IFileSystem::DeleteFile, "DeleteFile"},
|
{1, &IFileSystem::DeleteFile, "DeleteFile"},
|
||||||
|
@ -552,9 +554,9 @@ public:
|
||||||
// Write the data to memory
|
// Write the data to memory
|
||||||
ctx.WriteBuffer(begin, range_size);
|
ctx.WriteBuffer(begin, range_size);
|
||||||
|
|
||||||
IPC::ResponseBuilder rb{ctx, 3};
|
IPC::ResponseBuilder rb{ctx, 4};
|
||||||
rb.Push(ResultSuccess);
|
rb.Push(ResultSuccess);
|
||||||
rb.Push<u32>(static_cast<u32>(actual_entries));
|
rb.Push<u64>(actual_entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -712,7 +714,7 @@ FSP_SRV::FSP_SRV(Core::System& system_)
|
||||||
{59, nullptr, "WriteSaveDataFileSystemExtraData"},
|
{59, nullptr, "WriteSaveDataFileSystemExtraData"},
|
||||||
{60, nullptr, "OpenSaveDataInfoReader"},
|
{60, nullptr, "OpenSaveDataInfoReader"},
|
||||||
{61, &FSP_SRV::OpenSaveDataInfoReaderBySaveDataSpaceId, "OpenSaveDataInfoReaderBySaveDataSpaceId"},
|
{61, &FSP_SRV::OpenSaveDataInfoReaderBySaveDataSpaceId, "OpenSaveDataInfoReaderBySaveDataSpaceId"},
|
||||||
{62, nullptr, "OpenCacheStorageList"},
|
{62, &FSP_SRV::OpenSaveDataInfoReaderOnlyCacheStorage, "OpenSaveDataInfoReaderOnlyCacheStorage"},
|
||||||
{64, nullptr, "OpenSaveDataInternalStorageFileSystem"},
|
{64, nullptr, "OpenSaveDataInternalStorageFileSystem"},
|
||||||
{65, nullptr, "UpdateSaveDataMacForDebug"},
|
{65, nullptr, "UpdateSaveDataMacForDebug"},
|
||||||
{66, nullptr, "WriteSaveDataFileSystemExtraData2"},
|
{66, nullptr, "WriteSaveDataFileSystemExtraData2"},
|
||||||
|
@ -921,6 +923,15 @@ void FSP_SRV::OpenSaveDataInfoReaderBySaveDataSpaceId(HLERequestContext& ctx) {
|
||||||
std::make_shared<ISaveDataInfoReader>(system, space, fsc));
|
std::make_shared<ISaveDataInfoReader>(system, space, fsc));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void FSP_SRV::OpenSaveDataInfoReaderOnlyCacheStorage(HLERequestContext& ctx) {
|
||||||
|
LOG_WARNING(Service_FS, "(STUBBED) called");
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2, 0, 1};
|
||||||
|
rb.Push(ResultSuccess);
|
||||||
|
rb.PushIpcInterface<ISaveDataInfoReader>(system, FileSys::SaveDataSpaceId::TemporaryStorage,
|
||||||
|
fsc);
|
||||||
|
}
|
||||||
|
|
||||||
void FSP_SRV::WriteSaveDataFileSystemExtraDataBySaveDataAttribute(HLERequestContext& ctx) {
|
void FSP_SRV::WriteSaveDataFileSystemExtraDataBySaveDataAttribute(HLERequestContext& ctx) {
|
||||||
LOG_WARNING(Service_FS, "(STUBBED) called.");
|
LOG_WARNING(Service_FS, "(STUBBED) called.");
|
||||||
|
|
||||||
|
|
|
@ -42,6 +42,7 @@ private:
|
||||||
void OpenSaveDataFileSystem(HLERequestContext& ctx);
|
void OpenSaveDataFileSystem(HLERequestContext& ctx);
|
||||||
void OpenReadOnlySaveDataFileSystem(HLERequestContext& ctx);
|
void OpenReadOnlySaveDataFileSystem(HLERequestContext& ctx);
|
||||||
void OpenSaveDataInfoReaderBySaveDataSpaceId(HLERequestContext& ctx);
|
void OpenSaveDataInfoReaderBySaveDataSpaceId(HLERequestContext& ctx);
|
||||||
|
void OpenSaveDataInfoReaderOnlyCacheStorage(HLERequestContext& ctx);
|
||||||
void WriteSaveDataFileSystemExtraDataBySaveDataAttribute(HLERequestContext& ctx);
|
void WriteSaveDataFileSystemExtraDataBySaveDataAttribute(HLERequestContext& ctx);
|
||||||
void ReadSaveDataFileSystemExtraDataWithMaskBySaveDataAttribute(HLERequestContext& ctx);
|
void ReadSaveDataFileSystemExtraDataWithMaskBySaveDataAttribute(HLERequestContext& ctx);
|
||||||
void OpenDataStorageByCurrentProcess(HLERequestContext& ctx);
|
void OpenDataStorageByCurrentProcess(HLERequestContext& ctx);
|
||||||
|
|
Loading…
Reference in a new issue