APT:StoreSysMenuArg: Difference between revisions

Created page with "=Request= {| class="wikitable" border="1" |- ! Index Word ! Description |- | 0 | Header code [0x00370042] |- | 1 | Size, 0x40 is used if this is >0x40. |- | 3 | <nowiki>(Size<<..."
 
TimmSkiller (talk | contribs)
m Fixed wrong last 2 index words.
 
(2 intermediate revisions by 2 users not shown)
Line 9: Line 9:
|-
|-
| 1
| 1
| Size, 0x40 is used if this is >0x40.
| Size (capped to 0x40)
|-
| 2
| <nowiki>(Size << 14) | 2</nowiki>
|-
|-
| 3
| 3
| <nowiki>(Size<<14) | 2</nowiki>
| void*, Input Buffer
|-
| 4
| Input buf ptr
|}
|}


Line 30: Line 30:
| Result code
| Result code
|}
|}
=Structure=
{| class="wikitable" border="1"
|-
!  Offset
!  Size
!  Description
|-
| 0x0
| 0x4
| Type?
|-
| 0x4
| 0x4
| Title Unique ID of the applet which set this SysMenuArg structure
|-
| 0x8
| 0x8
| u64, Program ID of the title to launch
|-
| 0x10
| 0x4
| ?
|-
| 0x14
| 0x4
| 1 + <bit value loaded from [[Config_Savegame|Cfg]] block 0xC0000>
|}
The above is the structure of the 0x18-byte buffer used with Home Menu for StoreSysMenuArg/LoadSysMenuArg. The uniqueID is for a NAND title with tid-high 000400030, this title must be installed in NAND. Only certain uniqueIDs can be used here.


=Description=
=Description=
This copies the input buffer to [[FIRM|FIRM-launch params]]+0x500, in NS state.
This copies the input buffer to [[FIRM|FIRM-launch params]]+0x500, in NS state.