Difference between revisions of "SPL services"

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 56: Line 56:
 
! ConfigItem || Name
 
! ConfigItem || Name
 
|-
 
|-
| 5 || HardwareType
+
| 5 || HardwareType (0=Icosa, 1=Copper)
 
|-
 
|-
 
| 8 || 64bit DeviceId with byte7 clear.
 
| 8 || 64bit DeviceId with byte7 clear.

Revision as of 22:37, 4 July 2017

spl:

Cmd Name Notes
0 #GetConfig
1 Unknown marshalling.
2 #ScrambleKeyA
3 Always returns 0x2D1A?
4 #ScrambleKeyB
5 Always returns 0x41A?
7
9
10
11 #GetDevunitFlag
12
13
14
15
16
17
18
19
20
21
22
23

GetConfig

Takes an input word (ConfigItem), and returns a u64 with the config params.

ConfigItem Name
5 HardwareType (0=Icosa, 1=Copper)
8 64bit DeviceId with byte7 clear.
11 Allow skipping RSA signatures on NRR.

Output from this when used by NIM must match the set:cal DeviceId with byte7 cleared, otherwise NIM will panic.

RO checks id11, if set then skipping NRR rsa signatures is allowed.

ScrambleKeyA

Takes 16-bytes as input and two u32s. Outputs random-looking 16-bytes.

Same input gives same output. Output changes when system is rebooted.

ScrambleKeyB

Behaves similar to #ScrambleKeyA, but with different output.

Also console unique. This is not the inverse operation of #ScrambleKeyA.

GetDevunitFlag

No input params.

Returns an u8 flag for whether the system is devunit. Output flag is 0 on retail.

Cmd13

Last SPL cmd used by SSL-sysmodule for TLS client-privk.