Fix Tamper Machine crash and timings (#2159)

* Add missing return

* Change TamperMachine sleep to 83ms

* Change constant name to PascalCase
This commit is contained in:
Caian Benedicto 2021-04-02 10:42:25 -03:00 committed by GitHub
parent 524fe3bea4
commit 9ae60207c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 1 deletions

View File

@ -630,6 +630,8 @@ namespace Ryujinx.HLE.HOS
if (tamperInfo == null || tamperInfo.BuildIds == null || tamperInfo.CodeAddresses == null)
{
Logger.Error?.Print(LogClass.ModLoader, "Unable to install cheat because the associated process is invalid");
return;
}
Logger.Info?.Print(LogClass.ModLoader, $"Build ids found for title {titleId:X16}:\n {String.Join("\n ", tamperInfo.BuildIds)}");

View File

@ -13,6 +13,10 @@ namespace Ryujinx.HLE.HOS
{
public class TamperMachine
{
// Atmosphere specifies a delay of 83 milliseconds between the execution of the last
// cheat and the re-execution of the first one.
private const int TamperMachineSleepMs = 1000 / 12;
private Thread _tamperThread = null;
private ConcurrentQueue<ITamperProgram> _programs = new ConcurrentQueue<ITamperProgram>();
private long _pressedKeys = 0;
@ -76,7 +80,7 @@ namespace Ryujinx.HLE.HOS
if (sleepCounter == 0)
{
sleepCounter = _programs.Count;
Thread.Sleep(1);
Thread.Sleep(TamperMachineSleepMs);
}
else
{