diff options
author | gdkchan <gab.dark.100@gmail.com> | 2022-05-03 18:28:32 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-03 23:28:32 +0200 |
commit | 556be08c4e9ad9f508dc2647ef70d3b89c2c242c (patch) | |
tree | ec3a0433def3bfc8f4a20e7cfcbe97bd73890ee1 /Ryujinx.HLE/HOS/ProgramLoader.cs | |
parent | 1cbca5eecbb6b7bce94dca864b5cffda4db02d39 (diff) |
Implement PM GetProcessInfo atmosphere extension (partially) (#2966)1.1.112
Diffstat (limited to 'Ryujinx.HLE/HOS/ProgramLoader.cs')
-rw-r--r-- | Ryujinx.HLE/HOS/ProgramLoader.cs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/Ryujinx.HLE/HOS/ProgramLoader.cs b/Ryujinx.HLE/HOS/ProgramLoader.cs index 403e0227..294ca5b8 100644 --- a/Ryujinx.HLE/HOS/ProgramLoader.cs +++ b/Ryujinx.HLE/HOS/ProgramLoader.cs @@ -20,11 +20,13 @@ namespace Ryujinx.HLE.HOS { public string Name; public ulong ProgramId; + public bool AllowCodeMemoryForJit; - public ProgramInfo(in Npdm npdm) + public ProgramInfo(in Npdm npdm, bool allowCodeMemoryForJit) { Name = StringUtils.Utf8ZToString(npdm.Meta.Value.ProgramName); ProgramId = npdm.Aci.Value.ProgramId.Value; + AllowCodeMemoryForJit = allowCodeMemoryForJit; } } @@ -141,7 +143,13 @@ namespace Ryujinx.HLE.HOS return true; } - public static bool LoadNsos(KernelContext context, out ProcessTamperInfo tamperInfo, MetaLoader metaData, ProgramInfo programInfo, byte[] arguments = null, params IExecutable[] executables) + public static bool LoadNsos( + KernelContext context, + out ProcessTamperInfo tamperInfo, + MetaLoader metaData, + ProgramInfo programInfo, + byte[] arguments = null, + params IExecutable[] executables) { LibHac.Result rc = metaData.GetNpdm(out var npdm); @@ -243,7 +251,7 @@ namespace Ryujinx.HLE.HOS return false; } - KProcess process = new KProcess(context); + KProcess process = new KProcess(context, programInfo.AllowCodeMemoryForJit); MemoryRegion memoryRegion = (MemoryRegion)((npdm.Acid.Value.Flags >> 2) & 0xf); |