Settings services: Difference between revisions

No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 368: Line 368:
| 2 || GetNetworkSettings
| 2 || GetNetworkSettings
|-
|-
| 3 || [[#GetFirmwareVersion]]
| 3 || [S1] [[#GetFirmwareVersion]]
|-
|-
| 4 || [3.0.0+] GetFirmwareVersion2
| 4 || [3.0.0+] GetFirmwareVersion2
|-
|-
| 5 || [5.0.0+] GetFirmwareVersionDigest
| 5 || [S1] [5.0.0+] GetFirmwareVersionDigest
|-
|-
| 7 || GetLockScreenFlag
| 7 || GetLockScreenFlag
Line 382: Line 382:
| 10 || SetBacklightSettings
| 10 || SetBacklightSettings
|-
|-
| 11 || SetBluetoothDevicesSettings
| 11 || [S1] SetBluetoothDevicesSettings
|-
|-
| 12 || GetBluetoothDevicesSettings
| 12 || [S1] GetBluetoothDevicesSettings
|-
|-
| 13 || GetExternalSteadyClockSourceId
| 13 || GetExternalSteadyClockSourceId
Line 410: Line 410:
| 24 || [[#SetColorSetId]]
| 24 || [[#SetColorSetId]]
|-
|-
| 25 || GetConsoleInformationUploadFlag
| 25 || [S1] GetConsoleInformationUploadFlag
|-
|-
| 26 || SetConsoleInformationUploadFlag
| 26 || [S1] SetConsoleInformationUploadFlag
|-
|-
| 27 || GetAutomaticApplicationDownloadFlag
| 27 || [S1] GetAutomaticApplicationDownloadFlag
|-
|-
| 28 || SetAutomaticApplicationDownloadFlag
| 28 || [S1] SetAutomaticApplicationDownloadFlag
|-
|-
| 29 || [[#GetNotificationSettings]]
| 29 || [[#GetNotificationSettings]]
Line 454: Line 454:
| 48 || SetQuestFlag
| 48 || SetQuestFlag
|-
|-
| 49 || [[#GetDataDeletionSettings]]
| 49 || [S1] [[#GetDataDeletionSettings]]
|-
|-
| 50 || [[#SetDataDeletionSettings]]
| 50 || [S1] [[#SetDataDeletionSettings]]
|-
|-
| 51 || GetInitialSystemAppletProgramId
| 51 || [S1] GetInitialSystemAppletProgramId
|-
|-
| 52 || GetOverlayDispProgramId
| 52 || [S1] GetOverlayDispProgramId
|-
|-
| 53 || GetDeviceTimeZoneLocationName
| 53 || GetDeviceTimeZoneLocationName
Line 466: Line 466:
| 54 || SetDeviceTimeZoneLocationName
| 54 || SetDeviceTimeZoneLocationName
|-
|-
| 55 || [[#GetWirelessCertificationFileSize]]
| 55 || [S1] [[#GetWirelessCertificationFileSize]]
|-
|-
| 56 || [[#GetWirelessCertificationFile]]
| 56 || [S1] [[#GetWirelessCertificationFile]]
|-
|-
| 57 || [[#SetRegionCode]]
| 57 || [[#SetRegionCode]]
Line 486: Line 486:
| 64 || [[#SetPrimaryAlbumStorage]]
| 64 || [[#SetPrimaryAlbumStorage]]
|-
|-
| 65 || GetUsb30EnableFlag
| 65 || [S1] GetUsb30EnableFlag
|-
|-
| 66 || SetUsb30EnableFlag
| 66 || [S1] SetUsb30EnableFlag
|-
|-
| 67 || [[#GetBatteryLot]]
| 67 || [[#GetBatteryLot]]
Line 506: Line 506:
| 74 || SetWirelessLanEnableFlag
| 74 || SetWirelessLanEnableFlag
|-
|-
| 75 || [[#GetInitialLaunchSettings]]
| 75 || [S1] [[#GetInitialLaunchSettings]]
|-
|-
| 76 || [[#SetInitialLaunchSettings]]
| 76 || [S1] [[#SetInitialLaunchSettings]]
|-
|-
| 77 || [[#GetDeviceNickName]]
| 77 || [[#GetDeviceNickName]]
Line 516: Line 516:
| 79 || [[#GetProductModel]]
| 79 || [[#GetProductModel]]
|-
|-
| 80 || GetLdnChannel
| 80 || [S1] GetLdnChannel
|-
|-
| 81 || SetLdnChannel
| 81 || [S1] SetLdnChannel
|-
|-
| 82 || AcquireTelemetryDirtyFlagEventHandle
| 82 || AcquireTelemetryDirtyFlagEventHandle
Line 550: Line 550:
| 96 || [2.0.0+] SetAutoUpdateEnableFlag
| 96 || [2.0.0+] SetAutoUpdateEnableFlag
|-
|-
| 97 || [2.0.0+] GetNxControllerSettings
| 97 || [S1] [2.0.0+] GetNxControllerSettings
|-
|-
| 98 || [2.0.0+] SetNxControllerSettings
| 98 || [S1] [2.0.0+] SetNxControllerSettings
|-
|-
| 99 || [2.0.0+] GetBatteryPercentageFlag
| 99 || [2.0.0+] GetBatteryPercentageFlag
Line 558: Line 558:
| 100 || [2.0.0+] SetBatteryPercentageFlag
| 100 || [2.0.0+] SetBatteryPercentageFlag
|-
|-
| 101 || [2.0.0+] GetExternalRtcResetFlag
| 101 || [S1] [2.0.0+] GetExternalRtcResetFlag
|-
|-
| 102 || [2.0.0+] SetExternalRtcResetFlag
| 102 || [S1] [2.0.0+] SetExternalRtcResetFlag
|-
|-
| 103 || [3.0.0+] GetUsbFullKeyEnableFlag
| 103 || [3.0.0+] GetUsbFullKeyEnableFlag
Line 578: Line 578:
| 110 || [3.0.0+] SetHeadphoneVolumeWarningCount
| 110 || [3.0.0+] SetHeadphoneVolumeWarningCount
|-
|-
| 111 || [3.0.0+] GetBluetoothAfhEnableFlag
| 111 || [S1] [3.0.0+] GetBluetoothAfhEnableFlag
|-
|-
| 112 || [3.0.0+] SetBluetoothAfhEnableFlag
| 112 || [S1] [3.0.0+] SetBluetoothAfhEnableFlag
|-
|-
| 113 || [3.0.0+] GetBluetoothBoostEnableFlag
| 113 || [S1] [3.0.0+] GetBluetoothBoostEnableFlag
|-
|-
| 114 || [3.0.0+] SetBluetoothBoostEnableFlag
| 114 || [S1] [3.0.0+] SetBluetoothBoostEnableFlag
|-
|-
| 115 || [3.0.0+] GetInRepairProcessEnableFlag
| 115 || [3.0.0+] GetInRepairProcessEnableFlag
Line 590: Line 590:
| 116 || [3.0.0+] SetInRepairProcessEnableFlag
| 116 || [3.0.0+] SetInRepairProcessEnableFlag
|-
|-
| 117 || [3.0.0+] GetHeadphoneVolumeUpdateFlag
| 117 || [S1] [3.0.0+] GetHeadphoneVolumeUpdateFlag
|-
|-
| 118 || [3.0.0+] SetHeadphoneVolumeUpdateFlag
| 118 || [S1] [3.0.0+] SetHeadphoneVolumeUpdateFlag
|-
|-
| 119 || [3.0.0-14.1.2] NeedsToUpdateHeadphoneVolume
| 119 || [3.0.0-14.1.2] NeedsToUpdateHeadphoneVolume
Line 612: Line 612:
| 127 || [4.0.0+] [[#SetAppletLaunchFlags]]
| 127 || [4.0.0+] [[#SetAppletLaunchFlags]]
|-
|-
| 128 || [4.0.0+] GetConsoleSixAxisSensorAccelerationBias
| 128 || [S1] [4.0.0+] GetConsoleSixAxisSensorAccelerationBias
|-
|-
| 129 || [4.0.0+] SetConsoleSixAxisSensorAccelerationBias
| 129 || [S1] [4.0.0+] SetConsoleSixAxisSensorAccelerationBias
|-
|-
| 130 || [4.0.0+] GetConsoleSixAxisSensorAngularVelocityBias
| 130 || [S1] [4.0.0+] GetConsoleSixAxisSensorAngularVelocityBias
|-
|-
| 131 || [4.0.0+] SetConsoleSixAxisSensorAngularVelocityBias
| 131 || [S1] [4.0.0+] SetConsoleSixAxisSensorAngularVelocityBias
|-
|-
| 132 || [4.0.0+] GetConsoleSixAxisSensorAccelerationGain
| 132 || [S1] [4.0.0+] GetConsoleSixAxisSensorAccelerationGain
|-
|-
| 133 || [4.0.0+] SetConsoleSixAxisSensorAccelerationGain
| 133 || [S1] [4.0.0+] SetConsoleSixAxisSensorAccelerationGain
|-
|-
| 134 || [4.0.0+] GetConsoleSixAxisSensorAngularVelocityGain
| 134 || [S1] [4.0.0+] GetConsoleSixAxisSensorAngularVelocityGain
|-
|-
| 135 || [4.0.0+] SetConsoleSixAxisSensorAngularVelocityGain
| 135 || [S1] [4.0.0+] SetConsoleSixAxisSensorAngularVelocityGain
|-
|-
| 136 || [4.0.0+] [[#GetKeyboardLayout]]
| 136 || [4.0.0+] [[#GetKeyboardLayout]]
Line 642: Line 642:
| 142 || [5.0.0+] SetRequiresRunRepairTimeReviser
| 142 || [5.0.0+] SetRequiresRunRepairTimeReviser
|-
|-
| 143 || [5.0.0+] SetBlePairingSettings
| 143 || [S1] [5.0.0+] SetBlePairingSettings
|-
|-
| 144 || [5.0.0+] GetBlePairingSettings
| 144 || [S1] [5.0.0+] GetBlePairingSettings
|-
|-
| 145 || [5.0.0+] GetConsoleSixAxisSensorAngularVelocityTimeBias
| 145 || [S1] [5.0.0+] GetConsoleSixAxisSensorAngularVelocityTimeBias
|-
|-
| 146 || [5.0.0+] SetConsoleSixAxisSensorAngularVelocityTimeBias
| 146 || [S1] [5.0.0+] SetConsoleSixAxisSensorAngularVelocityTimeBias
|-
|-
| 147 || [5.0.0+] GetConsoleSixAxisSensorAngularAcceleration
| 147 || [S1] [5.0.0+] GetConsoleSixAxisSensorAngularAcceleration
|-
|-
| 148 || [5.0.0+] SetConsoleSixAxisSensorAngularAcceleration
| 148 || [S1] [5.0.0+] SetConsoleSixAxisSensorAngularAcceleration
|-
|-
| 149 || [5.0.0+] [[#GetRebootlessSystemUpdateVersion]]
| 149 || [5.0.0+] [[#GetRebootlessSystemUpdateVersion]]
Line 664: Line 664:
| 153 || [6.0.0+] SetUserSystemClockAutomaticCorrectionUpdatedTime
| 153 || [6.0.0+] SetUserSystemClockAutomaticCorrectionUpdatedTime
|-
|-
| 154 || [6.0.0+] GetAccountOnlineStorageSettings
| 154 || [S1] [6.0.0+] GetAccountOnlineStorageSettings
|-
|-
| 155 || [6.0.0+] SetAccountOnlineStorageSettings
| 155 || [S1] [6.0.0+] SetAccountOnlineStorageSettings
|-
|-
| 156 || [6.0.0+] GetPctlReadyFlag
| 156 || [S1] [6.0.0+] GetPctlReadyFlag
|-
|-
| 157 || [6.0.0+] SetPctlReadyFlag
| 157 || [S1] [6.0.0+] SetPctlReadyFlag
|-
|-
| 158 || [8.1.1+] GetAnalogStickUserCalibrationL
| 158 || [S1] [8.1.1+] GetAnalogStickUserCalibrationL
|-
|-
| 159 || [8.1.1+] SetAnalogStickUserCalibrationL
| 159 || [S1] [8.1.1+] SetAnalogStickUserCalibrationL
|-
|-
| 160 || [8.1.1+] GetAnalogStickUserCalibrationR
| 160 || [S1] [8.1.1+] GetAnalogStickUserCalibrationR
|-
|-
| 161 || [8.1.1+] SetAnalogStickUserCalibrationR
| 161 || [S1] [8.1.1+] SetAnalogStickUserCalibrationR
|-
|-
| 162 || [6.0.0+] GetPtmBatteryVersion
| 162 || [6.0.0+] GetPtmBatteryVersion
Line 692: Line 692:
| 167 || [6.0.0+] SetUsb30DeviceEnableFlag
| 167 || [6.0.0+] SetUsb30DeviceEnableFlag
|-
|-
| 168 || [7.0.0+] GetThemeId
| 168 || [S1] [7.0.0+] GetThemeId
|-
|-
| 169 || [7.0.0+] SetThemeId
| 169 || [S1] [7.0.0+] SetThemeId
|-
|-
| 170 || [7.0.0+] [[#GetChineseTraditionalInputMethod]]
| 170 || [7.0.0+] [[#GetChineseTraditionalInputMethod]]
Line 706: Line 706:
| 174 || [8.1.1+] [[#GetHomeMenuScheme]]
| 174 || [8.1.1+] [[#GetHomeMenuScheme]]
|-
|-
| 175 || [7.0.0+] GetThemeSettings
| 175 || [S1] [7.0.0+] GetThemeSettings
|-
|-
| 176 || [7.0.0+] SetThemeSettings
| 176 || [S1] [7.0.0+] SetThemeSettings
|-
|-
| 177 || [7.0.0+] GetThemeKey
| 177 || [S1] [7.0.0+] GetThemeKey
|-
|-
| 178 || [7.0.0+] SetThemeKey
| 178 || [S1] [7.0.0+] SetThemeKey
|-
|-
| 179 || [8.0.0+] GetZoomFlag
| 179 || [8.0.0+] GetZoomFlag
Line 718: Line 718:
| 180 || [8.0.0+] SetZoomFlag
| 180 || [8.0.0+] SetZoomFlag
|-
|-
| 181 || [8.0.0+] [[#GetT]]
| 181 || [S1] [8.0.0+] [[#GetT]]
|-
|-
| 182 || [8.0.0+] [[#SetT]]
| 182 || [S1] [8.0.0+] [[#SetT]]
|-
|-
| 183 || [9.0.0+] [[#GetPlatformRegion]]
| 183 || [9.0.0+] [[#GetPlatformRegion]]
Line 730: Line 730:
| 186 || [9.0.0+] [[#GetMemoryUsageRateFlag]]
| 186 || [9.0.0+] [[#GetMemoryUsageRateFlag]]
|-
|-
| 187 || [9.0.0+] [[#GetTouchScreenMode]]
| 187 || [S1] [9.0.0+] [[#GetTouchScreenMode]]
|-
|-
| 188 || [9.0.0+] [[#SetTouchScreenMode]]
| 188 || [S1] [9.0.0+] [[#SetTouchScreenMode]]
|-
|-
| 189 || [10.0.0+] [[#GetButtonConfigSettingsFull]]
| 189 || [S1] [10.0.0+] [[#GetButtonConfigSettingsFull]]
|-
|-
| 190 || [10.0.0+] [[#SetButtonConfigSettingsFull]]
| 190 || [S1] [10.0.0+] [[#SetButtonConfigSettingsFull]]
|-
|-
| 191 || [10.0.0+] [[#GetButtonConfigSettingsEmbedded]]
| 191 || [S1] [10.0.0+] [[#GetButtonConfigSettingsEmbedded]]
|-
|-
| 192 || [10.0.0+] [[#SetButtonConfigSettingsEmbedded]]
| 192 || [S1] [10.0.0+] [[#SetButtonConfigSettingsEmbedded]]
|-
|-
| 193 || [10.0.0+] [[#GetButtonConfigSettingsLeft]]
| 193 || [S1] [10.0.0+] [[#GetButtonConfigSettingsLeft]]
|-
|-
| 194 || [10.0.0+] [[#SetButtonConfigSettingsLeft]]
| 194 || [S1] [10.0.0+] [[#SetButtonConfigSettingsLeft]]
|-
|-
| 195 || [10.0.0+] [[#GetButtonConfigSettingsRight]]
| 195 || [S1] [10.0.0+] [[#GetButtonConfigSettingsRight]]
|-
|-
| 196 || [10.0.0+] [[#SetButtonConfigSettingsRight]]
| 196 || [S1] [10.0.0+] [[#SetButtonConfigSettingsRight]]
|-
|-
| 197 || [10.0.0+] [[#GetButtonConfigRegisteredSettingsEmbedded]]
| 197 || [S1] [10.0.0+] [[#GetButtonConfigRegisteredSettingsEmbedded]]
|-
|-
| 198 || [10.0.0+] [[#SetButtonConfigRegisteredSettingsEmbedded]]
| 198 || [S1] [10.0.0+] [[#SetButtonConfigRegisteredSettingsEmbedded]]
|-
|-
| 199 || [10.0.0+] [[#GetButtonConfigRegisteredSettings]]
| 199 || [S1] [10.0.0+] [[#GetButtonConfigRegisteredSettings]]
|-
|-
| 200 || [10.0.0+] [[#SetButtonConfigRegisteredSettings]]
| 200 || [S1] [10.0.0+] [[#SetButtonConfigRegisteredSettings]]
|-
|-
| 201 || [10.1.0+] [[#GetFieldTestingFlag]]
| 201 || [10.1.0+] [[#GetFieldTestingFlag]]
Line 766: Line 766:
| 204 || [11.0.0+] SetPanelCrcMode
| 204 || [11.0.0+] SetPanelCrcMode
|-
|-
| 205 || [13.0.0+] GetNxControllerSettingsEx
| 205 || [S1] [13.0.0+] GetNxControllerSettingsEx
|-
|-
| 206 || [13.0.0+] SetNxControllerSettingsEx
| 206 || [S1] [13.0.0+] SetNxControllerSettingsEx
|-
|-
| 207 || [14.0.0+] GetHearingProtectionSafeguardFlag
| 207 || [S1] [14.0.0+] GetHearingProtectionSafeguardFlag
|-
|-
| 208 || [14.0.0+] SetHearingProtectionSafeguardFlag
| 208 || [S1] [14.0.0+] SetHearingProtectionSafeguardFlag
|-
|-
| 209 || [14.0.0+] GetHearingProtectionSafeguardRemainingTime
| 209 || [S1] [14.0.0+] GetHearingProtectionSafeguardRemainingTime
|-
|-
| 210 || [14.0.0+] SetHearingProtectionSafeguardRemainingTime
| 210 || [S1] [14.0.0+] SetHearingProtectionSafeguardRemainingTime
|-
| 211 || [S2]
|-
| 212 || [S2]
|-
| 213 || [S2]
|-
| 214 || [S2]
|-
| 215 || [S2]
|-
| 216 || [S2]
|-
| 217 || [S2]
|-
| 218 || [S2]
|-
| 219 || [S2]
|-
| 220 || [S2]
|-
|-
| 221 || [17.0.0+] GetForceMonauralOutputFlag
| 221 || [17.0.0+] GetForceMonauralOutputFlag
Line 782: Line 802:
| 222 || [17.0.0+] SetForceMonauralOutputFlag
| 222 || [17.0.0+] SetForceMonauralOutputFlag
|-
|-
| 251 || [18.0.0+] GetAccountIdentificationSettings
| 223 || [S2]
|-
| 224 || [S2]
|-
| 225 || [S2]
|-
| 226 || [S2]
|-
| 227 || [S2]
|-
|-
| 252 || [18.0.0+] SetAccountIdentificationSettings
| 228 || [S2]
|-
|-
| 263 || [20.0.0+] AcquireVphymDirtyFlagEventHandle
| 229 || [S2]
|-
|-
| 264 || [20.0.0+] GetVphymDirtyFlags
| 230 || [S2]
|-
|-
| 282 || [20.0.0+] ConvertToProductModel
| 235 || [S2]
|-
|-
| 283 || [20.0.0+] ConvertToProductModelName
| 236 || [S2]
|-
|-
| 289 || [20.0.0+] GetDefaultAccountIdentificationFlagSet
| 237 || [S2]
|-
|-
| 300 || [20.0.0+] AcquirePushNotificationDirtyFlagEventHandle
| 238 || [S2]
|-
|-
| 301 || [20.0.0+] GetPushNotificationDirtyFlags
| 239 || [S2]
|-
|-
| 306 || [20.0.0+] GetPinCodeReregistrationGuideAccounts
| 240 || [S2]
|-
|-
| 307 || [20.0.0+] SetPinCodeReregistrationGuideAccounts
| 241 || [S2]
|}
|-
 
| 242 || [S2]
Official user-processes gets a new service session handle each time a set:sys cmd is used, with the session being closed afterwards.
|-
 
| 243 || [S2]
== SetLanguageCode ==
|-
Takes an input [[#LanguageCode]], no output.
| 244 || [S2]
 
|-
== GetFirmwareVersion ==
| 245 || [S2]
Takes a type-0x1A output buffer. User-processes use hard-coded size 0x100.
|-
 
| 246 || [S2]
If needed, reads the content of the [[System_Version_Title]] "/file" into state. This is only done once.
|-
 
| 247 || [S2]
Then the above 0x100-byte data is copied to the output buffer.
|-
 
| 248 || [S2]
== GetAccountSettings ==
|-
No input, returns an output [[#AccountSettings]].
| 249 || [S2]
 
|-
== SetAccountSettings ==
| 250 || [S2]
Takes an input [[#AccountSettings]], no output.
|-
| 251 || [18.0.0+] GetAccountIdentificationSettings
|-
| 252 || [18.0.0+] SetAccountIdentificationSettings
|-
| 253 || [S2]
|-
| 254 || [S2]
|-
| 255 || [S2]
|-
| 256 || [S2]
|-
| 257 || [S2]
|-
| 258 || [S2]
|-
| 259 || [S2]
|-
| 260 || [S2]
|-
| 261 || [S2]
|-
| 262 || [S2]
|-
| 263 || [20.0.0+] AcquireVphymDirtyFlagEventHandle
|-
| 264 || [20.0.0+] GetVphymDirtyFlags
|-
| 265 || [S2]
|-
| 266 || [S2]
|-
| 267 || [S2]
|-
| 268 || [S2]
|-
| 269 || [S2]
|-
| 270 || [S2]
|-
| 271 || [S2]
|-
| 272 || [S2]
|-
| 273 || [S2]
|-
| 274 || [S2]
|-
| 275 || [S2]
|-
| 276 || [S2]
|-
| 277 || [S2]
|-
| 278 || [S2]
|-
| 279 || [S2]
|-
| 280 || [S2]
|-
| 281 || [S2]
|-
| 282 || [20.0.0+] ConvertToProductModel
|-
| 283 || [20.0.0+] ConvertToProductModelName
|-
| 284 || [S2]
|-
| 285 || [S2]
|-
| 286 || [S2]
|-
| 287 || [S2]
|-
| 288 || [S2]
|-
| 289 || [20.0.0+] GetDefaultAccountIdentificationFlagSet
|-
| 290 || [S2]
|-
| 291 || [S2]
|-
| 292 || [S2]
|-
| 293 || [S2]
|-
| 294 || [S2]
|-
| 295 || [S2]
|-
| 296 || [S2]
|-
| 297 || [S2]
|-
| 298 || [S2]
|-
| 299 || [S2]
|-
| 300 || [20.0.0+] AcquirePushNotificationDirtyFlagEventHandle
|-
| 301 || [20.0.0+] GetPushNotificationDirtyFlags
|-
| 302 || [S2]
|-
| 303 || [S2]
|-
| 304 || [S2]
|-
| 305 || [S2]
|-
| 306 || [20.0.0+] GetPinCodeReregistrationGuideAccounts
|-
| 307 || [20.0.0+] SetPinCodeReregistrationGuideAccounts
|-
| 308 || [S2]
|-
| 309 || [S2]
|-
| 310 || [S2]
|-
| 311 || [S2]
|-
| 312 || [S2]
|}
 
Official user-processes gets a new service session handle each time a set:sys cmd is used, with the session being closed afterwards.
 
== SetLanguageCode ==
Takes an input [[#LanguageCode]], no output.
 
== GetFirmwareVersion ==
Takes a type-0x1A output buffer. User-processes use hard-coded size 0x100.
 
This was removed with S2.
 
If needed, reads the content of the [[System_Version_Title]] "/file" into state. This is only done once.
 
Then the above 0x100-byte data is copied to the output buffer.
 
== GetAccountSettings ==
No input, returns an output [[#AccountSettings]].
 
== SetAccountSettings ==
Takes an input [[#AccountSettings]], no output.
 
== GetEulaVersions ==
Takes a type-0x6 output buffer containing an array of [[#EulaVersion]], returns an output s32 total_out.
 
== SetEulaVersions ==
Takes a type-0x5 input buffer containing an array of [[#EulaVersion]], no output.
 
== GetColorSetId ==
No input, returns an output s32.
 
This is the current Theme set by System Settings.
 
* 0: "Basic White"
* 1: "Basic Black"
 
== SetColorSetId ==
Takes an input s32, no output.
 
== GetNotificationSettings ==
No input, returns an output [[#NotificationSettings]].
 
== SetNotificationSettings ==
Takes an input [[#NotificationSettings]], no output.
 
== GetAccountNotificationSettings ==
Takes a type-0x6 output buffer containing an array of [[#AccountNotificationSettings]], returns an output s32 total_out.
 
== SetAccountNotificationSettings ==
Takes a type-0x5 input buffer containing an array of [[#AccountNotificationSettings]], no output.
 
== GetSettingsItemValue ==
Takes two type-0x19 input buffers and a type-0x6 output buffer. Returns an output u64 for the actual size written to the outbuf.
 
The outbuf_size is compared with the config_size. When config_size is larger than outbuf_size, outbuf_size is used for the memcpy, otherwise config_size is used. Afterwards the size used for the memcpy is written to output(see above).
 
If loading from main config fails, it will also attempt to load config from various state if the input strings match hard-coded strings.
 
== GetTvSettings ==
No input, returns an output [[#TvSettings]].
 
== SetTvSettings ==
Takes an input [[#TvSettings]], no output.


== GetEulaVersions ==
== GetDebugModeFlag ==
Takes a type-0x6 output buffer containing an array of [[#EulaVersion]], returns an output s32 total_out.
Returns an output u8.


== SetEulaVersions ==
Loads the 1-byte config for <"settings_debug", "is_debug_mode_enabled">. If that fails, value 0x1 is written to output. This uses the same func as ReadSetting internally.
Takes a type-0x5 input buffer containing an array of [[#EulaVersion]], no output.


== GetColorSetId ==
Returned retval is always 0.
No input, returns an output s32.


This is the current Theme set by System Settings.
== GetPrimaryAlbumStorage ==
No input, returns an output s32 [[#PrimaryAlbumStorage]].


* 0: "Basic White"
== SetPrimaryAlbumStorage ==
* 1: "Basic Black"
Takes an input s32 [[#PrimaryAlbumStorage]], no output.


== SetColorSetId ==
== GetBatteryLot ==
Takes an input s32, no output.
No input, returns an output [[#BatteryLot]].


== GetNotificationSettings ==
== GetSerialNumber ==
No input, returns an output [[#NotificationSettings]].
Returns the 0x18-byte SerialNumber string.


== SetNotificationSettings ==
== GetSleepSettings ==
Takes an input [[#NotificationSettings]], no output.
No input, returns an output [[#SleepSettings]].


== GetAccountNotificationSettings ==
== SetSleepSettings ==
Takes a type-0x6 output buffer containing an array of [[#AccountNotificationSettings]], returns an output s32 total_out.
Takes an input [[#SleepSettings]], no output.


== SetAccountNotificationSettings ==
== GetInitialLaunchSettings ==
Takes a type-0x5 input buffer containing an array of [[#AccountNotificationSettings]], no output.
No input, returns an output [[#InitialLaunchSettings]].


== GetSettingsItemValue ==
== SetInitialLaunchSettings ==
Takes two type-0x19 input buffers and a type-0x6 output buffer. Returns an output u64 for the actual size written to the outbuf.
Takes an input [[#InitialLaunchSettings]], no output.


The outbuf_size is compared with the config_size. When config_size is larger than outbuf_size, outbuf_size is used for the memcpy, otherwise config_size is used. Afterwards the size used for the memcpy is written to output(see above).
== GetDeviceNickName ==
Takes a type-0x16 output buffer containing a [[#DeviceNickName]].


If loading from main config fails, it will also attempt to load config from various state if the input strings match hard-coded strings.
With [10.1.0+] sdknso now uses the set cmd instead of the setsys cmd.


== GetTvSettings ==
== SetDeviceNickName ==
No input, returns an output [[#TvSettings]].
Takes a type-0x15 input buffer containing a [[#DeviceNickName]].


== SetTvSettings ==
== GetProductModel ==
Takes an input [[#TvSettings]], no output.
No input, returns an output s32.


== GetDebugModeFlag ==
== GetMiiAuthorId ==
Returns an output u8.
No input, returns an output "nn::util::Uuid".


Loads the 1-byte config for <"settings_debug", "is_debug_mode_enabled">. If that fails, value 0x1 is written to output. This uses the same func as ReadSetting internally.
== GetServiceDiscoveryControlSettings ==
Returns an u32 [[#ServiceDiscoveryControlSettings|ServiceDiscoveryControlSettings]].


Returned retval is always 0.
== GetErrorReportSharePermission ==
No input, returns an output s32 [[#ErrorReportSharePermission]].


== GetPrimaryAlbumStorage ==
== SetErrorReportSharePermission ==
No input, returns an output s32 [[#PrimaryAlbumStorage]].
Takes an input s32 [[#ErrorReportSharePermission]], no output.


== SetPrimaryAlbumStorage ==
== GetAppletLaunchFlags ==
Takes an input s32 [[#PrimaryAlbumStorage]], no output.
No input, returns an u32 bitmask [[#AppletLaunchFlag]].


== GetBatteryLot ==
== SetAppletLaunchFlags ==
No input, returns an output [[#BatteryLot]].
Takes an input u32 bitmask [[#AppletLaunchFlag]], no output.


== GetSerialNumber ==
== GetKeyboardLayout ==
Returns the 0x18-byte SerialNumber string.
No input, returns an output s32 [[#KeyboardLayout]].


== GetSleepSettings ==
== SetKeyboardLayout ==
No input, returns an output [[#SleepSettings]].
Takes an input s32 [[#KeyboardLayout]], no output.


== SetSleepSettings ==
== GetAllowedSslHosts ==
Takes an input [[#SleepSettings]], no output.
Takes a type-0x6 output buffer. Returns an output s32 entry count.


== GetInitialLaunchSettings ==
== GetRebootlessSystemUpdateVersion ==
No input, returns an output [[#InitialLaunchSettings]].
No input, returns an output [[#RebootlessSystemUpdateVersion]].


== SetInitialLaunchSettings ==
== GetQuestFlag ==
Takes an input [[#InitialLaunchSettings]], no output.
Gets a flag determining whether the console is a kiosk unit (codenamed "Quest"). Used by qlaunch to determine whether to launch Retail Interactive Display Menu.


== GetDeviceNickName ==
== GetDataDeletionSettings ==
Takes a type-0x16 output buffer containing a [[#DeviceNickName]].
No input, returns an output [[#DataDeletionSettings]].


With [10.1.0+] sdknso now uses the set cmd instead of the setsys cmd.
== SetDataDeletionSettings ==
Takes an input [[#DataDeletionSettings]], no output.


== SetDeviceNickName ==
== GetWirelessCertificationFileSize ==
Takes a type-0x15 input buffer containing a [[#DeviceNickName]].
No input, returns an output u64 size.


== GetProductModel ==
== GetWirelessCertificationFile ==
No input, returns an output s32.
Takes a type-0x6 output buffer, returns an output u64 size.


== GetMiiAuthorId ==
This gets the [[Flash_Filesystem#PRODINFOF|WirelessCertificationFile]].
No input, returns an output "nn::util::Uuid".


== GetServiceDiscoveryControlSettings ==
== SetRegionCode ==
Returns an u32 [[#ServiceDiscoveryControlSettings|ServiceDiscoveryControlSettings]].
Takes an input s32 [[#RegionCode_2|RegionCode]], no output.


== GetErrorReportSharePermission ==
== GetChineseTraditionalInputMethod ==
No input, returns an output s32 [[#ErrorReportSharePermission]].
No input, returns an output s32 [[#ChineseTraditionalInputMethod]].


== SetErrorReportSharePermission ==
== SetChineseTraditionalInputMethod ==
Takes an input s32 [[#ErrorReportSharePermission]], no output.
Takes an input s32 [[#ChineseTraditionalInputMethod]], no output.


== GetAppletLaunchFlags ==
== GetHomeMenuScheme ==
No input, returns an u32 bitmask [[#AppletLaunchFlag]].
No input. Returns an output [[#HomeMenuScheme]].


== SetAppletLaunchFlags ==
The colors are loaded from [[Calibration]], with the set of fields to use selected by [[Calibration#ColorVariation|ColorVariation]].
Takes an input u32 bitmask [[#AppletLaunchFlag]], no output.


== GetKeyboardLayout ==
== GetT ==
No input, returns an output s32 [[#KeyboardLayout]].
No input, returns an output u8 bool '''IsT'''.


== SetKeyboardLayout ==
[9.0.0+] This is a wrapper for [[#GetPlatformRegion]]: <code>IsT = (PlatformRegion == 2)</code>.
Takes an input s32 [[#KeyboardLayout]], no output.
 
== GetAllowedSslHosts ==
Takes a type-0x6 output buffer, returns an output s32 entry count. This buffer contains an array of 0x100-byte "nn::settings::system::AllowedSslHost" entries.
 
== GetRebootlessSystemUpdateVersion ==
No input, returns an output [[#RebootlessSystemUpdateVersion]].
 
== GetQuestFlag ==
Gets a flag determining whether the console is a kiosk unit (codenamed "Quest"). Used by qlaunch to determine whether to launch Retail Interactive Display Menu.
 
== GetDataDeletionSettings ==
No input, returns an output [[#DataDeletionSettings]].
 
== SetDataDeletionSettings ==
Takes an input [[#DataDeletionSettings]], no output.
 
== GetWirelessCertificationFileSize ==
No input, returns an output u64 size.
 
== GetWirelessCertificationFile ==
Takes a type-0x6 output buffer, returns an output u64 size.
 
This gets the [[Flash_Filesystem#PRODINFOF|WirelessCertificationFile]].
 
== SetRegionCode ==
Takes an input s32 [[#RegionCode_2|RegionCode]], no output.
 
== GetChineseTraditionalInputMethod ==
No input, returns an output s32 [[#ChineseTraditionalInputMethod]].
 
== SetChineseTraditionalInputMethod ==
Takes an input s32 [[#ChineseTraditionalInputMethod]], no output.
 
== GetHomeMenuScheme ==
No input, returns an output 0x14-byte struct "nn::settings::system::HomeMenuScheme".
 
This struct contains 5 RGBA8 u32s for colors: '''Main''', '''Back''', '''Sub''', '''Bezel''' and '''Extra'''.
 
The colors are loaded from [[Calibration]], with the set of fields to use selected by ColorVariation. When ColorVariation is invalid (must be 1-4), the following fixed color values are returned: 0xFF323232, 0xFF323232, 0xFFFFFFFF, 0xFFFFFFFF, 0xFF000000.
 
== GetT ==
No input, returns an output u8 bool '''IsT'''.
 
[9.0.0+] This is a wrapper for [[#GetPlatformRegion]]: <code>IsT = (PlatformRegion == 2)</code>.


== SetT ==
== SetT ==
Line 987: Line 1,157:


== GetHomeMenuSchemeModel ==
== GetHomeMenuSchemeModel ==
No input, returns an output u32.
No input. Returns an output u32.


Loads the 0xB-byte setting <"settings_debug", "home_menu_scheme_model">, throwing an error if loading this fails. Depending on the content of the setting, the output u32 is either determined by the value of this setting, or loaded from [[Calibration]].
Loads the 0xB-byte setting <"settings_debug", "home_menu_scheme_model">, throwing an error if loading this fails. Depending on the content of the setting, the output u32 is either determined by the value of this setting, or loaded from [[Calibration#ColorModel|ColorModel]].


== GetMemoryUsageRateFlag ==
== GetMemoryUsageRateFlag ==
Line 1,045: Line 1,215:
== SetFieldTestingFlag ==
== SetFieldTestingFlag ==
Takes an input bool, no output.
Takes an input bool, no output.
== Cmd219 ==
This is exclusive to S2.
This is likely GetTextMagnificationRatio?
No input, returns an output float.


= Language =
= Language =
Line 2,066: Line 2,243:
|-
|-
| 2 ||  
| 2 ||  
|}
= HomeMenuScheme =
This is "nn::settings::system::HomeMenuScheme".
{| class="wikitable" border="1"
|-
! Offset || Size || Description
|-
| 0x0 || 0x4 || MainColor
|-
| 0x4 || 0x4 || BackColor
|-
| 0x8 || 0x4 || SubColor
|-
| 0xC || 0x4 || Reserved
|-
| 0x10 || 0x4 || BezelColor
|}
|}