OMM services: Difference between revisions
| No edit summary | |||
| Line 226: | Line 226: | ||
| == Cmd500 == | == Cmd500 == | ||
| Takes a total of 0x10-bytes of input and a handle, no output. | Takes a total of 0x10-bytes of input and a handle, no output. | ||
| This is used by [[Applet_Manager_services#InitializeApplicationCopyrightFrameBuffer|InitializeApplicationCopyrightFrameBuffer]]. | |||
| = idle:sys = | = idle:sys = | ||
Revision as of 05:39, 29 December 2022
Operation Mode Manager (OMM) is a sysmodule responsible for arbitrating the operation changes between docked and handheld modes.
omm
This is "nn::omm::detail::IOperationModeManager"
Besides PTM, this is the only service that interacts with the Dock through usb:pd*.
| Cmd | Name | 
|---|---|
| 0 | GetOperationMode | 
| 1 | GetOperationModeChangeEvent | 
| 2 | EnableAudioVisual | 
| 3 | DisableAudioVisual | 
| 4 | #EnterSleepAndWait | 
| 5 | GetCradleStatus | 
| 6 | FadeInDisplay | 
| 7 | FadeOutDisplay | 
| 8 | [2.0.0+] GetCradleFwVersion | 
| 9 | [2.0.0+] NotifyCecSettingsChanged | 
| 10 | [3.0.0+] SetOperationModePolicy | 
| 11 | [3.0.0+] GetDefaultDisplayResolution | 
| 12 | [3.0.0+] GetDefaultDisplayResolutionChangeEvent | 
| 13 | [3.0.0+] UpdateDefaultDisplayResolution | 
| 14 | [3.0.0+] ShouldSleepOnBoot | 
| 15 | [4.0.0+] NotifyHdcpApplicationExecutionStarted | 
| 16 | [4.0.0+] NotifyHdcpApplicationExecutionFinished | 
| 17 | [4.0.0+] NotifyHdcpApplicationDrawingStarted | 
| 18 | [4.0.0+] NotifyHdcpApplicationDrawingFinished | 
| 19 | [4.0.0+] GetHdcpAuthenticationFailedEvent | 
| 20 | [4.0.0+] GetHdcpAuthenticationFailedEmulationEnabled | 
| 21 | [4.0.0+] SetHdcpAuthenticationFailedEmulation | 
| 22 | [4.0.0+] GetHdcpStateChangeEvent | 
| 23 | [4.0.0+] GetHdcpState | 
| 24 | [5.0.0+] ShowCardUpdateProcessing | 
| 25 | [5.0.0+] SetApplicationCecSettingsAndNotifyChanged | 
| 26 | [7.0.0+] #GetOperationModeSystemInfo | 
| 27 | [9.0.0+] GetAppletFullAwakingSystemEvent | 
| 28 | [12.0.0+] #CreateCradleFirmwareUpdater | 
| 500 | [14.0.0+] LblSwitchBacklightOnForAm | 
| 501 | [14.0.0+] LblSwitchBacklightOffForAm | 
| 900 | [14.0.0+] HideStartupLogo | 
EnterSleepAndWait
Takes an input Event handle, no output.
GetOperationModeSystemInfo
No input, returns an output u32.
This is used by ICommonStateGetter GetOperationModeSystemInfo.
CreateCradleFirmwareUpdater
No input. Returns an #ICradleFirmwareUpdater.
ICradleFirmwareUpdater
This is "nn::omm::detail::ICradleFirmwareUpdater".
This was added with [12.0.0+].
| Cmd | Name | 
|---|---|
| 0 | Start | 
| 1 | Finish | 
| 2 | GetUpdateDeviceStatus | 
| 3 | GetUpdateProgress | 
| 4 | GetUpdateDeviceStatusChangeEvent | 
| 5 | GetUpdateProgress2 | 
ommdisp
This was added with [14.0.0+].
| Cmd | Name | 
|---|---|
| 100 | |
| 101 | |
| 110 | |
| 111 | |
| 200 | |
| 210 | |
| 300 | |
| 301 | |
| 302 | |
| 303 | |
| 304 | |
| 305 | |
| 306 | |
| 307 | |
| 308 | |
| 309 | |
| 310 | |
| 311 | |
| 312 | |
| 313 | |
| 314 | |
| 315 | |
| 316 | |
| 330 | |
| 340 | |
| 341 | |
| 342 | |
| 343 | |
| 344 | |
| 345 | |
| 346 | |
| 350 | |
| 351 | |
| 360 | |
| 361 | |
| 370 | |
| 371 | |
| 400 | |
| 410 | |
| 500 | |
| 501 | |
| 510 | |
| 520 | |
| 540 | |
| 600 | |
| 700 | |
| 701 | |
| 710 | |
| 711 | |
| 720 | |
| 721 | |
| 722 | |
| 800 | |
| 810 | 
Cmd500
Takes a total of 0x10-bytes of input and a handle, no output.
This is used by InitializeApplicationCopyrightFrameBuffer.
idle:sys
This is "nn::idle::detail::IPolicyManagerSystem"
| Cmd | Name | 
|---|---|
| 0 | GetAutoPowerDownEvent | 
| 1 | [7.0.0+] IsAutoPowerDownRequested ([1.0.0-3.0.2] ) | 
| 2 | [1.0.0-3.0.2] | 
| 3 | #SetHandlingContext | 
| 4 | LoadAndApplySettings | 
| 5 | ReportUserIsActive | 
SetHandlingContext
[3.0.0+] Now takes an additional 0x10-bytes of input.
[13.0.0+] Total input size is now 0x30 instead of 0x38.
spsm
This is "nn::spsm::detail::IPowerStateInterface".
| Cmd | Name | 
|---|---|
| 0 | GetCurrentState | 
| 1 | EnterSleep | 
| 2 | GetLastWakeReason | 
| 3 | Shutdown | 
| 4 | GetNotificationMessageEventHandle | 
| 5 | ReceiveNotificationMessage | 
| 6 | AnalyzeLogForLastSleepWakeSequence | 
| 7 | ResetEventLog | 
| 8 | AnalyzePerformanceLogForLastSleepWakeSequence | 
| 9 | ChangeHomeButtonLongPressingTime | 
| 10 | PutErrorState | 
| 11 | [1.0.0-3.0.2] InvalidateCurrentHomeButtonPressing | 
[3.0.0+] Cmd11 now takes a total of 8-bytes of input.