Changes

Jump to navigation Jump to search
no edit summary
Line 174: Line 174:  
|-
 
|-
 
| 3 || [[#GetEvent]]
 
| 3 || [[#GetEvent]]
 +
|-
 +
| 4 || [10.0.0+] [[#IsLocked]]
 
|}
 
|}
   Line 188: Line 190:  
===== GetEvent =====
 
===== GetEvent =====
 
No input, returns an output Event handle with autoclear=false.
 
No input, returns an output Event handle with autoclear=false.
 +
 +
==== IsLocked ====
 +
No input, returns an output u8 bool.
    
=== IGlobalStateController ===
 
=== IGlobalStateController ===
Line 357: Line 362:  
|-
 
|-
 
| 190 || [9.0.0+] [[#PushToNotificationStorageChannel]] ||
 
| 190 || [9.0.0+] [[#PushToNotificationStorageChannel]] ||
 +
|-
 +
| 200 || [10.0.0+] [[#RequestApplicationSoftReset]] ||
 +
|-
 +
| 201 || [10.0.0+] [[#RestartApplicationTimer]] ||
 
|}
 
|}
   Line 436: Line 445:     
[[qlaunch]] will only push data for this when launching the Application when the Alarm was triggered, where the system was previously in sleep-mode. This data is the [[Glue_services|Notification]] ApplicationParameter.
 
[[qlaunch]] will only push data for this when launching the Application when the Alarm was triggered, where the system was previously in sleep-mode. This data is the [[Glue_services|Notification]] ApplicationParameter.
 +
 +
===== RequestApplicationSoftReset =====
 +
No input/output.
 +
 +
===== RestartApplicationTimer =====
 +
No input/output.
    
===== IAppletAccessor =====
 
===== IAppletAccessor =====
Line 497: Line 512:  
|-
 
|-
 
| 51 || [8.0.0+] [[#GetHomeButtonDoubleClickEnabled]] ||  
 
| 51 || [8.0.0+] [[#GetHomeButtonDoubleClickEnabled]] ||  
 +
|-
 +
| 52 || [10.0.0+] [[#IsHomeButtonShortPressedBlocked]] ||
 
|}
 
|}
   Line 531: Line 548:     
=== GetHomeButtonDoubleClickEnabled ===
 
=== GetHomeButtonDoubleClickEnabled ===
 +
No input, returns an output u8 bool.
 +
 +
=== IsHomeButtonShortPressedBlocked ===
 
No input, returns an output u8 bool.
 
No input, returns an output u8 bool.
   Line 629: Line 649:  
|-
 
|-
 
| 130 || [9.0.0+] [[#GetGpuErrorDetectedSystemEvent]] ||
 
| 130 || [9.0.0+] [[#GetGpuErrorDetectedSystemEvent]] ||
 +
|-
 +
| 140 || [10.0.0+] [[#SetApplicationMemoryReservation]] ||
 +
|-
 +
| 150 || [10.0.0+] [[#ShouldSetGpuTimeSliceManually]] ||
 
|}
 
|}
   Line 753: Line 777:     
Normally the output bool is set to 0, however when no users are available it's set to 1 with '''total_entries''' = -1.
 
Normally the output bool is set to 0, however when no users are available it's set to 1 with '''total_entries''' = -1.
 +
 +
==== SetApplicationMemoryReservation ====
 +
Takes an input u64, no output.
 +
 +
An Application must be currently running. The input u64 must be 0x1000-byte aligned.
 +
 +
==== ShouldSetGpuTimeSliceManually ====
 +
No input, returns an output u8 bool.
    
== IOverlayAppletProxy ==
 
== IOverlayAppletProxy ==
Line 806: Line 838:  
|-
 
|-
 
| 30 || [9.0.0+] [[#SetHealthWarningShowingState]]
 
| 30 || [9.0.0+] [[#SetHealthWarningShowingState]]
 +
|-
 +
| 31 || [10.0.0+] [[#IsHealthWarningRequired]]
 
|-
 
|-
 
| 90 || [7.0.0+] [[#SetRequiresGpuResourceUse]]
 
| 90 || [7.0.0+] [[#SetRequiresGpuResourceUse]]
Line 854: Line 888:     
This writes the input bool into state, signals an Event, and returns 0.
 
This writes the input bool into state, signals an Event, and returns 0.
 +
 +
==== IsHealthWarningRequired ====
 +
No input, returns an output u8 bool.
    
==== SetRequiresGpuResourceUse ====
 
==== SetRequiresGpuResourceUse ====
Line 933: Line 970:  
|-
 
|-
 
| 33 || [[#EndBlockingHomeButton]] ||
 
| 33 || [[#EndBlockingHomeButton]] ||
 +
|-
 +
| 34 || [10.0.0+] [[#SelectApplicationLicense]] ||
 
|-
 
|-
 
| 40 || [[#NotifyRunning]] ||
 
| 40 || [[#NotifyRunning]] ||
Line 951: Line 990:  
|-
 
|-
 
| 71 || [3.0.0+] [[#RequestToReboot]] ||
 
| 71 || [3.0.0+] [[#RequestToReboot]] ||
 +
|-
 +
| 72 || [10.0.0+] [[#RequestToSleep]] ||
 
|-
 
|-
 
| 80 || [4.0.0+] [[#ExitAndRequestToShowThanksMessage]] ||  
 
| 80 || [4.0.0+] [[#ExitAndRequestToShowThanksMessage]] ||  
Line 989: Line 1,030:  
|-
 
|-
 
| 170 || [9.0.0+] [[#SetHdcpAuthenticationActivated]] ||  
 
| 170 || [9.0.0+] [[#SetHdcpAuthenticationActivated]] ||  
 +
|-
 +
| 180 || [10.1.0+] [[#GetLaunchRequiredVersion]] ||
 +
|-
 +
| 181 || [10.1.0+] [[#UpgradeLaunchRequiredVersion]] ||
 
|-
 
|-
 
| 500 || [5.0.0+] [[#StartContinuousRecordingFlushForDebug]] ||  
 
| 500 || [5.0.0+] [[#StartContinuousRecordingFlushForDebug]] ||  
Line 1,079: Line 1,124:  
==== EndBlockingHomeButton ====
 
==== EndBlockingHomeButton ====
 
No input/output.
 
No input/output.
 +
 +
==== SelectApplicationLicense ====
 +
Takes an input array of [[#ApplicationLicenseType]], returns an output [[#ApplicationLicenseType]].
    
==== NotifyRunning ====
 
==== NotifyRunning ====
Line 1,114: Line 1,162:     
On success, official sw will enter an infinite loop with sleep-thread value 86400000000000.
 
On success, official sw will enter an infinite loop with sleep-thread value 86400000000000.
 +
 +
==== RequestToSleep ====
 +
No input/output.
    
==== ExitAndRequestToShowThanksMessage ====
 
==== ExitAndRequestToShowThanksMessage ====
Line 1,221: Line 1,272:  
==== SetHdcpAuthenticationActivated ====
 
==== SetHdcpAuthenticationActivated ====
 
Takes an input u8 bool, no output.
 
Takes an input u8 bool, no output.
 +
 +
==== GetLaunchRequiredVersion ====
 +
Takes an input [[NCM_services#ApplicationId|ApplicationId]], an u64, returns an output [[#LaunchRequiredVersion]].
 +
 +
sdknso passes hard-coded value 0 for the u64.
 +
 +
==== UpgradeLaunchRequiredVersion ====
 +
Takes an input [[#LaunchRequiredVersion]], an [[NCM_services#ApplicationId|ApplicationId]], an u64, no output.
 +
 +
sdknso passes hard-coded value 0 for the u64.
    
==== StartContinuousRecordingFlushForDebug ====
 
==== StartContinuousRecordingFlushForDebug ====
Line 1,235: Line 1,296:     
==== PrepareForJit ====
 
==== PrepareForJit ====
Takes no input. Launches title 010000000000003B (currently not present on retail systems) if some context variable is not set, with that context variable being initialized afterwards.
+
Takes no input. Launches the [[JIT_services|jit-sysmodule]] if some context variable is not set, with that context variable being initialized afterwards.
    
=== IMovieMaker ===
 
=== IMovieMaker ===
Line 1,323: Line 1,384:  
|-
 
|-
 
| 50 || [[#SetOutOfFocusApplicationSuspendingEnabled]] ||
 
| 50 || [[#SetOutOfFocusApplicationSuspendingEnabled]] ||
 +
|-
 +
| 60 || [10.0.0+] [[#PresetLibraryAppletGpuTimeSliceZero]] ||
 
|-
 
|-
 
| 100 || [[#PushInData]] ||  
 
| 100 || [[#PushInData]] ||  
Line 1,354: Line 1,417:  
Official sw will assert prior to using this if applet-service was not initialized as *Application.
 
Official sw will assert prior to using this if applet-service was not initialized as *Application.
   −
==== PushInData ====
+
==== PresetLibraryAppletGpuTimeSliceZero ====
 +
No input/output.
 +
 
 +
sdknso only uses with with [[Software_Keyboard|swkbd-inline]], immediately after creating the LibraryApplet.
 +
 
 +
==== PushInData ====
 
Takes an input [[#IStorage]], no output.
 
Takes an input [[#IStorage]], no output.
   Line 1,458: Line 1,526:  
|-
 
|-
 
| 66 || [6.0.0+] [[#SetCpuBoostMode]] ||
 
| 66 || [6.0.0+] [[#SetCpuBoostMode]] ||
 +
|-
 +
| 67 || [10.0.0+] [[#CancelCpuBoostMode]] ||
 
|-
 
|-
 
| 80 || [6.0.0+] [[#PerformSystemButtonPressingIfInFocus]] ||
 
| 80 || [6.0.0+] [[#PerformSystemButtonPressingIfInFocus]] ||
Line 1,464: Line 1,534:  
|-
 
|-
 
| 91 || [7.0.0+] [[#GetCurrentPerformanceConfiguration]] ||
 
| 91 || [7.0.0+] [[#GetCurrentPerformanceConfiguration]] ||
 +
|-
 +
| 100 || [9.1.0+] [[#SetHandlingHomeButtonShortPressedEnabled]] ||
 
|-
 
|-
 
| 200 || [7.0.0+] [[#GetOperationModeSystemInfo]] ||
 
| 200 || [7.0.0+] [[#GetOperationModeSystemInfo]] ||
 
|-
 
|-
 
| 300 || [9.0.0+] [[#GetSettingsPlatformRegion]] ||
 
| 300 || [9.0.0+] [[#GetSettingsPlatformRegion]] ||
 +
|-
 +
| 400 || [10.0.0+] [[#ActivateMigrationService]] ||
 +
|-
 +
| 401 || [10.0.0+] [[#DeactivateMigrationService]] ||
 
|}
 
|}
   Line 1,608: Line 1,684:  
=== SetCpuBoostMode ===
 
=== SetCpuBoostMode ===
 
Takes an input u32 '''CpuBoostMode''' (only modes 0 and 1 are valid) and passes it to [[PPC_services#apm:sys|SetCpuBoostMode]].
 
Takes an input u32 '''CpuBoostMode''' (only modes 0 and 1 are valid) and passes it to [[PPC_services#apm:sys|SetCpuBoostMode]].
 +
 +
=== CancelCpuBoostMode ===
 +
No input/output.
    
=== PerformSystemButtonPressingIfInFocus ===
 
=== PerformSystemButtonPressingIfInFocus ===
Line 1,629: Line 1,708:     
This just returns the output from [[Settings_services#GetPlatformRegion|setsys GetPlatformRegion]].
 
This just returns the output from [[Settings_services#GetPlatformRegion|setsys GetPlatformRegion]].
 +
 +
=== ActivateMigrationService ===
 +
No input/output.
 +
 +
=== DeactivateMigrationService ===
 +
No input/output.
    
== ISelfController ==
 
== ISelfController ==
Line 1,676: Line 1,761:  
|-
 
|-
 
| 43 || [5.0.0+] [[#GetSystemSharedBufferHandle]]
 
| 43 || [5.0.0+] [[#GetSystemSharedBufferHandle]]
 +
|-
 +
| 44 || [10.0.0+] [[#CreateManagedDisplaySeparableLayer]]
 +
|-
 +
| 45 || [10.0.0+] [[#SetManagedDisplayLayerSeparationMode]]
 
|-
 
|-
 
| 50 || [[#SetHandlesRequestToDisplay]]
 
| 50 || [[#SetHandlesRequestToDisplay]]
Line 1,826: Line 1,915:     
Same as [[#GetSystemSharedLayerHandle]] except this just gets the SharedBufferHandle.
 
Same as [[#GetSystemSharedLayerHandle]] except this just gets the SharedBufferHandle.
 +
 +
=== CreateManagedDisplaySeparableLayer ===
 +
No input, returns two output u64 LayerIds.
 +
 +
sdknso now uses this instead of [[#CreateManagedDisplayLayer]]. sdknso caches the output from the cmd so that it's only used once. The first u64 is used the same as the original LayerId from [[#CreateManagedDisplayLayer]]. <code>nn::vi::CreateRecordingLayer</code> uses the second LayerId, the layer creation is identical besides which LayerId is used.
 +
 +
=== SetManagedDisplayLayerSeparationMode ===
 +
Takes an input u32, no output.
 +
 +
sdknso exposes this as <code>nn::vi::SetRecordingLayerEnabled(bool)</code>.
 +
 +
The input u32 must be 0-1.
    
=== SetHandlesRequestToDisplay ===
 
=== SetHandlesRequestToDisplay ===
Line 2,304: Line 2,405:  
| 0 || [[#NotifyMessageToHomeMenuForDebug]] ||
 
| 0 || [[#NotifyMessageToHomeMenuForDebug]] ||
 
|-
 
|-
| 1 || [[#OpenMainApplication]] ||  
+
| 1 || [1.0.0-9.2.0] [[#OpenMainApplication]] ||  
 
|-
 
|-
 
| 10 || [[#PerformSystemButtonPressing]] ||
 
| 10 || [[#PerformSystemButtonPressing]] ||
Line 2,315: Line 2,416:  
|-
 
|-
 
| 100 || [7.0.0+] [[#SetCpuBoostModeForApplet]] ||
 
| 100 || [7.0.0+] [[#SetCpuBoostModeForApplet]] ||
 +
|-
 +
| 101 || [10.0.0+] [[#CancelCpuBoostModeForApplet]] ||
 
|-
 
|-
 
| 110 || [9.0.0+] [[#PushToAppletBoundChannelForDebug]] ||
 
| 110 || [9.0.0+] [[#PushToAppletBoundChannelForDebug]] ||
Line 2,361: Line 2,464:     
The cached value loaded from [[Settings_services#GetDebugModeFlag]] must be 1, otherwise an error is returned.
 
The cached value loaded from [[Settings_services#GetDebugModeFlag]] must be 1, otherwise an error is returned.
 +
 +
=== CancelCpuBoostModeForApplet ===
 +
No input/output.
    
=== PushToAppletBoundChannelForDebug ===
 
=== PushToAppletBoundChannelForDebug ===
Line 2,686: Line 2,792:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! ID
+
! Id
! Title-id
+
! ProgramId
! Description
+
! Description
 
|-
 
|-
 
| 0x01
 
| 0x01
 
|  
 
|  
| Application. Not valid for use with LibraryApplets.
+
| Application (not valid for use with LibraryApplets)
 
|-
 
|-
 
| 0x02
 
| 0x02
 
| 010000000000100C
 
| 010000000000100C
| "overlayDisp"
+
| overlayDisp (OverlayApplet)
 
|-
 
|-
 
| 0x03
 
| 0x03
 
| 0100000000001000
 
| 0100000000001000
| "qlaunch"
+
| qlaunch (SystemAppletMenu)
 
|-
 
|-
 
| 0x04
 
| 0x04
 
| 0100000000001012
 
| 0100000000001012
| "starter" SystemApplication.
+
| starter (DummyStarter)
 
|-
 
|-
 
| 0x0A
 
| 0x0A
 
| 0100000000001001
 
| 0100000000001001
| [[Auth_Applet|"auth"]]
+
| [[Auth_Applet|auth (LibraryAppletAuth)]]
 
|-
 
|-
 
| 0x0B
 
| 0x0B
 
| 0100000000001002
 
| 0100000000001002
| "cabinet"
+
| [[Cabinet_Applet|cabinet (LibraryAppletCabinet)]]
 
|-
 
|-
 
| 0x0C
 
| 0x0C
 
| 0100000000001003
 
| 0100000000001003
| [[Controller_Applet|"controller"]]
+
| [[Controller_Applet|controller (LibraryAppletController)]]
 
|-
 
|-
 
| 0x0D
 
| 0x0D
 
| 0100000000001004
 
| 0100000000001004
| "dataErase"
+
| dataErase (LibraryAppletDataErase)
 
|-
 
|-
 
| 0x0E
 
| 0x0E
 
| 0100000000001005
 
| 0100000000001005
| [[Error_Applet|"error"]]
+
| [[Error_Applet|error (LibraryAppletError)]]
 
|-
 
|-
 
| 0x0F
 
| 0x0F
 
| 0100000000001006
 
| 0100000000001006
| "netConnect"
+
| netConnect (LibraryAppletNetConnect)
 
|-
 
|-
 
| 0x10
 
| 0x10
 
| 0100000000001007
 
| 0100000000001007
| [[Profile_Selector|"playerSelect"]]
+
| [[Profile_Selector|playerSelect (LibraryAppletPlayerSelect)]]
 
|-
 
|-
 
| 0x11
 
| 0x11
 
| 0100000000001008
 
| 0100000000001008
| [[Software_Keyboard|"swkbd"]]
+
| [[Software_Keyboard|swkbd (LibraryAppletSwkbd)]]
 
|-
 
|-
 
| 0x12
 
| 0x12
 
| 0100000000001009
 
| 0100000000001009
| "miiEdit"
+
| [[MiiEdit_Applet|miiEdit (LibraryAppletMiiEdit)]]
 
|-
 
|-
 
| 0x13
 
| 0x13
 
| 010000000000100A
 
| 010000000000100A
| "LibAppletWeb" [[Internet_Browser#010000000000100A|WebApplet]] applet
+
| [[Internet_Browser#010000000000100A|web (LibraryAppletWeb)]]
 
|-
 
|-
 
| 0x14
 
| 0x14
 
| 010000000000100B
 
| 010000000000100B
| "LibAppletShop" [[Internet_Browser#ShopN|ShopN]] applet
+
| [[Internet_Browser#ShopN|shop (LibraryAppletShop)]]
 
|-
 
|-
 
| 0x15
 
| 0x15
 
| 010000000000100D
 
| 010000000000100D
| [[Album_Applet|"photoViewer"]]
+
| [[Album_Applet|photoViewer (LibraryAppletPhotoViewer)]]
 
|-
 
|-
 
| 0x16
 
| 0x16
 
| 010000000000100E
 
| 010000000000100E
| "set"
+
| set (LibraryAppletSet)
 
|-
 
|-
 
| 0x17
 
| 0x17
 
| 010000000000100F
 
| 010000000000100F
| "LibAppletOff" [[Internet_Browser#Offline_Applet|Offline]] applet
+
| [[Internet_Browser#Offline_Applet|offlineWeb (LibraryAppletOfflineWeb)]]
 
|-
 
|-
 
| 0x18
 
| 0x18
 
| 0100000000001010
 
| 0100000000001010
| "LibAppletLns" [[Internet_Browser#Whitelisted_Applets|Whitelisted]] applet
+
| [[Internet_Browser#Whitelisted_Applets|loginShare (LibraryAppletLoginShare)]]
 
|-
 
|-
 
| 0x19
 
| 0x19
 
| 0100000000001011
 
| 0100000000001011
| "LibAppletAuth" [[Internet_Browser#WifiWebAuthApplet|WifiWebAuth]] applet
+
| [[Internet_Browser#WifiWebAuthApplet|wifiWebAuth (LibraryAppletWifiWebAuth)]]
 
|-
 
|-
 
| 0x1A
 
| 0x1A
 
| 0100000000001013
 
| 0100000000001013
| [[MyPage_Applet|"myPage"]]
+
| [[MyPage_Applet|myPage (LibraryAppletMyPage)]]
 +
|-
 +
| 0x1B
 +
| 010000000000101A
 +
| gift (LibraryAppletGift)
 +
|-
 +
| 0x1C
 +
| 010000000000101C
 +
| userMigration (LibraryAppletUserMigration)
 +
|-
 +
| 0x1D
 +
| 010000000000101D
 +
| [9.0.0+] EncounterSys (LibraryAppletPreomiaSys)
 +
|-
 +
| 0x1E
 +
| 0100000000001020
 +
| [9.0.0+] story (LibraryAppletStory)
 +
|-
 +
| 0x1F
 +
| 010070000E3C0000
 +
| [9.0.0+] EncounterUsr (LibraryAppletPreomiaUsr)
 +
|-
 +
| 0x20
 +
| 010086000E49C000
 +
| [9.0.0+] EncounterUsrDummy (LibraryAppletPreomiaUsrDummy)
 +
|-
 +
| 0x21
 +
| 0100000000001038
 +
| [10.0.0+] sample (LibraryAppletSample)
 +
|-
 +
| 0x3F1
 +
| 010000000000D619
 +
| [10.0.0+]
 +
|-
 +
| 0x3F2
 +
| 010000000000D610
 +
| [10.0.0+]
 +
|-
 +
| 0x3F3
 +
| 010000000000D611
 +
| [10.0.0+]
 +
|-
 +
| 0x3F4
 +
| 010000000000D612
 +
| [10.0.0+]
 +
|-
 +
| 0x3F5
 +
| 010000000000D613
 +
| [10.0.0+]
 +
|-
 +
| 0x3F6
 +
| 010000000000D614
 +
| [10.0.0+]
 +
|-
 +
| 0x3F7
 +
| 010000000000D615
 +
| [10.0.0+]
 +
|-
 +
| 0x3F8
 +
| 010000000000D616
 +
| [10.0.0+]
 +
|-
 +
| 0x3F9
 +
| 010000000000D617
 +
| [10.0.0+]
 +
|-
 +
| 0x3FA
 +
| 010000000000D60A
 +
| [10.0.0+]
 +
|-
 +
| 0x3FB
 +
| 010000000000D60B
 +
| [10.0.0+]
 +
|-
 +
| 0x3FC
 +
| 010000000000D60C
 +
| [10.0.0+]
 +
|-
 +
| 0x3FD
 +
| 010000000000D60D
 +
| [10.0.0+]
 +
|-
 +
| 0x3FE
 +
| 010000000000D60E
 +
| [10.0.0+]
 
|}
 
|}
   Line 3,072: Line 3,262:     
This struct is "nn::am::service::AppletResourceUsageInfo". This struct is 0x20-bytes.
 
This struct is "nn::am::service::AppletResourceUsageInfo". This struct is 0x20-bytes.
 +
 +
= ApplicationLicenseType =
 +
This is "nn::oe::ApplicationLicenseType". This is 1-byte.
 +
 +
= LaunchRequiredVersion =
 +
This is "nn::oe::LaunchRequiredVersion". This is a 0x40-byte struct with 1-byte alignment.
    
= Notes =
 
= Notes =

Navigation menu