using Ryujinx.HLE.HOS.Applets; using Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.LibraryAppletCreator; namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy { class ILibraryAppletCreator : IpcService { public ILibraryAppletCreator() { } [Command(0)] // CreateLibraryApplet(u32, u32) -> object public ResultCode CreateLibraryApplet(ServiceCtx context) { AppletId appletId = (AppletId)context.RequestData.ReadInt32(); int libraryAppletMode = context.RequestData.ReadInt32(); MakeObject(context, new ILibraryAppletAccessor(appletId, context.Device.System)); return ResultCode.Success; } [Command(10)] // CreateStorage(u64) -> object public ResultCode CreateStorage(ServiceCtx context) { long size = context.RequestData.ReadInt64(); MakeObject(context, new IStorage(new byte[size])); return ResultCode.Success; } [Command(11)] // CreateTransferMemoryStorage(b8, u64, handle) -> object public ResultCode CreateTransferMemoryStorage(ServiceCtx context) { bool unknown = context.RequestData.ReadBoolean(); long size = context.RequestData.ReadInt64(); // NOTE: We don't support TransferMemory for now. MakeObject(context, new IStorage(new byte[size])); return ResultCode.Success; } } }