Glue services: Difference between revisions
No edit summary |
No edit summary |
||
Line 726: | Line 726: | ||
| 1 || CommitContext | | 1 || CommitContext | ||
|} | |} | ||
= pl:u = | |||
This is "nn::pl::sharedresource::detail::IPlatformSharedResourceManager". | |||
This was added with [16.0.0+]. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || [[#RequestLoad]] | |||
|- | |||
| 1 || [[#GetLoadState]] | |||
|- | |||
| 2 || [[#GetSize]] | |||
|- | |||
| 3 || [[#GetSharedMemoryAddressOffset]] | |||
|- | |||
| 4 || [[#GetSharedMemoryNativeHandle]] | |||
|- | |||
| 5 || [[#GetSharedFontInOrderOfPriority]] | |||
|- | |||
| 6 || GetSharedFontInOrderOfPriorityForSystem | |||
|} | |||
== RequestLoad == | |||
Takes a [[#SharedFontType]] (uint32), no output. | |||
== GetLoadState == | |||
Takes a [[#SharedFontType]] (uint32), returns the [[#LoadState]] (uint32). | |||
=== LoadState === | |||
{| class="wikitable" border="1" | |||
|- | |||
! Value || Description | |||
|- | |||
| 0x00 || Loading | |||
|- | |||
| 0x01 || Loaded | |||
|} | |||
== GetSize == | |||
Takes a [[#SharedFontType]] (uint32), returns the Font Size (uint32). | |||
== GetSharedMemoryAddressOffset == | |||
Takes a [[#SharedFontType]] (uint32), returns the offset (uint32) to the Font Address. | |||
== GetSharedMemoryNativeHandle == | |||
No input, returns an output SharedMemory handle. | |||
User-processes map this SharedMemory with size=0x1100000 and permissions=R--. | |||
Font data is TTF, located at the offset returned by [[#GetSharedMemoryAddressOffset]]. | |||
== GetSharedFontInOrderOfPriority == | |||
Takes an input u64 [[Settings_services#LanguageCode|LanguageCode]] and 3 type-0x6 output buffers, returns an output u8 and u32. The u8 is a bool to specify if the fonts are loaded or not and the u32 is the font count. | |||
The first buffer contains a list of [[#SharedFontType|Shared font types]], the second buffer contains the font offsets and the final buffer contains the font sizes. | |||
The buffers are an array of u32s which specify information about a specific font. Buffer1[n] is related to Buffer2[n] and Buffer3[n]. | |||
Example: Font index 0s offset is at Buffer2[0], size is at Buffer3[0]. | |||
The fonts are relative to the shared memory created by [[#GetSharedFontSharedMemoryHandle]] | |||
== SharedFontType == | |||
{| class="wikitable" border="1" | |||
|- | |||
! Value || Description | |||
|- | |||
| 0x00 || Japan, US and Europe (Standard) | |||
|- | |||
| 0x01 || Chinese Simplified | |||
|- | |||
| 0x02 || Extended Chinese Simplified | |||
|- | |||
| 0x03 || Chinese Traditional | |||
|- | |||
| 0x04 || Korean (Hangul) | |||
|- | |||
| 0x05 || Nintendo Extended | |||
|} | |||
* Nintendo Extended: Contains Nintendo-specific characters, including HID buttons, HID controller styles, applet icons, Wii(U) icons, etc. | |||
= ApplicationInstanceId = | = ApplicationInstanceId = |