Process Services

Process Services

PS service “ps:ps” #

Command HeaderAvailable since system versionDescription
0x000102441.0.0-0SignRsaSha256
0x000202441.0.0-0VerifyRsaSha256
Not implementedSetAesKey (just returns error 0xD8C107F4)
0x000402041.0.0-0EncryptDecryptAes
0x000502841.0.0-0EncryptSignDecryptVerifyAesCcm
0x000600401.0.0-0GetRomId (u32 processID)
0x000700401.0.0-0GetRomId2 (u32 processID)
0x000800401.0.0-0GetRomMakerCode (u32 processID)
0x000900001.0.0-0GetCTRCardAutoStartupBit
0x000A00001.0.0-0GetLocalFriendCodeSeed
0x000B00001.0.0-0GetDeviceId
0x000C00001.0.0-0SeedRNG
0x000D00421.0.0-0GenerateRandomBytes
0x000E00828.1.0-0_New3DS]], Old3DS = 9.0.0-20Interface for Process_Services_PXI New3DS command 0x04010084.
0x000F00828.1.0-0_New3DS]], Old3DS = 9.0.0-20Interface for Process_Services_PXI New3DS command 0x04020082.
0x001000428.1.0-0_New3DS]], Old3DS = 9.0.0-20Interface for Process_Services_PXI New3DS command 0x04030044.
0x001100428.1.0-0_New3DS]], Old3DS = 9.0.0-20Interface for Process_Services_PXI New3DS command 0x04040044.

These commands are an interface for Process_Services_PXI.

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. NFC module uses all of these new commands for New3DS.

Category:Services