Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
7070cf6ae5 | ||
|
9839cd56fb | ||
|
99f46e22e2 |
@@ -212,7 +212,7 @@ namespace Ryujinx.Audio.Renderer.Server
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Check if the audio renderer should fix the GC-ADPCM context not being provided to the DSP.
|
/// Check if the audio renderer should fix the GC-ADPCM context not being provided to the DSP.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>True if if the audio renderer should fix it.</returns>
|
/// <returns>True if the audio renderer should fix it.</returns>
|
||||||
public bool IsAdpcmLoopContextBugFixed()
|
public bool IsAdpcmLoopContextBugFixed()
|
||||||
{
|
{
|
||||||
return CheckFeatureSupported(UserRevision, BaseRevisionMagic + Revision2);
|
return CheckFeatureSupported(UserRevision, BaseRevisionMagic + Revision2);
|
||||||
|
@@ -44,7 +44,7 @@ namespace Ryujinx.Common.Extensions
|
|||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// DO NOT use <paramref name="copyDestinationIfRequiredDoNotUse"/> after calling this method, as it will only
|
/// DO NOT use <paramref name="copyDestinationIfRequiredDoNotUse"/> after calling this method, as it will only
|
||||||
/// contain a value if the value couldn't be referenced directly because it spans multiple <see cref="ReadOnlyMemory{Byte}"/> segments.
|
/// contain a value if the value couldn't be referenced directly because it spans multiple <see cref="ReadOnlyMemory{Byte}"/> segments.
|
||||||
/// To discourage use, it is recommended to to call this method like the following:
|
/// To discourage use, it is recommended to call this method like the following:
|
||||||
/// <c>
|
/// <c>
|
||||||
/// ref readonly MyStruct value = ref sequenceReader.GetRefOrRefToCopy{MyStruct}(out _);
|
/// ref readonly MyStruct value = ref sequenceReader.GetRefOrRefToCopy{MyStruct}(out _);
|
||||||
/// </c>
|
/// </c>
|
||||||
|
@@ -157,6 +157,9 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
|
|||||||
}
|
}
|
||||||
else if (operation == SyncpointbOperation.Incr)
|
else if (operation == SyncpointbOperation.Incr)
|
||||||
{
|
{
|
||||||
|
// "Unbind" render targets since a syncpoint increment might indicate future CPU access for the textures.
|
||||||
|
_parent.TextureManager.RefreshModifiedTextures();
|
||||||
|
|
||||||
_context.CreateHostSyncIfNeeded(HostSyncFlags.StrictSyncpoint);
|
_context.CreateHostSyncIfNeeded(HostSyncFlags.StrictSyncpoint);
|
||||||
_context.Synchronization.IncrementSyncpoint(syncpointId);
|
_context.Synchronization.IncrementSyncpoint(syncpointId);
|
||||||
}
|
}
|
||||||
|
@@ -4,6 +4,7 @@ using Ryujinx.Graphics.Gpu.Engine.Dma;
|
|||||||
using Ryujinx.Graphics.Gpu.Engine.InlineToMemory;
|
using Ryujinx.Graphics.Gpu.Engine.InlineToMemory;
|
||||||
using Ryujinx.Graphics.Gpu.Engine.Threed;
|
using Ryujinx.Graphics.Gpu.Engine.Threed;
|
||||||
using Ryujinx.Graphics.Gpu.Engine.Twod;
|
using Ryujinx.Graphics.Gpu.Engine.Twod;
|
||||||
|
using Ryujinx.Graphics.Gpu.Image;
|
||||||
using Ryujinx.Graphics.Gpu.Memory;
|
using Ryujinx.Graphics.Gpu.Memory;
|
||||||
using System;
|
using System;
|
||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
@@ -28,6 +29,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public MemoryManager MemoryManager => _channel.MemoryManager;
|
public MemoryManager MemoryManager => _channel.MemoryManager;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Channel texture manager.
|
||||||
|
/// </summary>
|
||||||
|
public TextureManager TextureManager => _channel.TextureManager;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 3D Engine.
|
/// 3D Engine.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@@ -302,12 +302,12 @@ namespace Ryujinx.Graphics.Vulkan
|
|||||||
SubmitInfo sInfo = new()
|
SubmitInfo sInfo = new()
|
||||||
{
|
{
|
||||||
SType = StructureType.SubmitInfo,
|
SType = StructureType.SubmitInfo,
|
||||||
WaitSemaphoreCount = waitSemaphores != null ? (uint)waitSemaphores.Length : 0,
|
WaitSemaphoreCount = !waitSemaphores.IsEmpty ? (uint)waitSemaphores.Length : 0,
|
||||||
PWaitSemaphores = pWaitSemaphores,
|
PWaitSemaphores = pWaitSemaphores,
|
||||||
PWaitDstStageMask = pWaitDstStageMask,
|
PWaitDstStageMask = pWaitDstStageMask,
|
||||||
CommandBufferCount = 1,
|
CommandBufferCount = 1,
|
||||||
PCommandBuffers = &commandBuffer,
|
PCommandBuffers = &commandBuffer,
|
||||||
SignalSemaphoreCount = signalSemaphores != null ? (uint)signalSemaphores.Length : 0,
|
SignalSemaphoreCount = !signalSemaphores.IsEmpty ? (uint)signalSemaphores.Length : 0,
|
||||||
PSignalSemaphores = pSignalSemaphores,
|
PSignalSemaphores = pSignalSemaphores,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -60,7 +60,7 @@ namespace Ryujinx.HLE.HOS.Services.Fatal
|
|||||||
errorReport.AppendLine($"\tResultCode: {((int)resultCode & 0x1FF) + 2000}-{((int)resultCode >> 9) & 0x3FFF:d4}");
|
errorReport.AppendLine($"\tResultCode: {((int)resultCode & 0x1FF) + 2000}-{((int)resultCode >> 9) & 0x3FFF:d4}");
|
||||||
errorReport.AppendLine($"\tFatalPolicy: {fatalPolicy}");
|
errorReport.AppendLine($"\tFatalPolicy: {fatalPolicy}");
|
||||||
|
|
||||||
if (cpuContext != null)
|
if (!cpuContext.IsEmpty)
|
||||||
{
|
{
|
||||||
errorReport.AppendLine("CPU Context:");
|
errorReport.AppendLine("CPU Context:");
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user