diff --git a/ChocolArm64/State/AThreadState.cs b/ChocolArm64/State/AThreadState.cs
index 2d988a6536..d86f5bf9c8 100644
--- a/ChocolArm64/State/AThreadState.cs
+++ b/ChocolArm64/State/AThreadState.cs
@@ -38,10 +38,10 @@ namespace ChocolArm64.State
         public uint CtrEl0   => 0x8444c004;
         public uint DczidEl0 => 0x00000004;
 
-        private const long TicksPerS  = 19_200_000;
-        private const long TicksPerMS = TicksPerS / 1_000;
+        private const ulong TicksPerS  = 19_200_000;
+        private const ulong TicksPerMS = TicksPerS / 1_000;
 
-        public long CntpctEl0 => Environment.TickCount * TicksPerMS;
+        public ulong CntpctEl0 => (ulong)Environment.TickCount * TicksPerMS;
 
         public event EventHandler<AInstExceptionEventArgs> Break;
         public event EventHandler<AInstExceptionEventArgs> SvcCall;
diff --git a/Ryujinx.Core/Hid/Hid.cs b/Ryujinx.Core/Hid/Hid.cs
index 76ecf5ffdf..c287564d3a 100644
--- a/Ryujinx.Core/Hid/Hid.cs
+++ b/Ryujinx.Core/Hid/Hid.cs
@@ -258,9 +258,9 @@ namespace Ryujinx.Core.Input
             }
         }
 
-        private long GetTimestamp()
+        private static long GetTimestamp()
         {
-            return Environment.TickCount * 19_200;
+            return (long)((ulong)Environment.TickCount * 19_200);
         }
     }
 }
\ No newline at end of file
diff --git a/Ryujinx.Core/OsHle/Svc/SvcSystem.cs b/Ryujinx.Core/OsHle/Svc/SvcSystem.cs
index a276fe3c85..f700903526 100644
--- a/Ryujinx.Core/OsHle/Svc/SvcSystem.cs
+++ b/Ryujinx.Core/OsHle/Svc/SvcSystem.cs
@@ -67,7 +67,7 @@ namespace Ryujinx.Core.OsHle.Svc
 
         private void SvcGetSystemTick(AThreadState ThreadState)
         {
-            ThreadState.X0 = (ulong)ThreadState.CntpctEl0;
+            ThreadState.X0 = ThreadState.CntpctEl0;
         }
 
         private void SvcConnectToNamedPort(AThreadState ThreadState)