Shared Database services: Difference between revisions
Line 218: | Line 218: | ||
Takes an input u8 '''event_xF''', an u8 '''event_xC''', an u8 '''event_xD''', an u8 '''event_xE''', an u32 '''event_x8''', and an u64 '''titleID'''. Returns no output. | Takes an input u8 '''event_xF''', an u8 '''event_xC''', an u8 '''event_xD''', an u8 '''event_xE''', an u32 '''event_x8''', and an u64 '''titleID'''. Returns no output. | ||
Logs a new [[#PlayEvent]] with the following data: | When '''event_xE''' is 2 this will immediately return 0. | ||
Logs a new [[#PlayEvent]] with the following data: | |||
* Clears the 0x10-bytes at +0x10. | * Clears the 0x10-bytes at +0x10. | ||
* u8 +0xF = '''event_xF''' | * u8 +0xF = '''event_xF'''. | ||
* Sets the 3 timestamps. | * Sets the 3 timestamps. | ||
* Converts '''titleID''' and writes it to +0x0. | * Converts '''titleID''' and writes it to +0x0. | ||
* u32 +0x8 = '''event_x8''' | * u32 +0x8 = '''event_x8'''. | ||
* u8 +0xC = '''event_xC''', u8 +0xD = '''event_xD''', and u8 +0xE = '''event_xE'''. | * u8 +0xC = '''event_xC''', u8 +0xD = '''event_xD''', and u8 +0xE = '''event_xE'''. | ||
After the initial logging, additional code runs with some of the above input params. | |||
== NotifyOperationModeChangeEvent == | == NotifyOperationModeChangeEvent == | ||
Line 235: | Line 239: | ||
Logs a new [[#PlayEvent]] with the following data: clears the 0x20-bytes at +0x0, u8 +0x1C = 0x2, u8 +0x0 = '''inval''', and sets the 3 timestamps. | Logs a new [[#PlayEvent]] with the following data: clears the 0x20-bytes at +0x0, u8 +0x1C = 0x2, u8 +0x0 = '''inval''', and sets the 3 timestamps. | ||
After the initial logging, additional code runs which uses '''inval'''. | |||
== NotifyClearAllEvent == | == NotifyClearAllEvent == | ||
Line 245: | Line 251: | ||
Each [[#PlayEvent]] entry is validated, throwing an error on failure. After an entry is successfully validated, it is written to the log. | Each [[#PlayEvent]] entry is validated, throwing an error on failure. After an entry is successfully validated, it is written to the log. | ||
== Cmd8 == | |||
Takes an input u8 '''event_xF''', an u8 '''event_x9''', an u8 '''event_xC''', an u8 '''event_xD''', an u8 '''event_xE''', and an u64 '''titleID'''. Returns no output. | |||
This is similar to [[#NotifyAppletEvent]]. | |||
When '''event_xE''' is 2 this will immediately return 0. | |||
Logs a new [[#PlayEvent]] with the following data: | |||
* Clears the 0x20-bytes at +0x0. | |||
* u8 +0xF = '''event_xF'''. | |||
* Sets the 3 timestamps. | |||
* Converts '''titleID''' and writes it to +0x0. | |||
* u8 +0x9 = '''event_x9'''. | |||
* u8 +0x8 = 1. | |||
* u8 +0xC = '''event_xC''', u8 +0xD = '''event_xD''', and u8 +0xE = '''event_xE'''. | |||
After the initial logging, additional code runs with some of the above input params. | |||
== Cmd9 == | |||
Takes an input u8 '''event_xF''', an u8 '''event_xC''', an u8 '''event_xD''', an 0x20-byte struct, an u8 bool flag, an u8 '''event_xE''', 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''' is 2 this will immediately return 0. | |||
Logs a new [[#PlayEvent]] with the following data: | |||
* Clears the 0x10-bytes at +0x10. | |||
* u8 +0xF = '''event_xF''' | |||
* Sets the 3 timestamps. | |||
* Converts '''titleID''' and writes it to +0x0. | |||
* u32 +0x8 = '''event_x8''' | |||
* u8 +0xC = '''event_xC''', u8 +0xD = '''event_xD''', and u8 +0xE = '''event_xE'''. | |||
After the initial logging, additional code runs with some of the above input params. When the u8 bool flag is set, the input struct is used with this. | |||
= pdm:qry = | = pdm:qry = |