Changes

1,028 bytes added ,  20:25, 9 April 2016
Line 113: Line 113:  
|-
 
|-
 
| 0x0
 
| 0x0
| 0x5A8
+
| 0x2
|  
+
| u16 unk_x0, not used after the below check.
 +
|-
 +
| 0x2
 +
| 0x2
 +
| u16 total_entries, under this frame.
 +
|-
 +
| 0x4
 +
| 0x2
 +
| u16 out_entryindex, starts at 0x0. This is the output entryindex where this titlelist will be written, this is only non-zero starting with frameid 0x6, if it exists.
 +
|-
 +
| 0x6
 +
| 0x2
 +
| u16 unk_x6
 +
|-
 +
| 0x8
 +
| 0x5A0 (0x5A entries)
 +
| The actual titlelist, see below for the structure of each 0x10-byte entry. Unused entries are set to all-zero.
 
|}
 
|}
 +
 +
The value from (unk_x0 + unk_x6) must be <=0x100. Normally unk_x0 and total_entries are set to the same value, with the two u16s after that set to 0x0(with frameid 0x4).
 +
 +
Entry structure:
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Size
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x8
 +
| u64 titleID
 +
|-
 +
| 0x8
 +
| 0x2
 +
| u16 title_version
 +
|-
 +
| 0xA
 +
| 0x2
 +
| Padding, not used.
 +
|-
 +
| 0xC
 +
| 0x4
 +
| Title size
 +
|}
 +
 +
When writing the entry to output, the titleID is ORRed with the data stored there. The rest of the data is stored with normal writes(padding is not written in the output 0x10-byte entry).
    
== Broadcasted application data ==
 
== Broadcasted application data ==