MyPage Applet: Difference between revisions
No edit summary |
No edit summary |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
This is the MyPage applet launched by Home Menu. Official sw uses this under <code>nn::friends</code>. | This is the MyPage applet launched by Home Menu. Official sw uses this under <code>nn::friends</code>. | ||
See [[AM_services#Library_Applets]]. | See [[AM_services#Library_Applets]]. | ||
== Library Applet Versions == | |||
{| class="wikitable" border="1" | |||
|- | |||
! System Version || Value | |||
|- | |||
| [1.0.0+] || 0x1 | |||
|- | |||
| [9.0.0+] || 0x10000 | |||
|} | |||
== Arg == | == Arg == | ||
Line 20: | Line 30: | ||
|- | |- | ||
| 0x68 || 0x48 || [[Friend_services|InAppScreenName]] | | 0x68 || 0x48 || [[Friend_services|InAppScreenName]] | ||
|- | |||
| 0xB0 || 0xFF8 || See below. | |||
|} | |||
The is the 0xB0-byte (0x10A8-byte with version 0x10000) struct pushed for the input storage. | |||
The fields following the userID are only set for [[#Type]] ShowUserDetailInfo, StartSendingFriendRequest, StartFriendInvitation, StartSendingFriendInvitation, and ShowReceivedInvitationDetail, for everything else these are cleared. | |||
The layout of the data following the userID with the [9.0.0+] types depends on what type is being used: | |||
StartFriendInvitation: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x18 || 0x4 || s32 NetworkServiceAccountId_count. Must be 1-15. Number of friends to invite. | |||
|- | |||
| 0x1C || 0x4 || Padding. | |||
|- | |||
| 0x20 || 0x8 || User-data size, must be <=0x400. | |||
|- | |||
| 0x28 || 0x400 || Arbitrary user-data, see above size. | |||
|- | |||
| 0x428 || 0xC00 || [[Friend_services|FriendInvitationGameModeDescription]] | |||
|} | |||
StartSendingFriendInvitation: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x18 || 0x4 || s32 NetworkServiceAccountId_count. Must be 1-15. Number of friends to invite. | |||
|- | |||
| 0x1C || 0x4 || Padding. | |||
|- | |||
| 0x20 || 0x8*NetworkServiceAccountId_count || [[Account_services|NetworkServiceAccountId]] list. | |||
|- | |||
| 0xA0 || 0x8 || User-data size, must be <=0x400. | |||
|- | |||
| 0xA8 || 0x400 || Arbitrary user-data, see above size. | |||
|- | |||
| 0x4A8 || 0xC00 || [[Friend_services|FriendInvitationGameModeDescription]] | |||
|} | |} | ||
ShowReceivedInvitationDetail: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x18 || 0x8 || [[Friend_services|FriendInvitationId]] | |||
|- | |||
| 0x20 || 0x8 || [[Friend_services|FriendInvitationGroupId]] | |||
|} | |||
== Type == | == Type == | ||
Line 48: | Line 115: | ||
|- | |- | ||
| ShowMyProfileForHomeMenu || 7 || true || Identical to ShowMyProfile except for PlayStartupSound. | | ShowMyProfileForHomeMenu || 7 || true || Identical to ShowMyProfile except for PlayStartupSound. | ||
|- | |||
| [9.0.0+] StartFriendInvitation || 8 || false || Launches the applet for sending online-play invites to friends, where the friends are selected via the UI. | |||
|- | |||
| [9.0.0+] StartSendingFriendInvitation || 9 || false || | |||
|- | |||
| [9.0.0+] ShowReceivedInvitationDetail || 10 || false || | |||
|} | |} | ||
== Usage == | == Usage == | ||
User-processes should push a common arguments struct | User-processes should push a common arguments struct as well as an [[#Arg]] struct. See [[#Type]] for the commonargs PlayStartupSound flag value. After starting the applet, official sw immediately closes it (no output storage is handled) - except for StartSendingFriendRequest/StartFriendInvitation/StartSendingFriendInvitation which returns an output storage containing the Result. | ||
[[Category:Library Applets]] | [[Category:Library Applets]] |