Improved Logger (#1292)
* Logger class changes only Now compile-time checking is possible with the help of Nullable Value types. * Misc formatting * Manual optimizations PrintGuestLog PrintGuestStackTrace Surfaceflinger DequeueBuffer * Reduce SendVibrationXX log level to Debug * Add Notice log level This level is always enabled and used to print system info, etc... Also, rewrite LogColor to switch expression as colors are static * Unify unhandled exception event handlers * Print enabled LogLevels during init * Re-add App Exit disposes in proper order nit: switch case spacing * Revert PrintGuestStackTrace to Info logs due to #1407 PrintGuestStackTrace is now called in some critical error handlers so revert to old behavior as KThread isn't part of Guest. * Batch replace Logger statements
This commit is contained in:
parent
60db4c3530
commit
a33dc2f491
120 changed files with 800 additions and 809 deletions
|
@ -364,7 +364,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.MME
|
|||
{
|
||||
if (!Fifo.TryDequeue(out int value))
|
||||
{
|
||||
Logger.PrintWarning(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
|
||||
Logger.Warning?.Print(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -22,7 +22,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.MME
|
|||
{
|
||||
if (!Fifo.TryDequeue(out int value))
|
||||
{
|
||||
Logger.PrintWarning(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
|
||||
Logger.Warning?.Print(LogClass.Gpu, "Macro attempted to fetch an inexistent argument.");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|||
return CounterCompare(condState.Address.Pack(), false);
|
||||
}
|
||||
|
||||
Logger.PrintWarning(LogClass.Gpu, $"Invalid conditional render condition \"{condState.Condition}\".");
|
||||
Logger.Warning?.Print(LogClass.Gpu, $"Invalid conditional render condition \"{condState.Condition}\".");
|
||||
|
||||
return ConditionalRenderEnabled.True;
|
||||
}
|
||||
|
|
|
@ -692,7 +692,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|||
|
||||
if (!FormatTable.TryGetAttribFormat(vertexAttrib.UnpackFormat(), out Format format))
|
||||
{
|
||||
Logger.PrintDebug(LogClass.Gpu, $"Invalid attribute format 0x{vertexAttrib.UnpackFormat():X}.");
|
||||
Logger.Debug?.Print(LogClass.Gpu, $"Invalid attribute format 0x{vertexAttrib.UnpackFormat():X}.");
|
||||
|
||||
format = Format.R32G32B32A32Float;
|
||||
}
|
||||
|
@ -1114,7 +1114,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|||
return Target.CubemapArray;
|
||||
}
|
||||
|
||||
Logger.PrintWarning(LogClass.Gpu, $"Invalid sampler type \"{type}\".");
|
||||
Logger.Warning?.Print(LogClass.Gpu, $"Invalid sampler type \"{type}\".");
|
||||
|
||||
return Target.Texture2D;
|
||||
}
|
||||
|
|
|
@ -414,7 +414,7 @@ namespace Ryujinx.Graphics.Gpu.Image
|
|||
|
||||
if (ScaleFactor != scale)
|
||||
{
|
||||
Logger.PrintDebug(LogClass.Gpu, $"Rescaling {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()} to ({ScaleFactor} to {scale}). ");
|
||||
Logger.Debug?.Print(LogClass.Gpu, $"Rescaling {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()} to ({ScaleFactor} to {scale}). ");
|
||||
TextureCreateInfo createInfo = TextureManager.GetCreateInfo(Info, _context.Capabilities);
|
||||
|
||||
ScaleFactor = scale;
|
||||
|
@ -430,7 +430,7 @@ namespace Ryujinx.Graphics.Gpu.Image
|
|||
HostTexture.CopyTo(newStorage, new Extents2D(0, 0, HostTexture.Width, HostTexture.Height), new Extents2D(0, 0, newStorage.Width, newStorage.Height), true);
|
||||
}
|
||||
|
||||
Logger.PrintDebug(LogClass.Gpu, $" Copy performed: {HostTexture.Width}x{HostTexture.Height} to {newStorage.Width}x{newStorage.Height}");
|
||||
Logger.Debug?.Print(LogClass.Gpu, $" Copy performed: {HostTexture.Width}x{HostTexture.Height} to {newStorage.Width}x{newStorage.Height}");
|
||||
|
||||
ReplaceStorage(newStorage);
|
||||
|
||||
|
@ -438,7 +438,7 @@ namespace Ryujinx.Graphics.Gpu.Image
|
|||
|
||||
foreach (var view in _views)
|
||||
{
|
||||
Logger.PrintDebug(LogClass.Gpu, $" Recreating view {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()}.");
|
||||
Logger.Debug?.Print(LogClass.Gpu, $" Recreating view {Info.Width}x{Info.Height} {Info.FormatInfo.Format.ToString()}.");
|
||||
view.ScaleFactor = scale;
|
||||
|
||||
TextureCreateInfo viewCreateInfo = TextureManager.GetCreateInfo(view.Info, _context.Capabilities);
|
||||
|
@ -590,7 +590,7 @@ namespace Ryujinx.Graphics.Gpu.Image
|
|||
{
|
||||
string texInfo = $"{Info.Target} {Info.FormatInfo.Format} {Info.Width}x{Info.Height}x{Info.DepthOrLayers} levels {Info.Levels}";
|
||||
|
||||
Logger.PrintDebug(LogClass.Gpu, $"Invalid ASTC texture at 0x{Info.Address:X} ({texInfo}).");
|
||||
Logger.Debug?.Print(LogClass.Gpu, $"Invalid ASTC texture at 0x{Info.Address:X} ({texInfo}).");
|
||||
}
|
||||
|
||||
data = decoded;
|
||||
|
|
|
@ -151,7 +151,7 @@ namespace Ryujinx.Graphics.Gpu.Image
|
|||
{
|
||||
if ((long)address > 0L && (int)format > 0)
|
||||
{
|
||||
Logger.PrintError(LogClass.Gpu, $"Invalid texture format 0x{format:X} (sRGB: {srgb}).");
|
||||
Logger.Error?.Print(LogClass.Gpu, $"Invalid texture format 0x{format:X} (sRGB: {srgb}).");
|
||||
}
|
||||
|
||||
formatInfo = FormatInfo.Default;
|
||||
|
|
|
@ -70,7 +70,7 @@ namespace Ryujinx.Graphics.Gpu.Shader
|
|||
/// <param name="message">Message to print</param>
|
||||
public void Log(string message)
|
||||
{
|
||||
Logger.PrintWarning(LogClass.Gpu, $"Shader translator: {message}");
|
||||
Logger.Warning?.Print(LogClass.Gpu, $"Shader translator: {message}");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -131,7 +131,7 @@ namespace Ryujinx.Graphics.Gpu.Synchronization
|
|||
|
||||
if (!signaled && info != null)
|
||||
{
|
||||
Logger.PrintError(LogClass.Gpu, $"Wait on syncpoint {id} for threshold {threshold} took more than {timeout.TotalMilliseconds}ms, resuming execution...");
|
||||
Logger.Error?.Print(LogClass.Gpu, $"Wait on syncpoint {id} for threshold {threshold} took more than {timeout.TotalMilliseconds}ms, resuming execution...");
|
||||
|
||||
_syncpoints[id].UnregisterCallback(info);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue