diff options
author | Thog <me@thog.eu> | 2020-03-29 23:23:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-30 08:23:05 +1100 |
commit | 8f21db810d0e8dc5577780dee3001117084768d4 (patch) | |
tree | 8189a32c12c3881345fd3081430f1af7f3035860 /Ryujinx.HLE/FileSystem/Content/ContentManager.cs | |
parent | f9c859c8ba46113896f0e3be43b590a44d45692a (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.cs | 16 |
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]; |