aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/ApplicationLoader.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/HOS/ApplicationLoader.cs')
-rw-r--r--Ryujinx.HLE/HOS/ApplicationLoader.cs16
1 files changed, 10 insertions, 6 deletions
diff --git a/Ryujinx.HLE/HOS/ApplicationLoader.cs b/Ryujinx.HLE/HOS/ApplicationLoader.cs
index 80d609b6..b3d23ea7 100644
--- a/Ryujinx.HLE/HOS/ApplicationLoader.cs
+++ b/Ryujinx.HLE/HOS/ApplicationLoader.cs
@@ -86,8 +86,8 @@ namespace Ryujinx.HLE.HOS
MetaLoader metaData = ReadNpdm(codeFs);
_device.Configuration.VirtualFileSystem.ModLoader.CollectMods(
- new[] { TitleId },
- _device.Configuration.VirtualFileSystem.ModLoader.GetModsBasePath(),
+ new[] { TitleId },
+ _device.Configuration.VirtualFileSystem.ModLoader.GetModsBasePath(),
_device.Configuration.VirtualFileSystem.ModLoader.GetSdModsBasePath());
if (TitleId != 0)
@@ -393,8 +393,8 @@ namespace Ryujinx.HLE.HOS
MetaLoader metaData = ReadNpdm(codeFs);
_device.Configuration.VirtualFileSystem.ModLoader.CollectMods(
- _device.Configuration.ContentManager.GetAocTitleIds().Prepend(TitleId),
- _device.Configuration.VirtualFileSystem.ModLoader.GetModsBasePath(),
+ _device.Configuration.ContentManager.GetAocTitleIds().Prepend(TitleId),
+ _device.Configuration.VirtualFileSystem.ModLoader.GetModsBasePath(),
_device.Configuration.VirtualFileSystem.ModLoader.GetSdModsBasePath());
if (controlNca != null)
@@ -571,8 +571,12 @@ namespace Ryujinx.HLE.HOS
Ptc.Initialize(TitleIdText, DisplayVersion, usePtc, memoryManagerMode);
+ // We allow it for nx-hbloader because it can be used to launch homebrew.
+ bool allowCodeMemoryForJit = TitleId == 0x010000000000100DUL;
+
metaData.GetNpdm(out Npdm npdm).ThrowIfFailure();
- ProgramLoader.LoadNsos(_device.System.KernelContext, out ProcessTamperInfo tamperInfo, metaData, new ProgramInfo(in npdm), executables: programs);
+ ProgramInfo programInfo = new ProgramInfo(in npdm, allowCodeMemoryForJit);
+ ProgramLoader.LoadNsos(_device.System.KernelContext, out ProcessTamperInfo tamperInfo, metaData, programInfo, executables: programs);
_device.Configuration.VirtualFileSystem.ModLoader.LoadCheats(TitleId, tamperInfo, _device.TamperMachine);
}
@@ -581,7 +585,7 @@ namespace Ryujinx.HLE.HOS
{
MetaLoader metaData = GetDefaultNpdm();
metaData.GetNpdm(out Npdm npdm).ThrowIfFailure();
- ProgramInfo programInfo = new ProgramInfo(in npdm);
+ ProgramInfo programInfo = new ProgramInfo(in npdm, allowCodeMemoryForJit: true);
bool isNro = Path.GetExtension(filePath).ToLower() == ".nro";