Shared Database services: Difference between revisions

No edit summary
pdm symz
(15 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
= pl:u =
= pl:u (Shared Font Manager) =
This is "nn::pl::detail::IPlatformServiceManager".
This is "nn::pl::detail::ISharedFontManager".


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 7: Line 6:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 || [[#RequestLoad]]
| 0 || [[#RequestSharedFontLoad]]
|-
|-
| 1 || [[#GetLoadState]]
| 1 || [[#GetSharedFontLoadState]]
|-
|-
| 2 || [[#GetSize]]
| 2 || [[#GetSharedFontSize]]
|-
|-
| 3 || [[#GetSharedMemoryAddressOffset]]
| 3 || [[#GetSharedFontAddress]]
|-
|-
| 4 || [[#GetSharedMemoryNativeHandle]]
| 4 || [[#GetSharedFontSharedMemoryHandle]]
|-
|-
| 5 || [[#GetSharedFontInOrderOfPriority]]
| 5 || [[#GetSharedFontInOrderOfPriority]]
|-
| 6 || [4.0.0+] GetSharedFontInOrderOfPriorityForSystem
|-
| 100 || [8.0.0+] RequestApplicationFunctionAuthorization
|-
| 101 || [8.0.0+] RequestApplicationFunctionAuthorizationForSystem
|}
|}


== RequestLoad ==
== RequestSharedFontLoad ==
 
Takes a [[#SharedFontType]] (uint32), no output.
Takes a [[#SharedFontType]] (uint32), no output.


== GetLoadState ==
== GetSharedFontLoadState ==
 
Takes a [[#SharedFontType]] (uint32), returns the [[#LoadState]] (uint32).
Takes a [[#SharedFontType]] (uint32), returns the [[#LoadState]] (uint32).


=== LoadState ===
=== LoadState ===
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 39: Line 41:
|}
|}


== GetSize ==
== GetSharedFontSize ==
 
Takes a [[#SharedFontType]] (uint32), returns the Font Size (uint32).
Takes a [[#SharedFontType]] (uint32), returns the Font Size (uint32).


== GetSharedMemoryAddressOffset ==
== GetSharedFontAddress ==
 
Takes a [[#SharedFontType]] (uint32), returns the offset (uint32) to the Font Address.
Takes a [[#SharedFontType]] (uint32), returns the offset (uint32) to the Font Address.


== GetSharedMemoryNativeHandle ==
== GetSharedFontSharedMemoryHandle ==
No input, returns an output SharedMemory handle.
No input, returns an output SharedMemory handle.


User-processes map this SharedMemory with size=0x1100000 and permissions=R--.
User-processes map this SharedMemory with size=0x1100000 and permissions=R--.
Font data is TTF, located at the offset returned by [[#GetSharedFontAddress]].


== GetSharedFontInOrderOfPriority ==
== GetSharedFontInOrderOfPriority ==
Takes an input u64 [[Settings_services#LanguageCode|LanguageCode]] and 3 type-0x6 output buffers, returns an output u8 and u32.
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 ==
== SharedFontType ==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 73: Line 78:
| 0x05 || Nintendo Extended
| 0x05 || Nintendo Extended
|}
|}
* Nintendo Extended: Contains Nintendo-specific characters, including HID buttons, HID controller styles, applet icons, Wii(U) icons,  etc.


= mii:u, mii:e =
= mii:u, mii:e =
Line 81: Line 88:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 || GetDatabaseServiceSharedPointer
| 0 || GetDatabaseService
|}
 
== IDatabaseService ==
This is "nn::mii::detail::IDatabaseService".
 
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || IsUpdated
|-
| 1 || IsFullDatabase
|-
| 2 || GetCount
|-
| 3 || Get
|-
| 4 || Get1
|-
| 5 || UpdateLatest
|-
| 6 || BuildRandom
|-
| 7 || BuildDefault
|-
| 8 || Get2
|-
| 9 || Get3
|-
| 10 || UpdateLatest1
|-
| 11 || FindIndex
|-
| 12 || Move
|-
| 13 || AddOrReplace
|-
| 14 || Delete
|-
| 15 || DestroyFile
|-
| 16 || DeleteFile
|-
| 17 || Format
|-
| 18 || Import
|-
| 19 || Export
|-
| 20 || IsBrokenDatabaseWithClearFlag
|-
| 21 || GetIndex
|-
| 22 || [5.0.0+] SetInterfaceVersion
|-
| 23 || [5.0.0+] Convert
|-
| 24 || [7.0.0+] ConvertCoreDataToCharInfo
|-
| 25 || [7.0.0+] ConvertCharInfoToCoreData
|}
 
= miiimg =
This is "nn::mii::detail::IImageDatabaseService".
 
This was added with [5.0.0+].
 
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || Initialize
|-
| 10 || Reload
|-
| 11 || GetCount
|-
| 12 || IsEmpty
|-
| 13 || IsFull
|-
| 14 || GetAttribute
|-
| 15 || LoadImage
|-
| 16 || AddOrUpdateImage
|-
| 17 || DeleteImages
|-
| 100 || DeleteFile
|-
| 101 || DestroyFile
|-
| 102 || ImportFile
|-
| 103 || ExportFile
|-
| 104 || ForceInitialize
|}
 
= pdm:ntfy =
This is "nn::pdm::detail::INotifyService".
 
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || NotifyAppletEvent
|-
| 2 || NotifyOperationModeChangeEvent
|-
| 3 || NotifyPowerStateChangeEvent
|-
| 4 || NotifyClearAllEvent
|-
| 5 || NotifyEventForDebug
|-
| 6 || [4.0.0+] SuspendUserAccountEventService
|-
| 7 || [4.0.0+] ResumeUserAccountEventService
|-
| 8 || [6.0.0+]
|-
| 9 || [8.0.0+]
|}
|}
= pdm:qry =
This is "nn::pdm::detail::IQueryService".
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || QueryApplicationEvent
|-
| [1.0.0-6.2.0] 1 || QueryPlayStatistics
|-
| [1.0.0-6.2.0] 2 || QueryPlayStatisticsByUserAccountId
|-
| [1.0.0-6.2.0] 3 || QueryPlayStatisticsByNetworkServiceAccountId
|-
| 4 || QueryPlayStatisticsByApplicationId
|-
| 5 || QueryPlayStatisticsByApplicationIdAndUserAccountId
|-
| [1.0.0-6.2.0] 6 || QueryPlayStatisticsByApplicationIdAndNetworkServiceAccountId
|-
| 7 || QueryLastPlayTime
|-
| 8 || QueryPlayEvent
|-
| 9 || GetAvailablePlayEventRange
|-
| 10 || QueryAccountEvent
|-
| 11 || [4.0.0+] QueryAccountPlayEvent
|-
| 12 || [4.0.0+] GetAvailableAccountPlayEventRange
|-
| 13 || [5.0.0+] QueryApplicationPlayStatisticsForSystem
|-
| 14 || [6.0.0+]
|-
| 15 || [6.0.0+]
|-
| 16 || [6.0.0+]
|}
= avm =
This is "nn::avm::srv::IAvmService".
This was added with [6.0.0+].
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 100 ||
|-
| 101 ||
|-
| 102 ||
|-
| 103 || No input, returns an [[#IVersionListImporter]].
|-
| 200 ||
|-
| 202 ||
|-
| 1000 ||
|-
| 1001 ||
|-
| 1002 ||
|}
== IVersionListImporter ==
This is "nn::avm::srv::IVersionListImporter".
This was added with [6.0.0+].
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 ||
|-
| 1 ||
|-
| 2 ||
|}
[[Category:Services]]