Add pl:u stub, use higher precision on CNTPCT_EL0 register tick count

This commit is contained in:
gdkchan 2018-03-13 21:24:17 -03:00
parent f6873fc045
commit bc41bea0cb
5 changed files with 47 additions and 3 deletions

View file

@ -17,6 +17,8 @@ namespace Ryujinx.Core.OsHle
private const int TlsSize = 0x200;
private const int TotalTlsSlots = 32;
private const int TickFreq = 19_200_000;
private Switch Ns;
public bool NeedsHbAbi { get; private set; }
@ -197,6 +199,7 @@ namespace Ryujinx.Core.OsHle
Thread.ThreadState.Undefined += UndefinedHandler;
Thread.ThreadState.ProcessId = ProcessId;
Thread.ThreadState.ThreadId = ThreadId;
Thread.ThreadState.CntfrqEl0 = TickFreq;
Thread.ThreadState.Tpidr = Tpidr;
Thread.ThreadState.X0 = (ulong)ArgsPtr;
Thread.ThreadState.X1 = (ulong)Handle;

View file

@ -13,6 +13,7 @@ namespace Ryujinx.Core.OsHle.IpcServices.Pl
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, RequestLoad },
{ 1, GetLoadState },
{ 2, GetFontSize },
{ 3, GetSharedMemoryAddressOffset },
@ -20,6 +21,13 @@ namespace Ryujinx.Core.OsHle.IpcServices.Pl
};
}
public long RequestLoad(ServiceCtx Context)
{
SharedFontType FontType = (SharedFontType)Context.RequestData.ReadInt32();
return 0;
}
public long GetLoadState(ServiceCtx Context)
{
Context.ResponseData.Write(1); //Loaded

View file

@ -0,0 +1,12 @@
namespace Ryujinx.Core.OsHle.IpcServices.Pl
{
enum SharedFontType
{
JapanUsEurope = 0,
SimplifiedChinese = 1,
SimplifiedChineseEx = 2,
TraditionalChinese = 3,
Korean = 4,
NintendoEx = 5
}
}