Changes

Jump to: navigation, search

Shared Database services

609 bytes added, 6 July
no edit summary
== NotifyAppletEvent ==
Takes an input u8 [[#AppletEvent]], an u8 [[Applet_Manager_services#AppletId|AppletId]], an u8 [[Filesystem_services#StorageId|StorageId]], an u8 '''event_xE'''[[#PlayLogPolicy]], an u32 '''event_x8''', and an u64 '''titleID'''. Returns no output.
When '''event_xE''' [[#PlayLogPolicy]] is 2 this will immediately return 0.
Logs a new [[#PlayEvent]] with the following data:
* Converts '''titleID''' and writes it to +0x0.
* u32 +0x8 = '''event_x8'''.
* u8 +0xC = [[Applet_Manager_services#AppletId|AppletId]], u8 +0xD = [[Filesystem_services#StorageId|StorageId]], and u8 +0xE = '''event_xE'''[[#PlayLogPolicy]].
After the initial logging, additional code runs with some of the above input params.
== Cmd8 ==
Takes an input u8 [[#AppletEvent]], an u8 '''event_x9''', an u8 [[Applet_Manager_services#AppletId|AppletId]], an u8 [[Filesystem_services#StorageId|StorageId]], an u8 '''event_xE'''[[#PlayLogPolicy]], and an u64 '''titleID'''. Returns no output.
This is similar to [[#NotifyAppletEvent]].
When '''event_xE''' [[#PlayLogPolicy]] is 2 this will immediately return 0.
Logs a new [[#PlayEvent]] with the following data:
* u8 +0x9 = '''event_x9'''.
* u8 +0x8 = 1.
* u8 +0xC = [[Applet_Manager_services#AppletId|AppletId]], u8 +0xD = [[Filesystem_services#StorageId|StorageId]], and u8 +0xE = '''event_xE'''[[#PlayLogPolicy]].
After the initial logging, additional code runs with some of the above input params. This is handled the same as [[#NotifyAppletEvent]], except that the value passed for '''event_x8''' is value 0 here.
== Cmd9 ==
Takes an input u8 [[#AppletEvent]], an u8 [[Applet_Manager_services#AppletId|AppletId]], an u8 [[Filesystem_services#StorageId|StorageId]], an 0x20-byte struct, an u8 bool flag, an u8 '''event_xE'''[[#PlayLogPolicy]], an u32 '''event_x8''', and an u64 '''titleID'''. Returns no output.
This is identical to [[#NotifyAppletEvent]] except for the additional struct/flag params.
When '''event_xE''' [[#PlayLogPolicy]] is 2 this will immediately return 0.
Logs a new [[#PlayEvent]] with the following data:
* Converts '''titleID''' and writes it to +0x0.
* u32 +0x8 = '''event_x8'''
* u8 +0xC = [[Applet_Manager_services#AppletId|AppletId]], u8 +0xD = [[Filesystem_services#StorageId|StorageId]], and u8 +0xE = '''event_xE'''[[#PlayLogPolicy]].
After the initial logging, additional code runs with some of the above input params. This is handled the same as [[#NotifyAppletEvent]], except that when the u8 bool flag is set the input struct is used with this.
This is an enum for [[#PlayEvent]] +0xF with [[#PlayEventType]] = Applet, this indicates the type of the Applet event.
 
= PlayLogPolicy =
{| class="wikitable" border="1"
|-
! Value
! Description
|-
| 0 || [[#QueryApplicationEvent]] and [[#QueryLastPlayTime]] will only return the entry when PlayLogPolicy matches this value.
|-
| 1 || The above commands will filter out the entry with this.
|-
| 2 || pdm:ntfy [[#NotifyAppletEvent]], [[#Cmd8]], and [[#Cmd9]] will immediately return 0 when the input param matches this value.
|}
 
This is an enum for [[#PlayEvent]] +0xE with [[#PlayEventType]] = Applet. This is set via the above commands, which uses this as an input param.
= PlayEvent =
| 0xD || 0x1 || [[Filesystem_services#StorageId|StorageId]]
|-
| 0xE || 0x1 || ?[[#PlayLogPolicy]]
|-
| 0xF || 0x1 || [[#AppletEvent]]

Navigation menu