aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu/Engine/MethodReport.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2020-05-29 05:51:10 -0300
committerGitHub <noreply@github.com>2020-05-29 10:51:10 +0200
commit44d7fcff399888d311f61772a53146d924ee5b62 (patch)
treeb79faa532e47b3a4e688939691e5cbf4b6efd21f /Ryujinx.Graphics.Gpu/Engine/MethodReport.cs
parent12cfaf56f083cdf250381c3525eaf4ecf5ee9257 (diff)
Implement FIFO semaphore (#1286)
* Implement FIFO semaphore * New enum for FIFO semaphore operation
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Engine/MethodReport.cs')
-rw-r--r--Ryujinx.Graphics.Gpu/Engine/MethodReport.cs13
1 files changed, 6 insertions, 7 deletions
diff --git a/Ryujinx.Graphics.Gpu/Engine/MethodReport.cs b/Ryujinx.Graphics.Gpu/Engine/MethodReport.cs
index e8efddea..224a4da1 100644
--- a/Ryujinx.Graphics.Gpu/Engine/MethodReport.cs
+++ b/Ryujinx.Graphics.Gpu/Engine/MethodReport.cs
@@ -21,14 +21,13 @@ namespace Ryujinx.Graphics.Gpu.Engine
/// <param name="argument">Method call argument</param>
private void Report(GpuState state, int argument)
{
- ReportMode mode = (ReportMode)(argument & 3);
-
+ SemaphoreOperation op = (SemaphoreOperation)(argument & 3);
ReportCounterType type = (ReportCounterType)((argument >> 23) & 0x1f);
- switch (mode)
+ switch (op)
{
- case ReportMode.Release: ReleaseSemaphore(state); break;
- case ReportMode.Counter: ReportCounter(state, type); break;
+ case SemaphoreOperation.Release: ReleaseSemaphore(state); break;
+ case SemaphoreOperation.Counter: ReportCounter(state, type); break;
}
}
@@ -38,7 +37,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
/// <param name="state">Current GPU state</param>
private void ReleaseSemaphore(GpuState state)
{
- var rs = state.Get<ReportState>(MethodOffset.ReportState);
+ var rs = state.Get<SemaphoreState>(MethodOffset.ReportState);
_context.MemoryAccessor.Write(rs.Address.Pack(), rs.Payload);
@@ -64,7 +63,7 @@ namespace Ryujinx.Graphics.Gpu.Engine
{
CounterData counterData = new CounterData();
- var rs = state.Get<ReportState>(MethodOffset.ReportState);
+ var rs = state.Get<SemaphoreState>(MethodOffset.ReportState);
ulong gpuVa = rs.Address.Pack();