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 = |