Difference between revisions of "NDM Services"

From 3dbrew
Jump to navigation Jump to search
(Add DaemonStatus enum.)
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Services]]
+
__TOC__
 +
{{Anchor|NDMU}}{{Anchor|ndm:u}}
 
= NDM service "ndm:u" =
 
= NDM service "ndm:u" =
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
Line 76: Line 77:
 
|}
 
|}
  
'''enum ExclusiveState'''
+
=Types=
 +
==Daemon==
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 82: Line 84:
 
!  Value
 
!  Value
 
|-
 
|-
| STATE_NONE
+
| DAEMON_CEC
 
| 0
 
| 0
 
|-
 
|-
| STATE_INFRASTRUCTURE
+
| DAEMON_BOSS
 
| 1
 
| 1
 
|-
 
|-
| STATE_LOCAL_COMMUNICATIONS
+
| DAEMON_NIM
 
| 2
 
| 2
 
|-
 
|-
| STATE_STREETPASS
+
| DAEMON_FRIENDS
 
| 3
 
| 3
 +
|}
 +
 +
==DaemonMask==
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Enum
 +
!  Value
 +
|-
 +
| DAEMON_MASK_CEC
 +
| 1 << DAEMON_CEC
 +
|-
 +
| DAEMON_MASK_BOSS
 +
| 1 << DAEMON_BOSS
 
|-
 
|-
| STATE_STREETPASS_DATA
+
| DAEMON_MASK_NIM
| 4
+
| 1 << DAEMON_NIM
 +
|-
 +
| DAEMON_MASK_FRIENDS
 +
| 1 << DAEMON_FRIENDS
 
|}
 
|}
  
'''enum Daemon'''
+
==DaemonStatus==
 +
Represents the status of a single daemon.
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 104: Line 123:
 
!  Value
 
!  Value
 
|-
 
|-
| DAEMON_CEC
+
| DAEMON_STATUS_BUSY
 
| 0
 
| 0
 
|-
 
|-
| DAEMON_BOSS
+
| DAEMON_STATUS_IDLE
 
| 1
 
| 1
 
|-
 
|-
| DAEMON_NIM
+
| DAEMON_STATUS_SUSPENDING
 
| 2
 
| 2
 
|-
 
|-
| DAEMON_FRIENDS
+
| DAEMON_STATUS_SUSPENDED
 
| 3
 
| 3
 
|}
 
|}
  
'''enum DaemonMask'''
+
==State==
 +
Represents the internal state of the NDM module.
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 123: Line 143:
 
!  Value
 
!  Value
 
|-
 
|-
| DAEMONMASK_CEC
+
| STATE_INITIAL
| 1 << DAEMON_CEC
+
| 0
 +
|-
 +
| STATE_SUSPENDED
 +
| 1
 +
|-
 +
| STATE_INFRASTRUCTURE_CONNECTING
 +
| 2
 +
|-
 +
| STATE_INFRASTRUCTURE_CONNECTED
 +
| 3
 +
|-
 +
| STATE_INFRASTRUCTURE_WORKING
 +
| 4
 +
|-
 +
| STATE_INFRASTRUCTURE_SUSPENDING
 +
| 5
 +
|-
 +
| STATE_INFRASTRUCTURE_FORCE_SUSPENDING
 +
| 6
 +
|-
 +
| STATE_INFRASTRUCTURE_DISCONNECTING
 +
| 7
 +
|-
 +
| STATE_INFRASTRUCTURE_FORCE_DISCONNECTING
 +
| 8
 
|-
 
|-
| DAEMONMASK_BOSS
+
| STATE_CEC_WORKING
| 1 << DAEMON_BOSS
+
| 9
 
|-
 
|-
| DAEMONMASK_NIM
+
| STATE_CEC_FORCE_SUSPENDING
| 1 << DAEMON_NIM
+
| 10
 
|-
 
|-
| DAEMONMASK_FRIENDS
+
| STATE_CEC_SUSPENDING
| 1 << DAEMON_FRIENDS
+
| 11
 
|}
 
|}
  
'''enum DaemonStatus'''
+
==ExclusiveState==
 +
Represents the exlusive state of the NDM module.
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 142: Line 187:
 
!  Value
 
!  Value
 
|-
 
|-
| STATUS_BUSY
+
| EXCLUSIVE_STATE_NONE
 
| 0
 
| 0
 
|-
 
|-
| STATUS_IDLE
+
| EXCLUSIVE_STATE_INFRASTRUCTURE
 
| 1
 
| 1
 
|-
 
|-
| STATUS_SUSPENDING
+
| EXCLUSIVE_STATE_LOCAL_COMMUNICATIONS
 
| 2
 
| 2
 
|-
 
|-
| STATUS_SUSPENDED
+
| EXCLUSIVE_STATE_STREETPASS
 
| 3
 
| 3
 +
|-
 +
| EXCLUSIVE_STATE_STREETPASS_DATA
 +
| 4
 
|}
 
|}
 +
 +
[[Category:Services]]

Latest revision as of 19:29, 17 December 2024

NDM service "ndm:u"[edit]

Command Header Description
0x00010042 EnterExclusiveState
0x00020002 LeaveExclusiveState
0x00030000 QueryExclusiveMode
0x00040002 LockState
0x00050002 UnlockState
0x00060040 SuspendDaemons
0x00070040 ResumeDaemons
0x00080040 SuspendScheduler
0x00090000 ResumeScheduler
0x000A0000 GetCurrentState
0x000B0000 GetTargetState
0x000C0000 Stubbed. (Not implemented)
0x000D0040 QueryStatus
0x000E0040 GetDaemonDisableCount
0x000F0000 GetSchedulerDisableCount
0x00100040 SetScanInterval
0x00110000 GetScanInterval
0x00120040 SetRetryInterval
0x00130000 GetRetryInterval
0x00140040 OverrideDefaultDaemons
0x00150000 ResetDefaultDaemons
0x00160000 GetDefaultDaemons
0x00170000 ClearHalfAwakeMacFilter

Types[edit]

Daemon[edit]

Enum Value
DAEMON_CEC 0
DAEMON_BOSS 1
DAEMON_NIM 2
DAEMON_FRIENDS 3

DaemonMask[edit]

Enum Value
DAEMON_MASK_CEC 1 << DAEMON_CEC
DAEMON_MASK_BOSS 1 << DAEMON_BOSS
DAEMON_MASK_NIM 1 << DAEMON_NIM
DAEMON_MASK_FRIENDS 1 << DAEMON_FRIENDS

DaemonStatus[edit]

Represents the status of a single daemon.

Enum Value
DAEMON_STATUS_BUSY 0
DAEMON_STATUS_IDLE 1
DAEMON_STATUS_SUSPENDING 2
DAEMON_STATUS_SUSPENDED 3

State[edit]

Represents the internal state of the NDM module.

Enum Value
STATE_INITIAL 0
STATE_SUSPENDED 1
STATE_INFRASTRUCTURE_CONNECTING 2
STATE_INFRASTRUCTURE_CONNECTED 3
STATE_INFRASTRUCTURE_WORKING 4
STATE_INFRASTRUCTURE_SUSPENDING 5
STATE_INFRASTRUCTURE_FORCE_SUSPENDING 6
STATE_INFRASTRUCTURE_DISCONNECTING 7
STATE_INFRASTRUCTURE_FORCE_DISCONNECTING 8
STATE_CEC_WORKING 9
STATE_CEC_FORCE_SUSPENDING 10
STATE_CEC_SUSPENDING 11

ExclusiveState[edit]

Represents the exlusive state of the NDM module.

Enum Value
EXCLUSIVE_STATE_NONE 0
EXCLUSIVE_STATE_INFRASTRUCTURE 1
EXCLUSIVE_STATE_LOCAL_COMMUNICATIONS 2
EXCLUSIVE_STATE_STREETPASS 3
EXCLUSIVE_STATE_STREETPASS_DATA 4