forked from Mirror/Ryujinx
Add special log for stubs (#81)
* add stub loglevel * add log for stubbed methods
This commit is contained in:
parent
494e6dfa1e
commit
b334aab435
19 changed files with 122 additions and 14 deletions
|
@ -17,6 +17,7 @@ namespace Ryujinx.Core
|
||||||
public static bool LoggingEnableError { get; private set; }
|
public static bool LoggingEnableError { get; private set; }
|
||||||
public static bool LoggingEnableFatal { get; private set; }
|
public static bool LoggingEnableFatal { get; private set; }
|
||||||
public static bool LoggingEnableIpc { get; private set; }
|
public static bool LoggingEnableIpc { get; private set; }
|
||||||
|
public static bool LoggingEnableStub { get; private set; }
|
||||||
public static bool LoggingEnableLogFile { get; private set; }
|
public static bool LoggingEnableLogFile { get; private set; }
|
||||||
public static bool LoggingEnableFilter { get; private set; }
|
public static bool LoggingEnableFilter { get; private set; }
|
||||||
public static bool[] LoggingFilteredClasses { get; private set; }
|
public static bool[] LoggingFilteredClasses { get; private set; }
|
||||||
|
@ -37,6 +38,7 @@ namespace Ryujinx.Core
|
||||||
LoggingEnableError = Convert.ToBoolean(Parser.Value("Logging_Enable_Error"));
|
LoggingEnableError = Convert.ToBoolean(Parser.Value("Logging_Enable_Error"));
|
||||||
LoggingEnableFatal = Convert.ToBoolean(Parser.Value("Logging_Enable_Fatal"));
|
LoggingEnableFatal = Convert.ToBoolean(Parser.Value("Logging_Enable_Fatal"));
|
||||||
LoggingEnableIpc = Convert.ToBoolean(Parser.Value("Logging_Enable_Ipc"));
|
LoggingEnableIpc = Convert.ToBoolean(Parser.Value("Logging_Enable_Ipc"));
|
||||||
|
LoggingEnableStub = Convert.ToBoolean(Parser.Value("Logging_Enable_Stub"));
|
||||||
LoggingEnableLogFile = Convert.ToBoolean(Parser.Value("Logging_Enable_LogFile"));
|
LoggingEnableLogFile = Convert.ToBoolean(Parser.Value("Logging_Enable_LogFile"));
|
||||||
LoggingEnableFilter = Convert.ToBoolean(Parser.Value("Logging_Enable_Filter"));
|
LoggingEnableFilter = Convert.ToBoolean(Parser.Value("Logging_Enable_Filter"));
|
||||||
LoggingFilteredClasses = new bool[(int)LogClass.Count];
|
LoggingFilteredClasses = new bool[(int)LogClass.Count];
|
||||||
|
|
|
@ -20,6 +20,7 @@ namespace Ryujinx.Core
|
||||||
private static bool EnableWarn = Config.LoggingEnableWarn;
|
private static bool EnableWarn = Config.LoggingEnableWarn;
|
||||||
private static bool EnableError = Config.LoggingEnableError;
|
private static bool EnableError = Config.LoggingEnableError;
|
||||||
private static bool EnableFatal = Config.LoggingEnableFatal;
|
private static bool EnableFatal = Config.LoggingEnableFatal;
|
||||||
|
private static bool EnableStub = Config.LoggingEnableIpc;
|
||||||
private static bool EnableIpc = Config.LoggingEnableIpc;
|
private static bool EnableIpc = Config.LoggingEnableIpc;
|
||||||
private static bool EnableFilter = Config.LoggingEnableFilter;
|
private static bool EnableFilter = Config.LoggingEnableFilter;
|
||||||
private static bool EnableLogFile = Config.LoggingEnableLogFile;
|
private static bool EnableLogFile = Config.LoggingEnableLogFile;
|
||||||
|
@ -27,12 +28,13 @@ namespace Ryujinx.Core
|
||||||
|
|
||||||
private enum LogLevel
|
private enum LogLevel
|
||||||
{
|
{
|
||||||
Debug = 1,
|
Debug,
|
||||||
Error = 2,
|
Error,
|
||||||
Fatal = 3,
|
Fatal,
|
||||||
Info = 4,
|
Info,
|
||||||
Trace = 5,
|
Stub,
|
||||||
Warn = 6
|
Trace,
|
||||||
|
Warn
|
||||||
}
|
}
|
||||||
|
|
||||||
static Logging()
|
static Logging()
|
||||||
|
@ -68,6 +70,9 @@ namespace Ryujinx.Core
|
||||||
case LogLevel.Info:
|
case LogLevel.Info:
|
||||||
consoleColor = ConsoleColor.White;
|
consoleColor = ConsoleColor.White;
|
||||||
break;
|
break;
|
||||||
|
case LogLevel.Stub:
|
||||||
|
consoleColor = ConsoleColor.DarkYellow;
|
||||||
|
break;
|
||||||
case LogLevel.Trace:
|
case LogLevel.Trace:
|
||||||
consoleColor = ConsoleColor.DarkGray;
|
consoleColor = ConsoleColor.DarkGray;
|
||||||
break;
|
break;
|
||||||
|
@ -129,6 +134,21 @@ namespace Ryujinx.Core
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void Stub(LogClass LogClass, string Message, [CallerMemberName] string CallingMember = "")
|
||||||
|
{
|
||||||
|
if (EnableStub)
|
||||||
|
{
|
||||||
|
LogMessage(new LogEntry
|
||||||
|
{
|
||||||
|
CallingMember = CallingMember,
|
||||||
|
LogLevel = LogLevel.Stub,
|
||||||
|
LogClass = LogClass,
|
||||||
|
Message = Message,
|
||||||
|
ExecutionTime = GetExecutionTime()
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static void Debug(LogClass LogClass,string Message, [CallerMemberName] string CallingMember = "")
|
public static void Debug(LogClass LogClass,string Message, [CallerMemberName] string CallingMember = "")
|
||||||
{
|
{
|
||||||
if (EnableDebug)
|
if (EnableDebug)
|
||||||
|
|
|
@ -22,6 +22,8 @@ namespace Ryujinx.Core.OsHle.Services.Acc
|
||||||
|
|
||||||
public long ListOpenUsers(ServiceCtx Context)
|
public long ListOpenUsers(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAcc, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,6 +36,8 @@ namespace Ryujinx.Core.OsHle.Services.Acc
|
||||||
|
|
||||||
public long InitializeApplicationInfo(ServiceCtx Context)
|
public long InitializeApplicationInfo(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAcc, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,12 +19,16 @@ namespace Ryujinx.Core.OsHle.Services.Acc
|
||||||
}
|
}
|
||||||
|
|
||||||
public long CheckAvailability(ServiceCtx Context)
|
public long CheckAvailability(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAcc, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public long GetAccountId(ServiceCtx Context)
|
public long GetAccountId(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAcc, "AccountId = 0xcafeL");
|
||||||
|
|
||||||
Context.ResponseData.Write(0xcafeL);
|
Context.ResponseData.Write(0xcafeL);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -19,6 +19,8 @@ namespace Ryujinx.Core.OsHle.Services.Acc
|
||||||
|
|
||||||
public long GetBase(ServiceCtx Context)
|
public long GetBase(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAcc, "Stubbed");
|
||||||
|
|
||||||
Context.ResponseData.Write(0L);
|
Context.ResponseData.Write(0L);
|
||||||
Context.ResponseData.Write(0L);
|
Context.ResponseData.Write(0L);
|
||||||
Context.ResponseData.Write(0L);
|
Context.ResponseData.Write(0L);
|
||||||
|
|
|
@ -37,6 +37,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
long UIdLow = Context.RequestData.ReadInt64();
|
long UIdLow = Context.RequestData.ReadInt64();
|
||||||
long UIdHigh = Context.RequestData.ReadInt64();
|
long UIdHigh = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"UidLow = {UIdLow}, UidHigh = {UIdHigh}");
|
||||||
|
|
||||||
Context.ResponseData.Write(0L);
|
Context.ResponseData.Write(0L);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -44,6 +46,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
|
|
||||||
public long GetDesiredLanguage(ServiceCtx Context)
|
public long GetDesiredLanguage(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAm, "LanguageId = 1");
|
||||||
|
|
||||||
//This is an enumerator where each number is a differnet language.
|
//This is an enumerator where each number is a differnet language.
|
||||||
//0 is Japanese and 1 is English, need to figure out the other codes.
|
//0 is Japanese and 1 is English, need to figure out the other codes.
|
||||||
Context.ResponseData.Write(1L);
|
Context.ResponseData.Write(1L);
|
||||||
|
|
|
@ -32,6 +32,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
{
|
{
|
||||||
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"ScreenShot Allowed = {Enable}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,6 +41,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
{
|
{
|
||||||
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"OperationMode Changed = {Enable}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,6 +50,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
{
|
{
|
||||||
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"PerformanceMode Changed = {Enable}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -55,6 +61,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
bool Flag2 = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Flag2 = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
bool Flag3 = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Flag3 = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"Focus Handling Mode Flags = {{{Flag1}|{Flag2}|{Flag3}}}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -62,6 +70,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
{
|
{
|
||||||
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"Restart Message Enabled = {Enable}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -69,6 +79,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
{
|
{
|
||||||
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
bool Enable = Context.RequestData.ReadByte() != 0 ? true : false;
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"Out Of Focus Suspending Enabled = {Enable}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
|
|
||||||
public long GetAppletResourceUserId(ServiceCtx Context)
|
public long GetAppletResourceUserId(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAm, $"Applet Resource Id = 0");
|
||||||
|
|
||||||
Context.ResponseData.Write(0L);
|
Context.ResponseData.Write(0L);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -27,6 +29,8 @@ namespace Ryujinx.Core.OsHle.Services.Am
|
||||||
|
|
||||||
public long AcquireForegroundRights(ServiceCtx Context)
|
public long AcquireForegroundRights(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAm, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,6 +32,9 @@ namespace Ryujinx.Core.OsHle.Services.Apm
|
||||||
|
|
||||||
Context.ResponseData.Write((uint)PerformanceConfiguration.PerformanceConfiguration1);
|
Context.ResponseData.Write((uint)PerformanceConfiguration.PerformanceConfiguration1);
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceApm, $"PerformanceMode = {PerfMode}, PerformanceConfiguration =" +
|
||||||
|
$" {PerformanceConfiguration.PerformanceConfiguration1}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,6 +57,8 @@ namespace Ryujinx.Core.OsHle.Services.Aud
|
||||||
|
|
||||||
string Name = AMemoryHelper.ReadAsciiString(Context.Memory, Position, Size);
|
string Name = AMemoryHelper.ReadAsciiString(Context.Memory, Position, Size);
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAudio, $"Volume = {Volume}, Position = {Position}, Size = {Size}");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,14 +124,14 @@ namespace Ryujinx.Core.OsHle.Services.Aud
|
||||||
|
|
||||||
public long AppendAudioOutBufferEx(ServiceCtx Context)
|
public long AppendAudioOutBufferEx(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
Logging.Warn(LogClass.ServiceAudio, "Not implemented!");
|
Logging.Stub(LogClass.ServiceAudio, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public long GetReleasedAudioOutBufferEx(ServiceCtx Context)
|
public long GetReleasedAudioOutBufferEx(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
Logging.Warn(LogClass.ServiceAudio, "Not implemented!");
|
Logging.Stub(LogClass.ServiceAudio, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,11 +54,15 @@ namespace Ryujinx.Core.OsHle.Services.Aud
|
||||||
|
|
||||||
public long StartAudioRenderer(ServiceCtx Context)
|
public long StartAudioRenderer(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAudio, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public long StopAudioRenderer(ServiceCtx Context)
|
public long StopAudioRenderer(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceAudio, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -42,6 +42,8 @@ namespace Ryujinx.Core.OsHle.Services.Aud
|
||||||
int Unknown2c = Context.RequestData.ReadInt32();
|
int Unknown2c = Context.RequestData.ReadInt32();
|
||||||
int Rev1Magic = Context.RequestData.ReadInt32();
|
int Rev1Magic = Context.RequestData.ReadInt32();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceAudio, "BufferSize = 0x400L");
|
||||||
|
|
||||||
Context.ResponseData.Write(0x400L);
|
Context.ResponseData.Write(0x400L);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -45,6 +45,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
|
|
||||||
public long ActivateDebugPad(ServiceCtx Context)
|
public long ActivateDebugPad(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -52,6 +54,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,6 +63,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,6 +72,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,6 +83,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
|
|
||||||
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
long AppletResourceUserId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,6 +92,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
Context.ResponseData.Write(0);
|
Context.ResponseData.Write(0);
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -90,6 +102,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
long Unknown0 = Context.RequestData.ReadInt64();
|
long Unknown0 = Context.RequestData.ReadInt64();
|
||||||
long Unknown8 = Context.RequestData.ReadInt64();
|
long Unknown8 = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -97,6 +111,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
long Unknown = Context.RequestData.ReadInt64();
|
long Unknown = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,6 +120,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
long Unknown = Context.RequestData.ReadInt64();
|
long Unknown = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -112,6 +130,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
long Unknown0 = Context.RequestData.ReadInt64();
|
long Unknown0 = Context.RequestData.ReadInt64();
|
||||||
long Unknown8 = Context.RequestData.ReadInt64();
|
long Unknown8 = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -119,6 +139,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
Context.ResponseData.Write(0L);
|
Context.ResponseData.Write(0L);
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -127,6 +149,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
HidControllerId HidControllerId = (HidControllerId)Context.RequestData.ReadInt32();
|
HidControllerId HidControllerId = (HidControllerId)Context.RequestData.ReadInt32();
|
||||||
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -136,6 +160,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
||||||
long NpadJoyDeviceType = Context.RequestData.ReadInt64();
|
long NpadJoyDeviceType = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -144,6 +170,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
HidControllerId HidControllerId = (HidControllerId)Context.RequestData.ReadInt32();
|
HidControllerId HidControllerId = (HidControllerId)Context.RequestData.ReadInt32();
|
||||||
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -153,6 +181,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
long Unknown8 = Context.RequestData.ReadInt32();
|
long Unknown8 = Context.RequestData.ReadInt32();
|
||||||
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
long AppletUserResourseId = Context.RequestData.ReadInt64();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -160,6 +190,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
{
|
{
|
||||||
int VibrationDeviceHandle = Context.RequestData.ReadInt32();
|
int VibrationDeviceHandle = Context.RequestData.ReadInt32();
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceHid, $"VibrationDeviceHandle = {VibrationDeviceHandle}, VibrationDeviceInfo = 0");
|
||||||
|
|
||||||
Context.ResponseData.Write(0L); //VibrationDeviceInfoForIpc
|
Context.ResponseData.Write(0L); //VibrationDeviceInfoForIpc
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -174,6 +206,8 @@ namespace Ryujinx.Core.OsHle.Services.Hid
|
||||||
|
|
||||||
public long SendVibrationValues(ServiceCtx Context)
|
public long SendVibrationValues(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceHid, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,7 +24,7 @@ namespace Ryujinx.Core.OsHle.Services.Nifm
|
||||||
|
|
||||||
MakeObject(Context, new IRequest());
|
MakeObject(Context, new IRequest());
|
||||||
|
|
||||||
//Todo: Stub
|
Logging.Stub(LogClass.ServiceNifm, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,14 +31,14 @@ namespace Ryujinx.Core.OsHle.Services.Nifm
|
||||||
{
|
{
|
||||||
Context.ResponseData.Write(0);
|
Context.ResponseData.Write(0);
|
||||||
|
|
||||||
//Todo: Stub
|
Logging.Stub(LogClass.ServiceNifm, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public long GetResult(ServiceCtx Context)
|
public long GetResult(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
//Todo: Stub
|
Logging.Stub(LogClass.ServiceNifm, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -56,14 +56,14 @@ namespace Ryujinx.Core.OsHle.Services.Nifm
|
||||||
|
|
||||||
public long Cancel(ServiceCtx Context)
|
public long Cancel(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
//Todo: Stub
|
Logging.Stub(LogClass.ServiceNifm, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public long Submit(ServiceCtx Context)
|
public long Submit(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
//Todo: Stub
|
Logging.Stub(LogClass.ServiceNifm, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,11 +22,15 @@ namespace Ryujinx.Core.OsHle.Services.Ns
|
||||||
{
|
{
|
||||||
Context.ResponseData.Write(0);
|
Context.ResponseData.Write(0);
|
||||||
|
|
||||||
|
Logging.Stub(LogClass.ServiceNs, "Stubbed");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static long ListAddOnContent(ServiceCtx Context)
|
public static long ListAddOnContent(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
Logging.Stub(LogClass.ServiceNs, "Stubbed");
|
||||||
|
|
||||||
//TODO: This is supposed to write a u32 array aswell.
|
//TODO: This is supposed to write a u32 array aswell.
|
||||||
//It's unknown what it contains.
|
//It's unknown what it contains.
|
||||||
Context.ResponseData.Write(0);
|
Context.ResponseData.Write(0);
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
using Ryujinx.Core.OsHle.Ipc;
|
using Ryujinx.Core.OsHle.Ipc;
|
||||||
|
using Ryujinx.Core.Settings;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Ryujinx.Core.OsHle.Services.Set
|
namespace Ryujinx.Core.OsHle.Services.Set
|
||||||
|
@ -27,6 +28,9 @@ namespace Ryujinx.Core.OsHle.Services.Set
|
||||||
|
|
||||||
public static long SetColorSetId(ServiceCtx Context)
|
public static long SetColorSetId(ServiceCtx Context)
|
||||||
{
|
{
|
||||||
|
int ColorSetId = Context.RequestData.ReadInt32();
|
||||||
|
|
||||||
|
Context.Ns.Settings.ThemeColor = (ColorSet)ColorSetId;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,9 @@ Logging_Enable_Error = true
|
||||||
#Enable print fatal logs
|
#Enable print fatal logs
|
||||||
Logging_Enable_Fatal = true
|
Logging_Enable_Fatal = true
|
||||||
|
|
||||||
|
#Enable print stubbed calls logs
|
||||||
|
Logging_Enable_Stub = false
|
||||||
|
|
||||||
#Enable print Ipc logs
|
#Enable print Ipc logs
|
||||||
Logging_Enable_Ipc = false
|
Logging_Enable_Ipc = false
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue