aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/FileSystem/Content/ContentManager.cs
diff options
context:
space:
mode:
authorThog <me@thog.eu>2020-03-29 23:23:05 +0200
committerGitHub <noreply@github.com>2020-03-30 08:23:05 +1100
commit8f21db810d0e8dc5577780dee3001117084768d4 (patch)
tree8189a32c12c3881345fd3081430f1af7f3035860 /Ryujinx.HLE/FileSystem/Content/ContentManager.cs
parentf9c859c8ba46113896f0e3be43b590a44d45692a (diff)
Reduce requirements for running homebrew (#1053)
* Reduce requirements for running homebrews This commit change the following behaviours: - TimeZoneBinary system archive isn't required until guest code call LoadTimeZoneRule. - Fonts system archives aren't requred until a "pl:u" IPC call is made. - Custom font support was dropped. - TimeZoneBinary missing message is now an error and not a warning. * Address comments
Diffstat (limited to 'Ryujinx.HLE/FileSystem/Content/ContentManager.cs')
-rw-r--r--Ryujinx.HLE/FileSystem/Content/ContentManager.cs16
1 files changed, 16 insertions, 0 deletions
diff --git a/Ryujinx.HLE/FileSystem/Content/ContentManager.cs b/Ryujinx.HLE/FileSystem/Content/ContentManager.cs
index bb8b6609..aae58153 100644
--- a/Ryujinx.HLE/FileSystem/Content/ContentManager.cs
+++ b/Ryujinx.HLE/FileSystem/Content/ContentManager.cs
@@ -23,6 +23,7 @@ namespace Ryujinx.HLE.FileSystem.Content
private Dictionary<StorageId, LinkedList<LocationEntry>> _locationEntries;
private Dictionary<string, long> _sharedFontTitleDictionary;
+ private Dictionary<long, string> _systemTitlesNameDictionary;
private Dictionary<string, string> _sharedFontFilenameDictionary;
private SortedDictionary<(ulong titleId, NcaContentType type), string> _contentDictionary;
@@ -46,6 +47,16 @@ namespace Ryujinx.HLE.FileSystem.Content
{ "FontNintendoExtended", 0x0100000000000810 }
};
+ _systemTitlesNameDictionary = new Dictionary<long, string>()
+ {
+ { 0x010000000000080E, "TimeZoneBinary" },
+ { 0x0100000000000810, "FontNintendoExtension" },
+ { 0x0100000000000811, "FontStandard" },
+ { 0x0100000000000812, "FontKorean" },
+ { 0x0100000000000813, "FontChineseTraditional" },
+ { 0x0100000000000814, "FontChineseSimple" },
+ };
+
_sharedFontFilenameDictionary = new Dictionary<string, string>
{
{ "FontStandard", "nintendo_udsg-r_std_003.bfttf" },
@@ -344,6 +355,11 @@ namespace Ryujinx.HLE.FileSystem.Content
return _sharedFontFilenameDictionary.TryGetValue(fontName, out filename);
}
+ public bool TryGetSystemTitlesName(long titleId, out string name)
+ {
+ return _systemTitlesNameDictionary.TryGetValue(titleId, out name);
+ }
+
private LocationEntry GetLocation(long titleId, NcaContentType contentType, StorageId storageId)
{
LinkedList<LocationEntry> locationList = _locationEntries[storageId];