Settings services
set
| Cmd | Name |
|---|---|
| 0 | GetLanguageCode |
| 1 | SetLanguageCode |
| 3 | |
| 4 |
set:fd
set:cal
| Cmd | Name |
|---|---|
| 14 | GetDeviceCert |
| 15 | GetDeviceCert2 |
| 16 | GetTLSClientPrivk |
| 17 | GetTLSClientCert |
Used for accessing data calibrated at the factory.
GetDeviceCert
Takes a type-0x16 output buffer with fixed size 0x180.
Returns the DeviceCert. This is identical to 3DS DeviceCert/CTCert besides the strings. NIM loads the DeviceId from this.
GetDeviceCert2
Takes a type-0x16 output buffer with fixed size 0x240.
Same as GetDeviceCert, except this returns more data and the data starts differing at offset 0x108 compared to GetDeviceCert.
GetTLSClientPrivk
Takes a type-0x16 output buffer with fixed size 0x134.
Returns a container-structure for the encrypted TLS client-privk. Decrypting this fails unless an unknown size >0x134 is passed to this setcal cmd?
Used by SSL-sysmodule, see here.
GetTLSClientCert
Takes a type-0x16 output buffer with fixed size 0x804.
Returns a container-structure for the plaintext TLS client-cert.
Used by SSL-sysmodule, see here.
setcal Container Structure
| Offset | Size | Name |
|---|---|---|
| 0x0 | 0x4 | Size (same size used for decryption if needed) |
| 0x4 | {above size} | Actual data starts here. |
set:sys
| Cmd | Name |
|---|---|
| ? | GetSystemVersion |
| ? | GetSerialNumber (Returns the 0x18-byte SerialNumber string) |
GetSystemVersion
Returns the content of the System_Version_Title "/file".