BCAT services: Difference between revisions
No edit summary |
No edit summary |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 8: | Line 8: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || [[#CreateBcatService]] | ||
|- | |- | ||
| 1 || | | 1 || [[#CreateDeliveryCacheStorageService]] | ||
|- | |- | ||
| 2 || | | 2 || [[#CreateDeliveryCacheStorageServiceWithApplicationId]] | ||
|- | |- | ||
| 3 || [2.0.0-2.3.0] | | 3 || [2.0.0-2.3.0] [[#CreateDeliveryCacheProgressService]] | ||
|- | |- | ||
| 4 || [2.0.0-2.3.0] | | 4 || [2.0.0-2.3.0] [[#CreateDeliveryCacheProgressServiceWithApplicationId]] | ||
|} | |} | ||
Equivalent to 3DS BOSS(SpotPass). See [[BCAT_Content_Container|here]] for BCAT-content-container. | Equivalent to 3DS BOSS(SpotPass). See [[BCAT_Content_Container|here]] for BCAT-content-container. | ||
== CreateBcatService == | |||
Takes an input u64 ProcessId. Returns an [[#IBcatService]]. | |||
== CreateDeliveryCacheStorageService == | |||
Takes an input u64 ProcessId. Returns an [[#IDeliveryCacheStorageService]]. | |||
== CreateDeliveryCacheStorageServiceWithApplicationId == | |||
Takes an input u64 <code>nn::ApplicationId</code>. Returns an [[#IDeliveryCacheStorageService]]. | |||
== CreateDeliveryCacheProgressService == | |||
Takes an input u64 ProcessId. Returns an [[#IDeliveryCacheProgressService]]. | |||
== CreateDeliveryCacheProgressServiceWithApplicationId == | |||
Takes an input u64 <code>nn::ApplicationId</code>. returns an [[#IDeliveryCacheProgressService]]. | |||
== IBcatService == | == IBcatService == | ||
Line 52: | Line 67: | ||
| 20410 || [9.1.0+] SetSystemApplicationDeliveryTaskTimer | | 20410 || [9.1.0+] SetSystemApplicationDeliveryTaskTimer | ||
|- | |- | ||
| 30100 || SetPassphrase | | 30100 || [[#SetPassphrase]] | ||
|- | |- | ||
| 30101 || [2.0.0-2.3.0] | | 30101 || [2.0.0-2.3.0] | ||
Line 71: | Line 86: | ||
|- | |- | ||
| 90100 || GetDeliveryTaskList | | 90100 || GetDeliveryTaskList | ||
|- | |||
| 90101 || [11.0.0+] GetDeliveryTaskListForSystem | |||
|- | |- | ||
| 90200 || [[#GetDeliveryList]] | | 90200 || [[#GetDeliveryList]] | ||
Line 80: | Line 97: | ||
| 90300 || [3.0.0+] GetPushNotificationLog | | 90300 || [3.0.0+] GetPushNotificationLog | ||
|- | |- | ||
| 90301 || [11.0.0+] GetDeliveryCacheStorageUsage | |||
| 90301 || [11.0.0+] | |||
|} | |} | ||
Line 91: | Line 106: | ||
=== RequestSyncDeliveryCacheWithApplicationId === | === RequestSyncDeliveryCacheWithApplicationId === | ||
Takes an input u64 <code>nn::ApplicationId</code> | Takes an input u64 <code>nn::ApplicationId</code>. No output. | ||
[3.0.0+] Now takes an additional 8-bytes of input, and returns an [[#IDeliveryCacheProgressService]]. | [3.0.0+] Now takes an additional 8-bytes of input, and returns an [[#IDeliveryCacheProgressService]]. | ||
=== GetDeliveryCacheStorageUpdateNotifier === | === GetDeliveryCacheStorageUpdateNotifier === | ||
Takes an input u64 <code>nn::ApplicationId</code> | Takes an input u64 <code>nn::ApplicationId</code>. Returns an [[#INotifierService]]. | ||
=== RequestSuspendDeliveryTask === | === RequestSuspendDeliveryTask === | ||
Takes an input u64 <code>nn::ApplicationId</code> | Takes an input u64 <code>nn::ApplicationId</code>. Returns an [[#IDeliveryTaskSuspensionService]]. | ||
=== RegisterSystemApplicationDeliveryTask === | === RegisterSystemApplicationDeliveryTask === | ||
Takes an input u64 <code>nn::ApplicationId</code> | Takes an input u64 <code>nn::ApplicationId</code>. No output. | ||
=== UnregisterSystemApplicationDeliveryTask === | === UnregisterSystemApplicationDeliveryTask === | ||
Takes an input u64 <code>nn::ApplicationId</code> | Takes an input u64 <code>nn::ApplicationId</code>. No output. | ||
=== SetPassphrase === | |||
Takes an input u64 <code>nn::ApplicationId</code> and a type-0x9 input buffer. No output. | |||
=== GetDeliveryList === | === GetDeliveryList === | ||
Takes a type-0x6 output buffer | Takes a type-0x6 output buffer. Returns a total of 4-bytes of output. | ||
[3.0.0+] Now takes a total of 8-bytes of input, and returns an additional 4-bytes of output. | [3.0.0+] Now takes a total of 8-bytes of input, and returns an additional 4-bytes of output. | ||
Line 195: | Line 213: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || GetEvent | | 0 || GetEvent | ||
|} | |} | ||
Line 211: | Line 229: | ||
All sessions have 32 sessions. | All sessions have 32 sessions. | ||
Permission masks are: | Permission masks are: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 229: | Line 246: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || [[#CreateNewsService|CreateNewsService]] | ||
|- | |- | ||
| 1 || | | 1 || [[#CreateNewlyArrivedEventHolder|CreateNewlyArrivedEventHolder]] | ||
|- | |- | ||
| 2 || | | 2 || [[#CreateNewsDataService|CreateNewsDataService]] | ||
|- | |- | ||
| 3 || | | 3 || [[#CreateNewsDatabaseService|CreateNewsDatabaseService]] | ||
|- | |- | ||
| 4 || | | 4 || [[#CreateOverwriteEventHolder|CreateOverwriteEventHolder]] | ||
|} | |} | ||
CreateNewsDataService | == CreateNewsService == | ||
No input. Returns an [[#INewsService]]. | |||
== CreateNewlyArrivedEventHolder == | |||
No input. Returns an [[#INewlyArrivedEventHolder]]. | |||
== CreateNewsDataService == | |||
No input. Returns an [[#INewsDataService]]. | |||
Requires permission bit 2. | |||
== CreateNewsDatabaseService == | |||
No input. Returns an [[#INewsDatabaseService]]. | |||
Requires permission bit 2. | |||
== CreateOverwriteEventHolder == | |||
No input. Returns an [[#IOverwriteEventHolder]]. | |||
== INewsService == | == INewsService == | ||
Line 259: | Line 293: | ||
| 30101 || [3.0.0+] GetTopicList || 2 | | 30101 || [3.0.0+] GetTopicList || 2 | ||
|- | |- | ||
| | | 30110 || [6.0.0+] || 2 | ||
|- | |- | ||
| 30200 || [[#IsSystemUpdateRequired]] || 2 | | 30200 || [[#IsSystemUpdateRequired]] || 2 | ||
Line 265: | Line 299: | ||
| 30201 || [8.0.0+] || 2 | | 30201 || [8.0.0+] || 2 | ||
|- | |- | ||
| | | 30210 || [10.0.0+] || 2 | ||
|- | |- | ||
| 30300 || RequestImmediateReception || 2 | | 30300 || RequestImmediateReception || 2 | ||
|- | |- | ||
| 30400 || [3.0.0 | | 30400 || [3.0.0-18.1.0] DecodeArchiveFile || 2 | ||
|- | |- | ||
| | | 30500 || [8.0.0+] ? || 2 | ||
|- | |- | ||
| 30900 || [1.0.0] (No input, returns an [[#INewlyArrivedEventHolder]]) || 2 | | 30900 || [1.0.0] (No input, returns an [[#INewlyArrivedEventHolder]]) || 2 | ||
Line 312: | Line 346: | ||
== INewlyArrivedEventHolder == | == INewlyArrivedEventHolder == | ||
This is <nowiki>"nn::news::detail::ipc::INewlyArrivedEventHolder"</nowiki>. | This is <nowiki>"nn::news::detail::ipc::INewlyArrivedEventHolder"</nowiki>. | ||
[19.0.0+] This is now <nowiki>"nn::news::detail::ipc::INewArrivalEventHolder"</nowiki>. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 340: | Line 376: | ||
|- | |- | ||
| 1001 || [6.0.0+] [[#OpenWithNewsRecord]] | | 1001 || [6.0.0+] [[#OpenWithNewsRecord]] | ||
|- | |||
| 1100 || [19.0.0+] | |||
|} | |} | ||
Line 359: | Line 397: | ||
== INewsDatabaseService == | == INewsDatabaseService == | ||
This is <nowiki>"nn::news::detail::ipc::INewsDatabaseService"</nowiki>. | This is <nowiki>"nn::news::detail::ipc::INewsDatabaseService"</nowiki>. | ||
[19.0.0+] This is now <nowiki>"nn::news::detail::ipc::IDeviceNewsDatabaseService"</nowiki>. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 493: | Line 533: | ||
== NewsRecordV1 == | == NewsRecordV1 == | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 517: | Line 556: | ||
== NewsRecord == | == NewsRecord == | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 661: | Line 699: | ||
| 200 || [13.1.0-13.2.1] | | 200 || [13.1.0-13.2.1] | ||
|- | |- | ||
| 300 || [13.1.0 | | 300 || [13.1.0-14.1.2] | ||
|- | |- | ||
| 400 || [14.0.0 | | 400 || [14.0.0-14.1.2] | ||
|} | |} | ||
Line 682: | Line 720: | ||
|- | |- | ||
| 20 || [14.0.0+] | | 20 || [14.0.0+] | ||
|- | |||
| 100 || [16.1.0+] | |||
|} | |} | ||