Changes

Jump to navigation Jump to search
660 bytes added ,  10:43, 18 September 2024
m
Add anchors
Line 1: Line 1: −
[[Category:Services]]
+
{{Anchor|PS}}{{Anchor|ps:ps}}
 +
= PS service "ps:ps" =
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
 
!  Command Header
 
!  Command Header
 +
!  Available since system version
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0x00010244
 
| 0x00010244
| SignRsaSha256
+
| [[1.0.0-0]]
 +
| [[PS:SignRsaSha256|SignRsaSha256]]
 
|-
 
|-
 
| 0x00020244
 
| 0x00020244
| VerifyRsaSha256
+
| [[1.0.0-0]]
 +
| [[PS:VerifyRsaSha256|VerifyRsaSha256]]
 
|-
 
|-
 
| Not implemented
 
| Not implemented
| SetAesKey
+
|
 +
| SetAesKey (just returns error 0xD8C107F4)
 
|-
 
|-
 
| 0x00040204
 
| 0x00040204
 +
| [[1.0.0-0]]
 
| [[PS:EncryptDecryptAes|EncryptDecryptAes]]
 
| [[PS:EncryptDecryptAes|EncryptDecryptAes]]
 
|-
 
|-
 
| 0x00050284
 
| 0x00050284
 +
| [[1.0.0-0]]
 
| [[PS:EncryptSignDecryptVerifyAesCcm|EncryptSignDecryptVerifyAesCcm]]
 
| [[PS:EncryptSignDecryptVerifyAesCcm|EncryptSignDecryptVerifyAesCcm]]
 
|-
 
|-
 
| 0x00060040
 
| 0x00060040
 +
| [[1.0.0-0]]
 
| GetRomId (u32 processID)
 
| GetRomId (u32 processID)
 
|-
 
|-
 
| 0x00070040
 
| 0x00070040
 +
| [[1.0.0-0]]
 
| GetRomId2 (u32 processID)
 
| GetRomId2 (u32 processID)
 
|-
 
|-
 
| 0x00080040
 
| 0x00080040
 +
| [[1.0.0-0]]
 
| GetRomMakerCode (u32 processID)
 
| GetRomMakerCode (u32 processID)
 
|-
 
|-
 
| 0x00090000
 
| 0x00090000
| GetCTRCardAutoStartupBit
+
| [[1.0.0-0]]
 +
| [[PS:GetCTRCardAutoStartupBit|GetCTRCardAutoStartupBit]]
 
|-
 
|-
 
| 0x000A0000
 
| 0x000A0000
 +
| [[1.0.0-0]]
 
| GetLocalFriendCodeSeed
 
| GetLocalFriendCodeSeed
 
|-
 
|-
 
| 0x000B0000
 
| 0x000B0000
 +
| [[1.0.0-0]]
 
| GetDeviceId
 
| GetDeviceId
 
|-
 
|-
 
| 0x000C0000
 
| 0x000C0000
| GatherEntropy
+
| [[1.0.0-0]]
 +
| [[PS:SeedRNG|SeedRNG]]
 
|-
 
|-
 
| 0x000D0042
 
| 0x000D0042
 +
| [[1.0.0-0]]
 
| GenerateRandomBytes
 
| GenerateRandomBytes
 
|-
 
|-
 
| 0x000E0082
 
| 0x000E0082
 +
| New3DS = [[8.1.0-0_New3DS]], Old3DS = [[9.0.0-20]]
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04010084.
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04010084.
 
|-
 
|-
 
| 0x000F0082
 
| 0x000F0082
 +
| New3DS = [[8.1.0-0_New3DS]], Old3DS = [[9.0.0-20]]
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04020082.
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04020082.
 
|-
 
|-
 
| 0x00100042
 
| 0x00100042
 +
| New3DS = [[8.1.0-0_New3DS]], Old3DS = [[9.0.0-20]]
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04030044.
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04030044.
 
|-
 
|-
 
| 0x00110042
 
| 0x00110042
 +
| New3DS = [[8.1.0-0_New3DS]], Old3DS = [[9.0.0-20]]
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04040044.
 
| Interface for [[Process_Services_PXI]] New3DS command 0x04040044.
 
|}
 
|}
Line 61: Line 80:  
For GetRomId, GetRomId2, and GetRomMakerCode, PS-module uses [[FS:GetProgramLaunchInfo]] with the processID which was sent to PS-module via the command input. If GetProgramLaunchInfo fails, PS-module returns error 0xC90107FA. When the mediatype is value2 for gamecard, the PSPXI command is used, otherwise PS-module just clears the output data for the command response.
 
For GetRomId, GetRomId2, and GetRomMakerCode, PS-module uses [[FS:GetProgramLaunchInfo]] with the processID which was sent to PS-module via the command input. If GetProgramLaunchInfo fails, PS-module returns error 0xC90107FA. When the mediatype is value2 for gamecard, the PSPXI command is used, otherwise PS-module just clears the output data for the command response.
   −
PS module does not use any CheckNew3DS commands: commands 0x000E0082..0x00110042 are handled by PS module regardless of whether this is running on Old3DS/New3DS. Using these commands on Old3DS will result in Process9 returning an invalid command header error.
+
PS module does not use any CheckNew3DS commands: commands 0x000E0082..0x00110042 are handled by PS module regardless of whether this is running on Old3DS/New3DS. Using these commands on Old3DS will result in Process9 returning an invalid command header error. [[NFC_Services|NFC]] module uses all of these new commands for New3DS.
 +
 
 +
[[Category:Services]]
164

edits

Navigation menu