Difference between revisions of "Profile Selector"

From Nintendo Switch Brew
Jump to navigation Jump to search
m (add to Library Applets category)
Line 1: Line 1:
This is the UX presented when launching a game that allows the user to select a user.
+
This is the applet presented when launching a game that allows the user to select a user.
  
The profile selector expects a two [[AM_services#IStorage|IStorage]] inputs and a single [[AM_services#IStorage|IStorage]] output.
+
See [[AM_services#Library_Applets]]. The profile selector expects a two [[AM_services#IStorage|IStorage]] inputs and a single [[AM_services#IStorage|IStorage]] output.
 
 
The first IStorage is identical to [[Software_Keyboard#Common_Arguments|Common Arguments]] from swkbd.
 
  
 
== UserSelectionConfig ==
 
== UserSelectionConfig ==
  
This has size 0xA0 and seems to only affect the UI display.  
+
This has size 0xA0 and seems to only affect the UI display. Typical value is all zero with byte 0x96 equal to 0x01.
Typical value is all zero with byte 0x96 equal to 0x01
 
  
 
== Result ==  
 
== Result ==  
 +
This is 0x18-bytes.
  
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
Line 20: Line 18:
 
| 0x8 || 0x10 || UUID of selected user
 
| 0x8 || 0x10 || UUID of selected user
 
|-
 
|-
| 0x18 || || End of Struct
 
 
|}
 
|}
  
 
== Usage ==  
 
== Usage ==  
 
+
User-processes should push a common arguments struct and the typical UserSelectionConfig struct as well. After pushing in the data and calling start, user-processes should wait upon the PopOutDataEvent and then pop a single IStorage to obtain the result structure described above.
Homebrew should push a common arguments struct and the typical UserSelectionConfig struct as well.
 
After pushing in the data and calling start, homebrew should wait upon the PopOutDataEvent and then pop a single IStorage to obtain the result structure described above.
 
  
 
[[Category:Library Applets]]
 
[[Category:Library Applets]]

Revision as of 20:08, 10 December 2018

This is the applet presented when launching a game that allows the user to select a user.

See AM_services#Library_Applets. The profile selector expects a two IStorage inputs and a single IStorage output.

UserSelectionConfig

This has size 0xA0 and seems to only affect the UI display. Typical value is all zero with byte 0x96 equal to 0x01.

Result

This is 0x18-bytes.

Offset Size Notes
0x0 0x8 Result (0 = Success, 2 = Failure)
0x8 0x10 UUID of selected user

Usage

User-processes should push a common arguments struct and the typical UserSelectionConfig struct as well. After pushing in the data and calling start, user-processes should wait upon the PopOutDataEvent and then pop a single IStorage to obtain the result structure described above.