Changes

m
fix it again
Line 47: Line 47:  
| 6 || [[#GetModuleInformation|GetModuleInformation]]
 
| 6 || [[#GetModuleInformation|GetModuleInformation]]
 
|-
 
|-
| 10 || [9.0.0+] [[#AcquireStateLock|AcquireStateLock]]
+
| 7 || [17.0.0+] SetRandomDelay
 
|-
 
|-
| 11 || [9.0.0+] [[#HasStateLock|HasStateLock]]
+
| 10 || [9.0.0+] [[#GetStateLockUpdateEvent|GetStateLockUpdateEvent]]
 +
|-
 +
| 11 || [9.0.0+] [[#IsStateLocked|IsStateLocked]]
 
|}
 
|}
   Line 73: Line 75:  
Takes two type-0x6 output buffers '''DependencyInformationBefore''' and '''DependencyInformationAfter'''. Returns an output [[#PmModuleTransitionInformation]] and two output u32s '''DependencyInformationBeforeCount''' and '''DependencyInformationAfterCount'''.
 
Takes two type-0x6 output buffers '''DependencyInformationBefore''' and '''DependencyInformationAfter'''. Returns an output [[#PmModuleTransitionInformation]] and two output u32s '''DependencyInformationBeforeCount''' and '''DependencyInformationAfterCount'''.
   −
== AcquireStateLock ==
+
== GetStateLockUpdateEvent ==
Unofficial name.
  −
 
   
No input. Returns an output readable Event handle.
 
No input. Returns an output readable Event handle.
   −
== HasStateLock ==
+
== IsStateLocked ==
Unofficial name.
  −
 
   
Takes an input [[#PmState]]. Returns an output bool.
 
Takes an input [[#PmState]]. Returns an output bool.
   Line 148: Line 146:  
| 3 || [[#IsLocked|IsLocked]]
 
| 3 || [[#IsLocked|IsLocked]]
 
|-
 
|-
| 4 || [[#GetLockState|GetLockState]]
+
| 4 || [[#GetRelatedState|GetRelatedState]]
 
|}
 
|}
    
== Initialize ==
 
== Initialize ==
Unofficial name.
  −
   
Takes an input [[#PmState]]. No output.
 
Takes an input [[#PmState]]. No output.
    
== Lock ==
 
== Lock ==
Unofficial name.
  −
   
No input/output.
 
No input/output.
    
== Unlock ==
 
== Unlock ==
Unofficial name.
  −
   
No input/output.
 
No input/output.
    
== IsLocked ==
 
== IsLocked ==
Unofficial name.
  −
   
No input. Returns an output bool.
 
No input. Returns an output bool.
   −
== GetLockState ==
+
== GetRelatedState ==
Unofficial name.
  −
 
   
No input. Returns an output [[#PmState]].
 
No input. Returns an output [[#PmState]].
   Line 187: Line 175:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 10100 ||
+
| 10100 || [[#SaveReport]]
 
|-
 
|-
| 10101 || [6.0.0+]
+
| 10101 || [6.0.0+] [[#SaveReportWithUser]]
 
|-
 
|-
| 10200 || [6.0.0+]
+
| 10200 || [6.0.0+] [[#SaveReportForAntiPiracy]]
 
|-
 
|-
| 10201 || [6.0.0+]
+
| 10201 || [6.0.0+] [[#SaveReportWithUserForAntiPiracy]]
 
|-
 
|-
| 10300 || [15.0.0+]
+
| 10300 || [15.0.0+] [[#SendReportWithUser]]
 
|-
 
|-
| 11000 || [6.0.0+]
+
| 11000 || [6.0.0+] [[#NotifyUserList]]
 
|-
 
|-
| 11001 || [6.0.0+]
+
| 11001 || [6.0.0+] [[#NotifyUserDeleted]]
 
|-
 
|-
| 11002 || [6.0.0+]
+
| 11002 || [6.0.0+] [[#NotifyUserRegistered]]
 
|-
 
|-
| 11003 || [6.0.0-10.2.0]
+
| 11003 || [6.0.0-10.2.0] [[#NotifyUserClosed]]
 
|-
 
|-
| 11004 || [6.0.0-10.2.0]
+
| 11004 || [6.0.0-10.2.0] [[#NotifyUserOpened]]
 
|-
 
|-
| 11005 || [11.0.0+]
+
| 11005 || [11.0.0+] [[#NotifyUserClosedWithApplicationId]]
 
|-
 
|-
| 11006 || [11.0.0+]
+
| 11006 || [11.0.0+] [[#NotifyUserOpenedWithApplicationId]]
 
|-
 
|-
| 11100 || [6.0.0+]
+
| 11100 || [6.0.0+] [[#NotifyCompletedNetworkRequestChanged]]
 
|-
 
|-
| 11200 || [6.0.0+]
+
| 11200 || [6.0.0+] [[#NotifyFriendPresenceChanged]]
 
|-
 
|-
| 11300 || [6.0.0+]
+
| 11300 || [6.0.0+] [[#NotifyNotificationConnectivityChanged]]
 
|-
 
|-
| 11400 || [6.0.0+]
+
| 11400 || [6.0.0+] [[#NotifyDeviceOperationModeChanged]]
 
|-
 
|-
| 11500 || [6.0.0+]
+
| 11500 || [6.0.0+] [[#NotifySystemPowerStateChanged]]
 
|-
 
|-
| 11600 || [6.0.0+]
+
| 11600 || [6.0.0+] [[#NotifyAppletLaunched]]
 
|-
 
|-
| 11601 || [6.0.0+]
+
| 11601 || [6.0.0+] [[#NotifyAppletExited]]
 
|-
 
|-
| 11602 || [6.0.0+]
+
| 11602 || [6.0.0+] [[#NotifyForegroundAppletChanged]]
 
|-
 
|-
| 11700 || [6.0.0+]
+
| 11700 || [6.0.0+] [[#NotifyControllerCountChanged]]
 
|-
 
|-
| 11800 || [6.0.0+]
+
| 11800 || [6.0.0+] [[#NotifyAudioInStarted]]
 
|-
 
|-
| 11801 || [6.0.0+]
+
| 11801 || [6.0.0+] [[#NotifyAudioInStopped]]
 
|-
 
|-
| 11810 || [8.0.0+]
+
| 11810 || [8.0.0+] [[#NotifyLaunchApplicationStorage]]
 
|-
 
|-
| 11811 || [8.0.0+]
+
| 11811 || [8.0.0+] [[#NotifyApplicationRightsInfo]]
 
|-
 
|-
| 12000 || [8.0.0+]
+
| 12000 || [8.0.0+] [[#RegisterWatchdog]]
 
|-
 
|-
| 12001 || [8.0.0+]
+
| 12001 || [8.0.0+] [[#UnregisterWatchdog]]
 
|-
 
|-
| 13000 || [8.0.0+] [[#OpenSyslogLogger]]
+
| 13000 || [8.0.0+] [[#GetSyslogLogger]]
 
|-
 
|-
| 13001 || [8.0.0+]
+
| 13001 || [8.0.0+] [[#SaveSyslogReport]]
 
|-
 
|-
| 20100 ||
+
| 20100 || [[#PopReport]]
 
|-
 
|-
| 20200 ||
+
| 20200 || [[#GetPushEventReadableHandle]]
 
|-
 
|-
| 20300 || [6.0.0+]
+
| 20300 || [6.0.0+] [[#Shutdown]]
 
|-
 
|-
| 20400 || [6.0.0+]
+
| 20400 || [6.0.0+] [[#PopLostByBufferShortageInfo]]
 
|-
 
|-
| 20401 || [6.0.0+]
+
| 20401 || [6.0.0+] [[#GetBufferUsageInfo]]
 
|-
 
|-
| 20402 || [7.0.0+]
+
| 20402 || [7.0.0+] [[#SetDurationReportChatteringDetectionThreshold]]
 
|-
 
|-
| 20500 || [8.0.0+]
+
| 20500 || [8.0.0+] [[#GetWatchdogStatistics]]
 
|-
 
|-
| 20600 || [15.0.0+]
+
| 20600 || [15.0.0+] [[#NotifyForegroundTransmissionResult]]
 
|}
 
|}
   −
== Cmd10100 ==
+
== SaveReport ==
Takes a type-0x9 input buffer containing an EventId string, a type-0x5 input buffer containing the Report, an input [[NCM_services#ProgramId|ProgramId]], no output.
+
Takes a type-0x9 input buffer containing the [[#EventId]], an input u64 '''ApplicationId''' and a type-0x5 input buffer containing the [[#SystemReport]]. No output.
   −
The EventId buffer size must be 0x1-0x20, and the last byte in the buffer must be NUL. <code>nn::srepo::detail::VerifyEventId</code> is then used with the EventId buffer, throwing error on failure.
+
<code>nn::srepo::detail::VerifyEventId</code> is then used with the [[#EventId]], throwing error on failure.
   −
The Report buffer is used with <code>nn::srepo::detail::VerifyReport</code> and with last param = 0x8000, throwing error on failure.
+
The [[#SystemReport]] is used with <code>nn::srepo::detail::VerifyReport</code> and with last param = 0x8000, throwing error on failure.
    
Lastly, the actual processing func is called, returning the Result from here. Besides various cmd input being passed to this etc, this also passes the output from <code>nn::util::GenerateUuid()</code> to this.
 
Lastly, the actual processing func is called, returning the Result from here. Besides various cmd input being passed to this etc, this also passes the output from <code>nn::util::GenerateUuid()</code> to this.
   −
== Cmd10101 ==
+
== SaveReportWithUser ==
Takes a type-0x9 input buffer containing an EventId string, a type-0x5 input buffer containing the Report, an 0x10-byte input struct, an input [[NCM_services#ProgramId|ProgramId]], no output.
+
Takes a type-0x9 input buffer containing the [[#EventId]], an input u64 '''ApplicationId''', a type-0x5 input buffer containing the [[#SystemReport]] and an input [[Account_services#Uid|Uid]]. No output.
   −
Same as [[#Cmd10100]] except instead of calling the processing func with struct=all-zero, the input struct is passed instead (which must be non-zero).
+
Same as [[#SaveReport]] except instead of calling the processing func with Uid=all-zero, the input Uid is passed instead (which must be non-zero).
   −
== Cmd10200 ==
+
== SaveReportForAntiPiracy ==
Takes a type-0x9 input buffer containing an EventId string, a type-0x5 input buffer containing the Report, an input [[NCM_services#ProgramId|ProgramId]], no output.
+
Takes a type-0x9 input buffer containing the [[#EventId]], an input u64 '''ApplicationId''' and a type-0x5 input buffer containing the [[#SystemReport]]. No output.
   −
Same as [[#Cmd10100]] except the second param passed to the processing func is value 1 instead of 0.
+
Same as [[#SaveReport]] except the [[#SystemReport]] Flags field is 1 instead of 0.
   −
== Cmd10201 ==
+
== SaveReportWithUserForAntiPiracy ==
Takes a type-0x9 input buffer containing an EventId string, a type-0x5 input buffer containing the Report, an 0x10-byte input struct, an input [[NCM_services#ProgramId|ProgramId]], no output.
+
Takes a type-0x9 input buffer containing the [[#EventId]], an input u64 '''ApplicationId''', a type-0x5 input buffer containing the [[#SystemReport]] and an input [[Account_services#Uid|Uid]]. No output.
   −
Same as [[#Cmd10101]] except the second param passed to the processing func is value 1 instead of 0.
+
Same as [[#SaveReportWithUser]] except the [[#SystemReport]] Flags field is 1 instead of 0.
   −
== Cmd10300 ==
+
== SendReportWithUser ==
Takes a total of 0x28-bytes of input, a type-0x9 input buffer, a TransferMemory handle, returns an output [[#IAsyncContext]].
+
Takes an input [[Account_services#Uid|Uid]], an input u64 '''ApplicationId''', an input bool (padded to u64), two input u32s, a type-0x9 input buffer and a TransferMemory handle. Returns an output [[#IAsyncContext]].
    
The mapped TransferMemory buffer is used with <code>nn::srepo::detail::VerifyReport</code>, returning an error on failure.
 
The mapped TransferMemory buffer is used with <code>nn::srepo::detail::VerifyReport</code>, returning an error on failure.
   −
== Cmd11000 ==
+
== NotifyUserList ==
Takes a type-0x9 input buffer containing an array of a 0x10-byte struct, no output.
+
Takes a type-0x9 input buffer containing an array of [[Account_services#Uid|Uid]]. No output.
    
The Sf handler code (func which calls the serv obj vfunc) will throw an error if the buffer size is >0x8F (that is, >8 entries).
 
The Sf handler code (func which calls the serv obj vfunc) will throw an error if the buffer size is >0x8F (that is, >8 entries).
Line 298: Line 286:  
This gets data from a state list, then clears the is_initialized flag for each entry. Lastly when the input array count is non-zero, this loops through the input array writing each entry into the aforementioned state list. If this would run out of space, it would skip writing that entry and still continue - however this shouldn't be possible with the above Sf check. Then this returns 0.
 
This gets data from a state list, then clears the is_initialized flag for each entry. Lastly when the input array count is non-zero, this loops through the input array writing each entry into the aforementioned state list. If this would run out of space, it would skip writing that entry and still continue - however this shouldn't be possible with the above Sf check. Then this returns 0.
   −
== Cmd11001 ==
+
== NotifyUserDeleted ==
Takes a 0x10-byte input struct, no output.
+
Takes an input [[Account_services#Uid|Uid]]. No output.
 +
 
 +
This calls the same state-reset func as [[#NotifyUserList]], except this passes the input Uid instead. Then this returns 0.
 +
 
 +
== NotifyUserRegistered ==
 +
Takes an input [[Account_services#Uid|Uid]]. No output.
 +
 
 +
This calls the same state-writing func as [[#NotifyUserList]], except this passes the input Uid instead. Then this returns 0.
   −
This calls the same state-reset func as [[#Cmd11000]], except this passes the input struct instead. Then this returns 0.
+
== NotifyUserClosed ==
 +
Takes an input [[Account_services#Uid|Uid]]. No output.
   −
== Cmd11002 ==
+
== NotifyUserOpened ==
Takes a 0x10-byte input struct, no output.
+
Takes an input [[Account_services#Uid|Uid]]. No output.
   −
This calls the same state-writing func as [[#Cmd11000]], except this passes the input struct instead. Then this returns 0.
+
== NotifyUserClosedWithApplicationId ==
 +
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.
   −
== Cmd11003 ==
+
== NotifyUserOpenedWithApplicationId ==
Takes a 0x10-byte input struct, no output.
+
Takes an input [[Account_services#Uid|Uid]] and an input u64 '''ApplicationId'''. No output.
   −
== Cmd11004 ==
+
== NotifyCompletedNetworkRequestChanged ==
Takes a 0x10-byte input struct, no output.
+
Takes an input s8 and an input bool. No output.
   −
Identical to [[#Cmd11003]] except different input is passed to the called func (1 instead of 0).
+
== NotifyFriendPresenceChanged ==
 +
Takes an input [[Account_services#Uid|Uid]] and an input s8 (padded to u64). No output.
   −
== Cmd11005 ==
+
== NotifyNotificationConnectivityChanged ==
Takes a total of 0x18-bytes of input, no output.
+
Takes an input s8. No output.
   −
This replaces [[#Cmd11003]].
+
== NotifyDeviceOperationModeChanged ==
 +
Takes an input s8. No output.
   −
== Cmd11006 ==
+
== NotifySystemPowerStateChanged ==
Takes a total of 0x18-bytes of input, no output.
+
Takes an input s8. No output.
   −
Identical to [[#Cmd11005]] except different input is passed to the called func (1 instead of 0).
+
== NotifyAppletLaunched ==
 +
Takes an input [[#SfAppletIdentityInfo]]. No output.
   −
This replaces [[#Cmd11004]].
+
== NotifyAppletExited ==
 +
Takes an input [[#SfAppletIdentityInfo]]. No output.
   −
== Cmd12001 ==
+
== NotifyForegroundAppletChanged ==
Takes an input u64, no output.
+
Takes an input [[#SfAppletIdentityInfo]]. No output.
 +
 
 +
== NotifyControllerCountChanged ==
 +
Takes three input s8s. No output.
 +
 
 +
== NotifyAudioInStarted ==
 +
Takes a type-0x5 input buffer and an input u64. No output.
 +
 
 +
== NotifyAudioInStopped ==
 +
Takes a type-0x5 input buffer and an input u64. No output.
 +
 
 +
== NotifyLaunchApplicationStorage ==
 +
Takes an input u64 '''ApplicationId''' and an input u8 (padded to u64). No output.
 +
 
 +
== NotifyApplicationRightsInfo ==
 +
Takes an input u64 '''ApplicationId''' and an input u32 (padded to u64). No output.
 +
 
 +
== RegisterWatchdog ==
 +
Takes a type-0x9 input buffer, an input [[#TimeSpanType]] and an input u64. Returns an output [[#WatchdogHandle]].
   −
The input u64 is only used for comparing with a field in list entries.
+
== UnregisterWatchdog ==
 +
Takes an input [[#WatchdogHandle]]. No output.
   −
== OpenSyslogLogger ==
+
== GetSyslogLogger ==
Takes a type-0x5 input buffer, no output.
+
Takes a type-0x5 input buffer. No output.
   −
[9.0.0+] No input, returns 3 u32s of output (sharedmem_size, out1, out2), an [[#ISyslogLogger]], and a SharedMemory handle.
+
[9.0.0+] No input. Returns three output u32s, an [[#ISyslogLogger]] and a SharedMemory handle.
    
The SharedMemory is mapped with the returned size and with permissions=RW.
 
The SharedMemory is mapped with the returned size and with permissions=RW.
   −
== Cmd13001 ==
+
== SaveSyslogReport ==
Takes a total of 0x10-bytes of input, no output.
+
Takes an input u128 "nn::util::Uuid". No output.
 +
 
 +
== PopReport ==
 +
Takes a type-0xA output buffer and a type-0x6 output buffer. Returns an output [[Account_services#Uid|Uid]].
   −
== Cmd20100 ==
+
[6.0.0+] This now returns an additional output u64 '''ApplicationId''' and an output u128 "nn::util::Uuid".
Takes a type-0x16 output buffer and a type-0x6 output buffer, returns a total of 0x28-bytes of output.
     −
[10.0.0+] This now takes an additional 0x10-bytes of input.
+
[10.0.0+] This now returns an additional output u64 and two output u32s.
    
This is only usable with srepo:a.
 
This is only usable with srepo:a.
   −
== Cmd20200 ==
+
== GetPushEventReadableHandle ==
No input, returns an output handle.
+
No input. Returns an output Event handle.
    
This is only usable with srepo:a.
 
This is only usable with srepo:a.
   −
== Cmd20300 ==
+
== Shutdown ==
 
No input/output.
 
No input/output.
   −
== Cmd20400 ==
+
== PopLostByBufferShortageInfo ==
Takes an input u32 index, returns two output u64s.
+
Takes an input u32. Returns two output u64s.
   −
The input index must be <=1. This gets data from a state array with the specified index.
+
The input u32 must be <=1. This gets data from a state array with the specified index.
   −
== Cmd20401 ==
+
== GetBufferUsageInfo ==
No input, returns two output u64s.
+
No input. Returns two output u64s.
    
The first u64 is a constant value, while the second u64 is from state.
 
The first u64 is a constant value, while the second u64 is from state.
   −
== Cmd20402 ==
+
== SetDurationReportChatteringDetectionThreshold ==
Takes an input s64 and u64, no output.
+
Takes an input [[#TimeSpanType]] and an input u64. No output.
    
The input s64 must be >=1. The two input fields are written into global state, and various state is also cleared.
 
The input s64 must be >=1. The two input fields are written into global state, and various state is also cleared.
   −
== Cmd20500 ==
+
== GetWatchdogStatistics ==
No input, returns two output u64s.
+
No input. Returns an output [[#WatchdogStatistics]].
    
This gets two u64s from global state.
 
This gets two u64s from global state.
   −
== Cmd20600 ==
+
== NotifyForegroundTransmissionResult ==
Takes a 0x10-byte input struct and an u32, no output.
+
Takes an input u128 "nn::util::Uuid" and an input [[#ResultHolder]]. No output.
   −
This goes through a list looking for an entry with data matching the input struct, then writes the input u32 into that entry.
+
This goes through the global list of [[#IAsyncContext]] looking for an entry with data matching the input struct, then writes the input [[#ResultHolder]] into that [[#IAsyncContext]]. This Result would then be returned by [[#GetResult]] - the Event from [[#GetSystemEvent]] is also signaled.
    
This always returns 0.
 
This always returns 0.
Line 394: Line 416:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||  
+
| 0 || [[#ReallocateBuffer|ReallocateBuffer]]
 
|}
 
|}
   −
Cmd0: no input, returns a total of 8-bytes of output.
+
=== ReallocateBuffer ===
 +
No input. Returns two output u32s.
 +
 
 +
This does the same entry-allocation in sharedmem as [[#GetSyslogLogger]].
    
== IAsyncContext ==
 
== IAsyncContext ==
Line 408: Line 433:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 || GetSystemEvent
+
| 0 || [[#GetSystemEvent]]
 
|-
 
|-
| 1 || Cancel
+
| 1 || [[#Cancel]]
 
|-
 
|-
| 2 || GetResult
+
| 2 || [[#GetResult]]
 
|}
 
|}
 +
 +
=== GetSystemEvent ===
 +
No input, returns an output Event.
 +
 +
=== Cancel ===
 +
No input/output.
 +
 +
This just returns 0.
 +
 +
=== GetResult ===
 +
No input/output.
 +
 +
This checks if the Event from GetSystemEvent was signaled throwing an error if not, otherwise this returns the Result stored in the context object.
    
= ovln:rcv =
 
= ovln:rcv =
Line 734: Line 772:     
=== TimeSpanType ===
 
=== TimeSpanType ===
This is an u64.
+
This is an s64.
    
== ISystemClock ==
 
== ISystemClock ==
Line 924: Line 962:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 || [[#AddSource]]
+
| 0 || [[#GetInputSourceState]]
 
|-
 
|-
| 1 || [[#Receive]]
+
| 1 || [[#GetTriggerTargetEvent]]
 
|}
 
|}
   −
== AddSource ==
+
== GetInputSourceState ==
Unofficial name.
  −
 
   
Takes an input u32 '''SourceId'''. Returns an output u64 '''EventTime'''.
 
Takes an input u32 '''SourceId'''. Returns an output u64 '''EventTime'''.
   −
== Receive ==
+
== GetTriggerTargetEvent ==
Unofficial name.
  −
 
   
Takes an input u32 '''SourceId''' and an input u64 (unused, official software passes struct pointer). Returns an output Event handle with autoclear disabled.
 
Takes an input u32 '''SourceId''' and an input u64 (unused, official software passes struct pointer). Returns an output Event handle with autoclear disabled.
   Line 948: Line 982:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 || [[#Send]]
+
| 0 || [[#GetNotifyEvent]]
 
|}
 
|}
   −
== Send ==
+
== GetNotifyEvent ==
Unofficial name.
  −
 
   
Takes an input u32 '''SourceId''' and an input u64 (unused, official software passes struct pointer). Returns an output Event handle with autoclear disabled.
 
Takes an input u32 '''SourceId''' and an input u64 (unused, official software passes struct pointer). Returns an output Event handle with autoclear disabled.
   Line 965: Line 997:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||
+
| 0 || GetBatteryPercentage
 
|-
 
|-
| 1 ||
+
| 1 || GetRawBatteryPercentage
 
|-
 
|-
 
| 2 || [[#OpenChargeSession]]
 
| 2 || [[#OpenChargeSession]]
 
|-
 
|-
| 3 ||
+
| 3 || GetChargerType
 
|-
 
|-
| 4 ||
+
| 4 || GetBatteryVoltageLevel
 
|-
 
|-
 
| 5 || [[#OpenThermalSession]]
 
| 5 || [[#OpenThermalSession]]
 
|-
 
|-
| 6 ||
+
| 6 || GetAbnormalTemperatureSet
 
|-
 
|-
 
| 7 || [[#OpenClockSession]]
 
| 7 || [[#OpenClockSession]]
 
|-
 
|-
| 8 ||
+
| 8 || GetClockRate
 +
|-
 +
| 9 || [17.0.0+] [[#OpenBridgeSession]]
 +
|-
 +
| 10 || [17.0.0+] GetBridgePowerSupply
 +
|-
 +
| 11 || [18.0.0+] [[#OpenVsysVoltageSession]]
 +
|-
 +
| 12 || [18.0.0+]
 
|}
 
|}
   Line 992: Line 1,032:  
== OpenClockSession ==
 
== OpenClockSession ==
 
Takes an input u32. Returns an [[#IClockSession]].
 
Takes an input u32. Returns an [[#IClockSession]].
 +
 +
== OpenBridgeSession ==
 +
No input. Returns an [[#IBridgeSession]].
 +
 +
== OpenVsysVoltageSession ==
 +
No input. Returns an [[#IVsysVoltageSession]].
    
== IChargeSession ==
 
== IChargeSession ==
Line 1,000: Line 1,046:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||
+
| 0 || GetStateChangeEvent
 
|-
 
|-
| 1 ||
+
| 1 || SetStateChangeSet
 
|}
 
|}
   Line 1,012: Line 1,058:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||
+
| 0 || GetAbnormalTemperatureEvent
 
|-
 
|-
| 1 ||
+
| 1 || SetAbnormalTemperatureEventMask
 
|}
 
|}
   Line 1,024: Line 1,070:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||
+
| 0 || GetStateChangeEvent
 +
|}
 +
 
 +
== IBridgeSession ==
 +
This is "nn::hshl::IBridgeSession".
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || GetStateChangeEvent
 +
|}
 +
 
 +
== IVsysVoltageSession ==
 +
This is "nn::hshl::IVsysVoltageSession".
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || GetStateChangeEvent
 
|}
 
|}
   Line 1,036: Line 1,102:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 || [[#OpenChargeSetterSession]]
+
| 0 || [[#OpenChargeSession_2|OpenChargeSession]]
 
|-
 
|-
| 1 || [[#OpenThermalSetterSession]]
+
| 1 || [[#OpenThermalSession_2|OpenThermalSession]]
 
|-
 
|-
| 2 ||
+
| 2 || SetClockRate
 +
|-
 +
| 3 || [17.0.0+] SetBridgePowerSupply
 +
|-
 +
| 4 || [18.0.0+]
 +
|-
 +
| 5 || [18.0.0+]
 
|}
 
|}
   −
== OpenChargeSetterSession ==
+
== OpenChargeSession ==
 
Takes an input u32. Returns an [[#IChargeSetterSession]].
 
Takes an input u32. Returns an [[#IChargeSetterSession]].
   −
== OpenThermalSetterSession ==
+
== OpenThermalSession ==
 
Takes an input u32. Returns an [[#IThermalSetterSession]].
 
Takes an input u32. Returns an [[#IThermalSetterSession]].
   Line 1,056: Line 1,128:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||
+
| 0 || SetBatteryPercentage
 
|-
 
|-
| 1 ||
+
| 1 || SetRawBatteryPercentage
 
|-
 
|-
| 2 ||
+
| 2 || SetChargerType
 
|-
 
|-
| 3 ||
+
| 3 || SetBatteryVoltageLevel
 +
|-
 +
| 4 || [18.0.0+]
 
|}
 
|}
   Line 1,072: Line 1,146:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 0 ||
+
| 0 || SetAbnormalTemperatureSet
 
|}
 
|}
   Line 1,092: Line 1,166:  
| 0x04 || [[USB_services|Usb]]
 
| 0x04 || [[USB_services|Usb]]
 
|-
 
|-
| 0x05 || [[Sockets_services|Eth]]
+
| 0x05 || [[Ethernet_services|Eth]]
 
|-
 
|-
 
| 0x06 || [[PTM_services|Fgm]]
 
| 0x06 || [[PTM_services|Fgm]]
Line 1,118: Line 1,192:  
| 0x11 || [[PTM_services|Tc]]
 
| 0x11 || [[PTM_services|Tc]]
 
|-
 
|-
| 0x12 || [[Applet_Manager_services|Omm]]
+
| 0x12 || [[OMM_services|Omm]]
 
|-
 
|-
 
| 0x13 || [[PCIe_services|Pcie]]
 
| 0x13 || [[PCIe_services|Pcie]]
Line 1,186: Line 1,260:  
| 0x33 || [[NIM_services|Ntc]]
 
| 0x33 || [[NIM_services|Ntc]]
 
|-
 
|-
| 0x34 || [[Applet_Manager_services|Idle]]
+
| 0x34 || [[OMM_services|Idle]]
 
|-
 
|-
 
| 0x35 || [[Applet_Manager_services|Tcap]]
 
| 0x35 || [[Applet_Manager_services|Tcap]]
Line 1,206: Line 1,280:  
| 0x3D || [[NS_Services|Ns]]
 
| 0x3D || [[NS_Services|Ns]]
 
|-
 
|-
| 0x3E ||  
+
| 0x3E || [[PTM_services|Powctl]]
 
|-
 
|-
| 0x3F || [[Applet_Manager_services|NotificationPresenter]]
+
| 0x3F || [[OMM_services|NotificationPresenter]]
 
|-
 
|-
| 0x40 ||  
+
| 0x40 || [[Glue_services|Notification]]
 
|-
 
|-
| 0x41 || [[Sockets_services|DhcpClient]]
+
| 0x41 || [[Sockets_services|Dhcps]]
 +
|-
 +
| 0x42 || [[BCAT_services|Mnpp]]
 +
|-
 +
| 0x43 || [[OLSC_services|Sprofile]]
 
|-
 
|-
 
| 0x65 || [[NV_services|NvHost]]
 
| 0x65 || [[NV_services|NvHost]]
 
|-
 
|-
| 0x69 || [[NV_services|NvDbgSvc]]
+
| 0x69 || NvDbgSvc
 
|-
 
|-
 
| 0x6A || Tspm
 
| 0x6A || Tspm
 
|-
 
|-
| 0x7F || [[Applet_Manager_services|Spsm]]
+
| 0x7F || [[OMM_services|Spsm]]
 
|}
 
|}
   Line 1,289: Line 1,367:  
| Reserved
 
| Reserved
 
|}
 
|}
 +
 +
= SystemReport =
 +
This is "nn::srepo::SystemReport".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x00
 +
| 0x20
 +
| [[#EventId|EventId]]
 +
|-
 +
| 0x20
 +
| 0x08
 +
| ApplicationId
 +
|-
 +
| 0x28
 +
| 0x04
 +
| Flags
 +
|-
 +
| 0x2C
 +
| 0x01
 +
|
 +
|-
 +
| 0x2D
 +
| 0x03
 +
| Reserved
 +
|-
 +
| 0x30
 +
| 0x08
 +
| ReportBufferAddress
 +
|-
 +
| 0x38
 +
| 0x08
 +
| ReportBufferTotalSize
 +
|-
 +
| 0x40
 +
| 0x08
 +
| ReportBufferCurrentSize
 +
|}
 +
 +
= EventId =
 +
This is "nn::srepo::EventId". This is a 0x20-byte string.
 +
 +
= WatchdogHandle =
 +
This is "nn::srepo::WatchdogHandle". This is an u64.
 +
 +
= WatchdogStatistics =
 +
This is "nn::srepo::WatchdogStatistics".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x00
 +
| 0x08
 +
|
 +
|-
 +
| 0x08
 +
| 0x08
 +
|
 +
|}
 +
 +
= ResultHolder =
 +
This is "nn::srepo::detail::ipc::ResultHolder". This is an u32.
 +
 +
= SfAppletIdentityInfo =
 +
This is "nn::srepo::detail::ipc::SfAppletIdentityInfo". This is a 0x10-byte struct.
    
[[Category:Services]]
 
[[Category:Services]]