using ARMeilleure.Memory; using System.Runtime.Versioning; namespace Ryujinx.Cpu.AppleHv { [SupportedOSPlatform("macos")] class HvCpuContext : ICpuContext { private readonly ITickSource _tickSource; private readonly HvMemoryManager _memoryManager; public HvCpuContext(ITickSource tickSource, IMemoryManager memory, bool for64Bit) { _tickSource = tickSource; _memoryManager = (HvMemoryManager)memory; } /// public IExecutionContext CreateExecutionContext(ExceptionCallbacks exceptionCallbacks) { return new HvExecutionContext(_tickSource, exceptionCallbacks); } /// public void Execute(IExecutionContext context, ulong address) { ((HvExecutionContext)context).Execute(_memoryManager, address); } /// public void InvalidateCacheRegion(ulong address, ulong size) { } public IDiskCacheLoadState LoadDiskCache(string titleIdText, string displayVersion, bool enabled) { return new DummyDiskCacheLoadState(); } public void PrepareCodeRange(ulong address, ulong size) { } public void Dispose() { } } }