aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/ArmProcessContext.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/HOS/ArmProcessContext.cs')
-rw-r--r--Ryujinx.HLE/HOS/ArmProcessContext.cs24
1 files changed, 24 insertions, 0 deletions
diff --git a/Ryujinx.HLE/HOS/ArmProcessContext.cs b/Ryujinx.HLE/HOS/ArmProcessContext.cs
new file mode 100644
index 00000000..fb7703b7
--- /dev/null
+++ b/Ryujinx.HLE/HOS/ArmProcessContext.cs
@@ -0,0 +1,24 @@
+using ARMeilleure.State;
+using Ryujinx.Cpu;
+using Ryujinx.HLE.HOS.Kernel.Process;
+using Ryujinx.Memory;
+
+namespace Ryujinx.HLE.HOS
+{
+ class ArmProcessContext : IProcessContext
+ {
+ private readonly MemoryManager _memoryManager;
+ private readonly CpuContext _cpuContext;
+
+ public IVirtualMemoryManager AddressSpace => _memoryManager;
+
+ public ArmProcessContext(MemoryManager memoryManager)
+ {
+ _memoryManager = memoryManager;
+ _cpuContext = new CpuContext(memoryManager);
+ }
+
+ public void Execute(ExecutionContext context, ulong codeAddress) => _cpuContext.Execute(context, codeAddress);
+ public void Dispose() => _memoryManager.Dispose();
+ }
+}