Line 97:
Line 97:
| style="vertical-align: top;"|0x00
| style="vertical-align: top;"|0x00
| style="vertical-align: top;"|?
| style="vertical-align: top;"|?
−
| style="vertical-align: top;"|0
+
| style="vertical-align: top;"|?
−
| style="vertical-align: top;"|0
+
| style="vertical-align: top;"|?
−
| style="vertical-align: top;"|
+
| style="vertical-align: top;"|?
−
| style="vertical-align: top;"|
+
| style="vertical-align: top;"|?
| style="vertical-align: top;"|?
| style="vertical-align: top;"|?
| style="vertical-align: top;"|returns -1017 non-existant ioctl
| style="vertical-align: top;"|returns -1017 non-existant ioctl
Line 125:
Line 125:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
−
| style="vertical-align: top;" rowspan="4" |?
+
| style="vertical-align: top;" rowspan="4" |ES_AddTitleStart(const signed_blob *stmd, u32 tmd_size, const signed_blob *certificates, u32 certificates_size, const signed_blob *crl, u32 crl_size)
| style="vertical-align: top;" rowspan="4" |?
| style="vertical-align: top;" rowspan="4" |?
|-
|-
Line 143:
Line 143:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_AddContentStart(u64 titleID, u32 cid)
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"
Line 155:
Line 155:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_AddContentData(s32 cfd, u8 *data, u32 data_size)
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|-
|-
Line 167:
Line 167:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" |?
+
| style="vertical-align: top;" |ES_AddContentFinish(u32 cid)
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
|-
|-
Line 176:
Line 176:
| style="vertical-align: top;" |
| style="vertical-align: top;" |
| style="vertical-align: top;" |
| style="vertical-align: top;" |
−
| style="vertical-align: top;" rowspan="1" |?
+
| style="vertical-align: top;" rowspan="1" |ES_AddTitleFinish(void)
| style="vertical-align: top;" rowspan="1" |?
| style="vertical-align: top;" rowspan="1" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"
Line 185:
Line 185:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" |?
+
| style="vertical-align: top;" |ES_GetDeviceID(u32 *device_id)
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
|-
|-
Line 194:
Line 194:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_LaunchTitleBackground(u64 titleID, const tikview *view); ES_LaunchTitle(u64 titleID, const tikview *view);
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|-
|-
Line 206:
Line 206:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" |?
+
| style="vertical-align: top;" |ES_OpenContent(u16 index)
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
|-
|-
−
| style="vertical-align: top;" rowspan="2" |0x0a
+
| style="vertical-align: top;" rowspan="2" |0x0A
| style="vertical-align: top;" rowspan="2" |ES_ReadContent
| style="vertical-align: top;" rowspan="2" |ES_ReadContent
| style="vertical-align: top;" rowspan="2" |1
| style="vertical-align: top;" rowspan="2" |1
Line 215:
Line 215:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_ReadContent(s32 cfd, u8 *data, u32 data_size)
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|-
|-
Line 221:
Line 221:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"
−
| style="vertical-align: top;" |0x0b
+
| style="vertical-align: top;" |0x0B
| style="vertical-align: top;" |ES_CloseContent
| style="vertical-align: top;" |ES_CloseContent
| style="vertical-align: top;" |1
| style="vertical-align: top;" |1
Line 227:
Line 227:
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" |?
+
| style="vertical-align: top;" |ES_CloseContent(s32 cfd)
| style="vertical-align: top;" |?
| style="vertical-align: top;" |?
|-
|-
−
| style="vertical-align: top;" rowspan="1" |0x0c
+
| style="vertical-align: top;" rowspan="1" |0x0C
| style="vertical-align: top;" rowspan="1" |ES_GetOwnedTitlesCount
| style="vertical-align: top;" rowspan="1" |ES_GetOwnedTitlesCount
| style="vertical-align: top;" rowspan="1" |0
| style="vertical-align: top;" rowspan="1" |0
Line 236:
Line 236:
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" rowspan="1" |?
+
| style="vertical-align: top;" rowspan="1" |ES_GetNumOwnedTitles(u32 *cnt)
| style="vertical-align: top;" rowspan="1" |?
| style="vertical-align: top;" rowspan="1" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"
−
| style="vertical-align: top;" rowspan="2" |0x0d
+
| style="vertical-align: top;" rowspan="2" |0x0D
| style="vertical-align: top;" rowspan="2" |ES_GetOwnedTitles
| style="vertical-align: top;" rowspan="2" |ES_GetOwnedTitles
| style="vertical-align: top;" rowspan="2" |1
| style="vertical-align: top;" rowspan="2" |1
Line 245:
Line 245:
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_GetOwnedTitles(u64 *titles, u32 cnt)
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"
Line 251:
Line 251:
| style="vertical-align: top;" |[count]*0x8
| style="vertical-align: top;" |[count]*0x8
|-
|-
−
| style="vertical-align: top;" |0x0e
+
| style="vertical-align: top;" |0x0E
| style="vertical-align: top;" |ES_GetTitlesCount
| style="vertical-align: top;" |ES_GetTitlesCount
| style="vertical-align: top;" |0
| style="vertical-align: top;" |0
Line 257:
Line 257:
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" |?
+
| style="vertical-align: top;" |ES_GetOwnedTitles(u64 *titles, u32 cnt)
| style="vertical-align: top;" |Sets the u32 pointed to by ''count'' to the number of titles on the system under /title.
| style="vertical-align: top;" |Sets the u32 pointed to by ''count'' to the number of titles on the system under /title.
|- style="background-color: #eee;"
|- style="background-color: #eee;"
−
| style="vertical-align: top;" rowspan="2" |0x0f
+
| style="vertical-align: top;" rowspan="2" |0x0F
| style="vertical-align: top;" rowspan="2" |ES_GetTitles
| style="vertical-align: top;" rowspan="2" |ES_GetTitles
| style="vertical-align: top;" rowspan="2" |1
| style="vertical-align: top;" rowspan="2" |1
Line 266:
Line 266:
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |u32* count
| style="vertical-align: top;" |0x4
| style="vertical-align: top;" |0x4
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_GetTitles(u64 *titles, u32 cnt)
| style="vertical-align: top;" rowspan="2" |Fills out ''buffer'' with at most ''count'' 8 byte title ids of titles on the system under /title. It also update ''count'' for the number of title its copied.
| style="vertical-align: top;" rowspan="2" |Fills out ''buffer'' with at most ''count'' 8 byte title ids of titles on the system under /title. It also update ''count'' for the number of title its copied.
|- style="background-color: #eee;"
|- style="background-color: #eee;"
Line 278:
Line 278:
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_GetTitleContentsCount(u64 titleID, u32 *num)
| style="vertical-align: top;" rowspan="2" |Gets the number of contents from the tmd. It checks that the contents are present in the title's private content directory or linked via /shared1/content.map
| style="vertical-align: top;" rowspan="2" |Gets the number of contents from the tmd. It checks that the contents are present in the title's private content directory or linked via /shared1/content.map
|-
|-
Line 290:
Line 290:
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="3" |?
+
| style="vertical-align: top;" rowspan="3" |ES_GetTitleContentsCount(u64 titleID, u32 *num)
| style="vertical-align: top;" rowspan="3" |Fills out ''content_ids'' with the content ids from the title's tmd. It checks if the contents are present in the title's private content directory or linked via /shared1/content.map
| style="vertical-align: top;" rowspan="3" |Fills out ''content_ids'' with the content ids from the title's tmd. It checks if the contents are present in the title's private content directory or linked via /shared1/content.map
|- style="background-color: #eee;"
|- style="background-color: #eee;"
Line 305:
Line 305:
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_GetNumTicketViews(u64 titleID, u32 *cnt)
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|-
|-
Line 317:
Line 317:
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="3" |?
+
| style="vertical-align: top;" rowspan="3" |ES_GetTicketViews(u64 titleID, tikview *views, u32 cnt)
| style="vertical-align: top;" rowspan="3" |?
| style="vertical-align: top;" rowspan="3" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"
Line 332:
Line 332:
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="2" |?
+
| style="vertical-align: top;" rowspan="2" |ES_GetTMDViewSize(u64 titleID, u32 *size)
| style="vertical-align: top;" rowspan="2" |?
| style="vertical-align: top;" rowspan="2" |?
|-
|-
Line 344:
Line 344:
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |u64 title_id
| style="vertical-align: top;" |0x8
| style="vertical-align: top;" |0x8
−
| style="vertical-align: top;" rowspan="3" |?
+
| style="vertical-align: top;" rowspan="3" |ES_GetTMDView(u64 titleID, u8 *data, u32 size)
| style="vertical-align: top;" rowspan="3" |?
| style="vertical-align: top;" rowspan="3" |?
|- style="background-color: #eee;"
|- style="background-color: #eee;"