mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-07-23 22:29:44 -06:00

These changes allow Mario Kart Live: Home Circuit (v2.0.0) to boot into menus. Kart functionality has not been implemented and will not work. Version 1.0.0 is currently unsupported due to unimplemented ARM registers. I plan on addressing this issue at a later date. ### Here is a list of the implemented and stubbed services in this PR: #### Implemented: Ldn.Lp2p.IServiceCreator: 0 (CreateNetworkService) Ldn.Lp2p.IServiceCreator: 8 (CreateNetworkServiceMonitor) Ldn.Lp2p.ISfService: 0 (Initialize) Ldn.Lp2p.ISfServiceMonitor: 0 (Initialize) Ldn.Lp2p.ISfServiceMonitor: 256 (AttachNetworkInterfaceStateChangeEvent) Ldn.Lp2p.ISfServiceMonitor: 328 (AttachJoinEvent) #### Stubbed: Ldn.Lp2p.ISfService: 768 (CreateGroup) Ldn.Lp2p.ISfService: 1536 (SendToOtherGroup) Ldn.Lp2p.ISfService: 1544 (RecvFromOtherGroup) Ldn.Lp2p.ISfServiceMonitor: 288 (GetGroupInfo) Ldn.Lp2p.ISfServiceMonitor: 296 (GetGroupInfo2) Ldn.Lp2p.ISfServiceMonitor: 312 (GetIpConfig)
46 lines
1.2 KiB
C#
46 lines
1.2 KiB
C#
using Ryujinx.Common.Logging;
|
|
|
|
namespace Ryujinx.HLE.HOS.Services.Ldn.Lp2p
|
|
{
|
|
class ISfService : IpcService
|
|
{
|
|
public ISfService(ServiceCtx context) { }
|
|
|
|
[CommandCmif(0)]
|
|
// Initialize()
|
|
public ResultCode Initialize(ServiceCtx context)
|
|
{
|
|
context.ResponseData.Write(0);
|
|
|
|
return ResultCode.Success;
|
|
}
|
|
|
|
[CommandCmif(768)]
|
|
// CreateGroup(buffer<nn::lp2p::GroupInfo, 0x31)
|
|
public ResultCode CreateGroup(ServiceCtx context)
|
|
{
|
|
Logger.Stub?.PrintStub(LogClass.ServiceLdn);
|
|
|
|
return ResultCode.Success;
|
|
}
|
|
|
|
[CommandCmif(1536)]
|
|
// SendToOtherGroup(nn::lp2p::MacAddress, nn::lp2p::GroupId, s16, s16, u32, buffer<unknown, 0x21>)
|
|
public ResultCode SendToOtherGroup(ServiceCtx context)
|
|
{
|
|
Logger.Stub?.PrintStub(LogClass.ServiceLdn);
|
|
|
|
return ResultCode.Success;
|
|
}
|
|
|
|
[CommandCmif(1544)]
|
|
// RecvFromOtherGroup(u32, buffer<unknown, 0x22>) -> (nn::lp2p::MacAddress, u16, s16, u32, s32)
|
|
public ResultCode RecvFromOtherGroup(ServiceCtx context)
|
|
{
|
|
Logger.Stub?.PrintStub(LogClass.ServiceLdn);
|
|
|
|
return ResultCode.Success;
|
|
}
|
|
}
|
|
}
|