Changes

Jump to navigation Jump to search
1,907 bytes added ,  18:03, 27 October 2017
m
Line 1: Line 1:  
[[Category:Services]]
 
[[Category:Services]]
   −
= Config services =
+
= Config Services =
 +
These commands are common to all Config services, except for "cfg:nor".
 +
 
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 16: Line 18:  
| [[Cfg:SecureInfoGetRegion|SecureInfoGetRegion]]
 
| [[Cfg:SecureInfoGetRegion|SecureInfoGetRegion]]
 
|-
 
|-
| 0x00030000
+
| 0x00030040
 
|  
 
|  
 
| [[Cfg:GenHashConsoleUnique|GenHashConsoleUnique]]/GetTransferableId
 
| [[Cfg:GenHashConsoleUnique|GenHashConsoleUnique]]/GetTransferableId
Line 38: Line 40:  
| 0x00080080
 
| 0x00080080
 
| [[7.0.0-13]]
 
| [[7.0.0-13]]
| (u32 value, u8 type) This goes through a table containing 5 entries, each entry is 2-words. Type0: compare entry-word0 with input value, on match write entry-word1 to cmdreply+8 output. Type1: compare entry-word1 with input value, on match write entry-word0 to output.
+
| [[Cfg:TranslateCountryInfo|TranslateCountryInfo]]
 
|-
 
|-
| 0x00090080
+
| 0x00090040
 
| [[7.0.0-13]]
 
| [[7.0.0-13]]
 
| [[Cfg:GetCountryCodeString|GetCountryCodeString]]
 
| [[Cfg:GetCountryCodeString|GetCountryCodeString]]
Line 47: Line 49:  
| [[7.0.0-13]]
 
| [[7.0.0-13]]
 
| [[Cfg:GetCountryCodeID|GetCountryCodeID]]
 
| [[Cfg:GetCountryCodeID|GetCountryCodeID]]
 +
|-
 +
| 0x000B0000
 +
| [[9.3.0-21|9.3.0-X]]
 +
| IsFangateSupported
 
|}
 
|}
 +
 +
= Config service "cfg:u" =
 +
This service provides no new commands in addition to the common ones.
    
= Config service "cfg:s" =
 
= Config service "cfg:s" =
Line 55: Line 64:  
!  Available since system version
 
!  Available since system version
 
!  Description
 
!  Description
 +
|-
 +
| 0x00050000
 +
|
 +
| Same as cfg:u 0x00050000 cmd?
 
|-
 
|-
 
| 0x04010082
 
| 0x04010082
Line 113: Line 126:  
|-
 
|-
 
| 0x040F0000
 
| 0x040F0000
| ?
+
|  
| ?
+
| [[CfgS:ClearParentalControls|ClearParentalControls]]
 
|}
 
|}
   Line 123: Line 136:  
|-
 
|-
 
!  Command Header
 
!  Command Header
 +
!  Available since system version
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0x04010082
 
| 0x04010082
 +
|
 
| [[CfgS:GetConfigInfoBlk8|GetConfigInfoBlk8]]
 
| [[CfgS:GetConfigInfoBlk8|GetConfigInfoBlk8]]
 
|-
 
|-
 
| 0x04020082
 
| 0x04020082
 +
|
 
| [[CfgS:SetConfigInfoBlk4|SetConfigInfoBlk4]]
 
| [[CfgS:SetConfigInfoBlk4|SetConfigInfoBlk4]]
 
|-
 
|-
 
| 0x04030000
 
| 0x04030000
 +
|
 
| [[Cfg:UpdateConfigNANDSavegame|UpdateConfigNANDSavegame]]
 
| [[Cfg:UpdateConfigNANDSavegame|UpdateConfigNANDSavegame]]
 
|-
 
|-
 
| 0x04040042
 
| 0x04040042
 +
|
 
| [[Cfg:GetLocalFriendCodeSeedData|GetLocalFriendCodeSeedData]]
 
| [[Cfg:GetLocalFriendCodeSeedData|GetLocalFriendCodeSeedData]]
 
|-
 
|-
 
| 0x04050000
 
| 0x04050000
 +
|
 
| [[CfgS:GetLocalFriendCodeSeed|GetLocalFriendCodeSeed]]
 
| [[CfgS:GetLocalFriendCodeSeed|GetLocalFriendCodeSeed]]
 
|-
 
|-
 
| 0x04060000
 
| 0x04060000
 +
|
 
| [[Cfg:SecureInfoGetRegion|SecureInfoGetRegion]]
 
| [[Cfg:SecureInfoGetRegion|SecureInfoGetRegion]]
 
|-
 
|-
 
| 0x04070000
 
| 0x04070000
 +
|
 
| [[CfgS:SecureInfoGetByte101|SecureInfoGetByte101]]
 
| [[CfgS:SecureInfoGetByte101|SecureInfoGetByte101]]
 
|-
 
|-
 
| 0x04080042
 
| 0x04080042
 +
|
 
| [[CfgS:SecureInfoGetSerialNo|SecureInfoGetSerialNo]]
 
| [[CfgS:SecureInfoGetSerialNo|SecureInfoGetSerialNo]]
 
|-
 
|-
 
| 0x04090000
 
| 0x04090000
 +
|
 
| [[Cfg:UpdateConfigBlk00040003|UpdateConfigBlk00040003]]
 
| [[Cfg:UpdateConfigBlk00040003|UpdateConfigBlk00040003]]
 +
|-
 +
| 0x040A0000
 +
| ?
 +
| ?
 +
|-
 +
| 0x040B0000
 +
| ?
 +
| ?
 +
|-
 +
| 0x040C0000
 +
| ?
 +
| ?
 +
|-
 +
| 0x040D0040
 +
| ?
 +
| ?
 +
|-
 +
| 0x040E0000
 +
| ?
 +
| ?
 +
|-
 +
| 0x040F0000
 +
|
 +
| [[CfgS:ClearParentalControls|ClearParentalControls]]
 
|-
 
|-
 
| 0x08010082
 
| 0x08010082
 +
|
 
| [[CfgS:GetConfigInfoBlk8|GetConfigInfoBlk8]]
 
| [[CfgS:GetConfigInfoBlk8|GetConfigInfoBlk8]]
 
|-
 
|-
 
| 0x08020082
 
| 0x08020082
 +
|
 
| [[CfgS:SetConfigInfoBlk4|SetConfigInfoBlk4]]
 
| [[CfgS:SetConfigInfoBlk4|SetConfigInfoBlk4]]
 
|-
 
|-
 
| 0x08030000
 
| 0x08030000
 +
|
 
| [[Cfg:UpdateConfigNANDSavegame|UpdateConfigNANDSavegame]]
 
| [[Cfg:UpdateConfigNANDSavegame|UpdateConfigNANDSavegame]]
 
|-
 
|-
 
| 0x080400C2
 
| 0x080400C2
 +
|
 
| [[CfgI:CreateConfigInfoBlk|CreateConfigInfoBlk]]
 
| [[CfgI:CreateConfigInfoBlk|CreateConfigInfoBlk]]
 
|-
 
|-
 
| 0x08050000
 
| 0x08050000
 +
|
 
| [[CfgI:DeleteConfigNANDSavefile|DeleteConfigNANDSavefile]]
 
| [[CfgI:DeleteConfigNANDSavefile|DeleteConfigNANDSavefile]]
 
|-
 
|-
 
| 0x08060000
 
| 0x08060000
 +
|
 
| [[CfgI:FormatConfig|FormatConfig]]
 
| [[CfgI:FormatConfig|FormatConfig]]
 
|-
 
|-
 
| 0x08070000
 
| 0x08070000
 +
|
 
| This basically just returns result-code value 0x0, due to code this eventually executes being NOPed out.
 
| This basically just returns result-code value 0x0, due to code this eventually executes being NOPed out.
 
|-
 
|-
 
| 0x08080000
 
| 0x08080000
 +
|
 
| This updates the config blocks for blkIDs 0x0 and 0x20000. In certain cases this may call the code for [[CfgI:FormatConfig|FormatConfig]].
 
| This updates the config blocks for blkIDs 0x0 and 0x20000. In certain cases this may call the code for [[CfgI:FormatConfig|FormatConfig]].
 
|-
 
|-
 
| 0x08090000
 
| 0x08090000
 +
|
 
| This updates the config block for blkID 0x60000.
 
| This updates the config block for blkID 0x60000.
 
|-
 
|-
 
| 0x080A0000
 
| 0x080A0000
| This updates the config block for blkID 0x00040001.
+
|  
 +
| ResetAnalogStickCalibrationParam? This updates the config block for blkID 0x00040001.
 
|-
 
|-
 
| 0x080B0082
 
| 0x080B0082
 +
|
 
| [[CfgI:SetGetLocalFriendCodeSeedData|SetGetLocalFriendCodeSeedData]]
 
| [[CfgI:SetGetLocalFriendCodeSeedData|SetGetLocalFriendCodeSeedData]]
 
|-
 
|-
 
| 0x080C0042
 
| 0x080C0042
 +
|
 
| [[CfgI:SetLocalFriendCodeSeedSignature|SetLocalFriendCodeSeedSignature]]
 
| [[CfgI:SetLocalFriendCodeSeedSignature|SetLocalFriendCodeSeedSignature]]
 
|-
 
|-
 
| 0x080D0000
 
| 0x080D0000
 +
|
 
| [[CfgI:DeleteCreateNANDLocalFriendCodeSeed|DeleteCreateNANDLocalFriendCodeSeed]]
 
| [[CfgI:DeleteCreateNANDLocalFriendCodeSeed|DeleteCreateNANDLocalFriendCodeSeed]]
 
|-
 
|-
 
| 0x080E0000
 
| 0x080E0000
 +
|
 
| [[CfgI:VerifySigLocalFriendCodeSeed|VerifySigLocalFriendCodeSeed]]  
 
| [[CfgI:VerifySigLocalFriendCodeSeed|VerifySigLocalFriendCodeSeed]]  
 
|-
 
|-
 
| 0x080F0042
 
| 0x080F0042
 +
|
 
| [[Cfg:GetLocalFriendCodeSeedData|GetLocalFriendCodeSeedData]]
 
| [[Cfg:GetLocalFriendCodeSeedData|GetLocalFriendCodeSeedData]]
 
|-
 
|-
 
| 0x08100000
 
| 0x08100000
 +
|
 
| [[CfgS:GetLocalFriendCodeSeed|GetLocalFriendCodeSeed]]
 
| [[CfgS:GetLocalFriendCodeSeed|GetLocalFriendCodeSeed]]
 
|-
 
|-
 
| 0x08110084
 
| 0x08110084
 +
|
 
| [[CfgI:SetSecureInfo|SetSecureInfo]]
 
| [[CfgI:SetSecureInfo|SetSecureInfo]]
 
|-
 
|-
 
| 0x08120000
 
| 0x08120000
 +
|
 
| [[CfgI:DeleteCreateNANDSecureInfo|DeleteCreateNANDSecureInfo]]
 
| [[CfgI:DeleteCreateNANDSecureInfo|DeleteCreateNANDSecureInfo]]
 
|-
 
|-
 
| 0x08130000
 
| 0x08130000
 +
|
 
| [[CfgI:VerifySigSecureInfo|VerifySigSecureInfo]]
 
| [[CfgI:VerifySigSecureInfo|VerifySigSecureInfo]]
 
|-
 
|-
 
| 0x08140042
 
| 0x08140042
 +
|
 
| [[CfgI:SecureInfoGetData|SecureInfoGetData]]
 
| [[CfgI:SecureInfoGetData|SecureInfoGetData]]
 
|-
 
|-
 
| 0x08150042
 
| 0x08150042
 +
|
 
| [[CfgI:SecureInfoGetSignature|SecureInfoGetSignature]]
 
| [[CfgI:SecureInfoGetSignature|SecureInfoGetSignature]]
 
|-
 
|-
 
| 0x08160000
 
| 0x08160000
 +
|
 
| [[Cfg:SecureInfoGetRegion|SecureInfoGetRegion]]
 
| [[Cfg:SecureInfoGetRegion|SecureInfoGetRegion]]
 
|-
 
|-
 
| 0x08170000
 
| 0x08170000
 +
|
 
| [[CfgS:SecureInfoGetByte101|SecureInfoGetByte101]]
 
| [[CfgS:SecureInfoGetByte101|SecureInfoGetByte101]]
 
|-
 
|-
 
| 0x08180042
 
| 0x08180042
 +
|
 
| [[CfgS:SecureInfoGetSerialNo|SecureInfoGetSerialNo]]
 
| [[CfgS:SecureInfoGetSerialNo|SecureInfoGetSerialNo]]
 +
|-
 +
| 0x0819....
 +
| ?
 +
| ?
 +
|-
 +
| 0x081A....
 +
| ?
 +
| ?
 +
|-
 +
| 0x081B....
 +
| ?
 +
| ?
 +
|-
 +
| 0x081C....
 +
| ?
 +
| ?
 +
|-
 +
| 0x081D....
 +
| ?
 +
| ?
 +
|-
 +
| 0x081E....
 +
| ?
 +
| ?
 +
|-
 +
| 0x081F....
 +
| ?
 +
| ?
 +
|-
 +
| 0x0820....
 +
| ?
 +
| ?
 
|}
 
|}
  −
= Config service "cfg:u" =
  −
This only handles the commands listed under the above "Config services", no additional commands.
      
= Config NVRAM service "cfg:nor" =
 
= Config NVRAM service "cfg:nor" =
Line 239: Line 339:  
| 0x00020000
 
| 0x00020000
 
| [[CfgNor:Shutdown|Shutdown]]
 
| [[CfgNor:Shutdown|Shutdown]]
 +
|-
 +
| 0x00030040
 +
| (u8 flag) Writes the input flag to state. Uses SPI service command [[SPI_Services|EnableSpiBus]].
 +
|-
 +
| 0x00040000
 +
| Writes the u8 from the state written by 0x00030040 to cmdreply[2].
 
|-
 
|-
 
| 0x00050082
 
| 0x00050082
Line 245: Line 351:  
| 0x00060082
 
| 0x00060082
 
| [[CfgNor:WriteData|WriteData]]
 
| [[CfgNor:WriteData|WriteData]]
 +
|-
 +
| 0x00070000
 +
| This just uses the WREN command.
 +
|-
 +
| 0x00080000
 +
| This just uses the WRDI command.
 +
|-
 +
| 0x00090000
 +
| [[CfgNor:ReadIdentification|ReadIdentification]]
 +
|-
 +
| 0x000A0000
 +
| This waits for the WIP bit in the status register to clear(wait for writing to finish).
 +
|-
 +
| 0x000B0000
 +
| This waits for the WEL bit in the status register to become set(write enabled).
 +
|-
 +
| 0x000C0000
 +
| This writes the value of the WIP bit in the status register to u8 cmdreply[2].
 +
|-
 +
| 0x000D0000
 +
| This writes the value of the WIP bit in the status register to u8 cmdreply[2].
 +
|-
 +
| 0x000E0000
 +
| [[CfgNor:ReadStatusRegister|ReadStatusRegister]]
 +
|-
 +
| 0x000F0082
 +
| [[CfgNor:ReadDataOther|ReadDataOther]]
 +
|-
 +
| 0x00100082
 +
| [[CfgNor:WriteDataOther|WriteDataOther]]
 +
|-
 +
| 0x00110040
 +
| (u32 offset) Uses command WREN then waits for WEL to become enabled. Sends command 0xDB to SPI followed by the specified flash offset.
 +
|-
 +
| 0x00120040
 +
| (u32 offset) Identical to 0x00110040 except this uses SPI-command 0xD8 instead("block erase").
 +
|-
 +
| 0x00130000
 +
| This uses SPI command 0xB9 for "Deep power down".
 +
|-
 +
| 0x00140000
 +
| This uses SPI command 0xAB for "Release from deep power down".
 
|}
 
|}
 
This is an interface for the "SPI::NOR" service, for accessing the Wifi NVRAM/SPI Flash.
 
This is an interface for the "SPI::NOR" service, for accessing the Wifi NVRAM/SPI Flash.
17

edits

Navigation menu