From d2815e94209559d756f340a4bde4a022dd2efa42 Mon Sep 17 00:00:00 2001 From: Ac_K Date: Thu, 19 Jul 2018 05:51:00 +0200 Subject: [PATCH] Fix mistake --- Ryujinx.HLE/OsHle/Kernel/AddressArbiter.cs | 4 ++-- Ryujinx.HLE/OsHle/Kernel/SvcThreadSync.cs | 8 -------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/Ryujinx.HLE/OsHle/Kernel/AddressArbiter.cs b/Ryujinx.HLE/OsHle/Kernel/AddressArbiter.cs index 26234ffd3a..8a40170a73 100644 --- a/Ryujinx.HLE/OsHle/Kernel/AddressArbiter.cs +++ b/Ryujinx.HLE/OsHle/Kernel/AddressArbiter.cs @@ -41,7 +41,7 @@ namespace Ryujinx.HLE.OsHle.Kernel { if (ShouldDecrement) { - Memory.WriteUInt32(Address, (uint)CurrentValue - 1); + Memory.WriteInt32(Address, CurrentValue - 1); } } else @@ -89,6 +89,6 @@ namespace Ryujinx.HLE.OsHle.Kernel { Signal, IncrementAndSignalIfEqual, - ModifyByWaitingCountAndSignalIfEqual, + ModifyByWaitingCountAndSignalIfEqual } } diff --git a/Ryujinx.HLE/OsHle/Kernel/SvcThreadSync.cs b/Ryujinx.HLE/OsHle/Kernel/SvcThreadSync.cs index 8161e25f29..9fc426176c 100644 --- a/Ryujinx.HLE/OsHle/Kernel/SvcThreadSync.cs +++ b/Ryujinx.HLE/OsHle/Kernel/SvcThreadSync.cs @@ -231,28 +231,20 @@ namespace Ryujinx.HLE.OsHle.Kernel switch (Type) { case ArbitrationType.WaitIfLessThan: - { ThreadState.X0 = AddressArbiter.WaitForAddressIfLessThan(Process, ThreadState, Memory, Address, Value, Timeout, false); break; - } case ArbitrationType.DecrementAndWaitIfLessThan: - { ThreadState.X0 = AddressArbiter.WaitForAddressIfLessThan(Process, ThreadState, Memory, Address, Value, Timeout, true); break; - } case ArbitrationType.WaitIfEqual: - { ThreadState.X0 = AddressArbiter.WaitForAddressIfEqual(Process, ThreadState, Memory, Address, Value, Timeout); break; - } default: - { ThreadState.X0 = MakeError(ErrorModule.Kernel, KernelErr.InvalidEnumValue); break; - } } }