Changes

2,226 bytes added ,  21:09, 2 December 2019
no edit summary
Line 16: Line 16:     
== UiSettings ==
 
== UiSettings ==
 +
This is "nn::account::UiSettings".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset || Size || Description
 +
|-
 +
| 0x0 || 0x4 || [[#UiMode]]
 +
|-
 +
| 0x4 || 0x4 ||
 +
|-
 +
| 0x8 || 0x80 || u128 invalidUidList[8]. This is copied from [[#UserSelectionSettings]].
 +
|-
 +
| 0x88 || 0x8 ||
 +
|-
 +
| 0x90 || 0x1 || u8 isNetworkServiceAccountRequired. This is copied from [[#UserSelectionSettings]].
 +
|-
 +
| 0x91 || 0x1 || u8 isSkipEnabled. This is copied from [[#UserSelectionSettings]].
 +
|-
 +
| 0x92 || 0x1 ||
 +
|-
 +
| 0x93 || 0x1 || u8 isPermitted.
 +
|-
 +
| 0x94 || 0x1 || u8 showSkipButton. This is copied from [[#UserSelectionSettings]].
 +
|-
 +
| 0x95 || 0x1 || u8 additionalSelect. This is copied from [[#UserSelectionSettings]].
 +
|-
 +
| 0x96 || 0x1 || This is copied from [[#UserSelectionSettingsForSystemService]].
 +
|-
 +
| 0x97 || 0x1 ||
 +
|-
 +
| 0x98 || 0x4 || This is copied from [[#UserSelectionSettingsForSystemService]].
 +
|-
 +
| 0x9C || 0x4 ||
 +
|}
 +
 
This has size 0xA0 (0x98 with [1.0.0]) and seems to only affect the UI display. Typical value is all zero with byte 0x96 equal to 0x01.
 
This has size 0xA0 (0x98 with [1.0.0]) and seems to only affect the UI display. Typical value is all zero with byte 0x96 equal to 0x01.
 
Setting the first byte to 1 will make the applet display in order to create a new user.
 
Setting the first byte to 1 will make the applet display in order to create a new user.
 
"starter" sets the first byte to 5 in order to display initial user setup.
 
"starter" sets the first byte to 5 in order to display initial user setup.
   −
[2.0.0+]: sdknso ShowUserSelectorForSystem now has an additional input param UserSelectionSettingsForSystemService: u8 +4 is copied to UiSettings+0x96, and u32 +0 is copied to UiSettings+0xA0. sdknso ShowUserSelectorForLauncher/ShowUserSelector now sets u8 UiSettings+0x96 to value 1.
+
[2.0.0+]: sdknso ShowUserSelectorForSystem now has an additional input param UserSelectionSettingsForSystemService: u8 +4 is copied to UiSettings+0x96, and u32 +0 is copied to UiSettings+0x98. sdknso ShowUserSelectorForLauncher/ShowUserSelector now sets u8 UiSettings+0x96 to value 1.
   −
== Result ==  
+
== UiMode ==
This is 0x18-bytes.
+
This is "nn::account::UiMode".
    
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Offset || Size || Notes
+
! Value || Description
 +
|-
 +
| 0 || SelectUser
 +
|-
 +
| 1 || CreateUser
 +
|-
 +
| 2 || EnsureNsaAvailable
 +
|-
 +
| 3 || EditUserIcon
 +
|-
 +
| 4 || EditUserNickname
 +
|-
 +
| 5 || CreateUserForStarter
 +
|-
 +
| 6 || AcquireNintendoAccountAuthorization
 +
|-
 +
| 7 || IntroduceExternalNetworkServiceAccount
 +
|-
 +
| 8 || IntroduceExternalNetworkServiceAccountForRegistration
 +
|-
 +
| 9 || [3.0.0+] LinkAccountNnid
 +
|-
 +
| 10 || [6.0.0+] ShowLicenseRequirementsForNetworkService
 +
|-
 +
| 11 || [6.0.0+] ShowLicenseRequirementsForNetworkServiceWithUserContext
 +
|-
 +
| 12 || [8.0.0+] CreateUserForImmediateNaLoginTest
 +
|}
 +
 
 +
== UserSelectionSettings ==
 +
This is "nn::account::UserSelectionSettings ".
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset || Size || Description
 +
|-
 +
| 0x0 || 0x80 || u128 invalidUidList[8]
 +
|-
 +
| 0x80 || 0x1 || u8 isSkipEnabled
 +
|-
 +
| 0x81 || 0x1 || u8 isNetworkServiceAccountRequired
 +
|-
 +
| 0x82 || 0x1 || u8 showSkipButton
 +
|-
 +
| 0x83 || 0x1 || u8 additionalSelect
 +
|-
 +
| 0x84 || 0x1 || u8 isUnqualifiedUserSelectable
 +
|}
 +
 
 +
== UserSelectionSettingsForSystemService ==
 +
This is "nn::account::UserSelectionSettingsForSystemService".
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset || Size || Description
 +
|-
 +
| 0x0 || 0x4 ||
 +
|-
 +
| 0x4 || 0x1 ||
 +
|-
 +
| 0x5 || 0x3 || u8 padding[3]
 +
|}
 +
 
 +
== UiResult ==
 +
This is "nn::account::UiResult".
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset || Size || Description
 
|-
 
|-
 
| 0x0 || 0x8 || Result (0 = Success, 2 = Failure)
 
| 0x0 || 0x8 || Result (0 = Success, 2 = Failure)
 
|-
 
|-
 
| 0x8 || 0x10 || UUID of selected user
 
| 0x8 || 0x10 || UUID of selected user
|-
   
|}
 
|}