Migration services: Difference between revisions
No edit summary |
No edit summary |
||
| Line 438: | Line 438: | ||
| 996 || [8.0.0+] DebugTryGetState | | 996 || [8.0.0+] DebugTryGetState | ||
|- | |- | ||
| 997 || [8.0.0+] DebugSynchronizeStateInFinalization0Async | | 997 || [8.0.0+] [[#DebugSynchronizeStateInFinalization0Async|DebugSynchronizeStateInFinalization0Async]] | ||
|- | |- | ||
| 998 || [8.0.0+] DebugSynchronizeStateInFinalization1Async | | 998 || [8.0.0+] [[#DebugSynchronizeStateInFinalization1Async|DebugSynchronizeStateInFinalization1Async]] | ||
|- | |- | ||
| 999 || DebugSynchronizeStateFinalizedAsync | | 999 || [[#DebugSynchronizeStateFinalizedAsync|DebugSynchronizeStateFinalizedAsync]] | ||
|} | |} | ||
| Line 562: | Line 562: | ||
Besides other functionality, this async task uses network request [[Network|transfer_events/%lld/finish_transfer]]. | Besides other functionality, this async task uses network request [[Network|transfer_events/%lld/finish_transfer]]. | ||
=== DebugSynchronizeStateInFinalization0Async === | |||
No input, returns an [[#IAsyncContext|IAsyncContext]]. | |||
Besides various validation, the async task essentially just calls a func which calls vfuncs and uses network message [[#SynchronizeState|SynchronizeState]] with value 3. | |||
=== DebugSynchronizeStateInFinalization1Async === | |||
No input, returns an [[#IAsyncContext|IAsyncContext]]. | |||
Besides various validation, the async task essentially just calls a func which calls vfuncs and uses network message [[#SynchronizeState|SynchronizeState]] with value 4. | |||
=== DebugSynchronizeStateFinalizedAsync === | |||
No input, returns an [[#IAsyncContext|IAsyncContext]]. | |||
Besides various validation, the async task essentially just calls a func which calls a vfunc and uses network message [[#SynchronizeState|SynchronizeState]] with value 5. | |||
== IServer == | == IServer == | ||
| Line 1,152: | Line 1,167: | ||
|- | |- | ||
| 0xE2 || [[#TransferNext|TransferNext]] | | 0xE2 || [[#TransferNext|TransferNext]] | ||
|- | |||
| 0xF0 || [[#SynchronizeState|SynchronizeState]] | |||
|} | |} | ||
| Line 1,276: | Line 1,293: | ||
With savedata the transfer payload is the output from exporting savedata from [[Filesystem_services|ISaveDataTransferManagerWithDivision]] (see [[#Notes]]), which the client then imports. | With savedata the transfer payload is the output from exporting savedata from [[Filesystem_services|ISaveDataTransferManagerWithDivision]] (see [[#Notes]]), which the client then imports. | ||
=== SynchronizeState === | |||
The client sends this via [[#ConnectByServerIdAsync|ConnectByServerIdAsync]], [[#CompleteAsync|CompleteAsync]], and DebugSynchronizeState*. | |||
Request payload: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x4 || See below. | |||
|} | |||
{| class="wikitable" border="1" | |||
|- | |||
! Value || Description | |||
|- | |||
| 1 || Can be used by [[#ConnectByServerIdAsync|ConnectByServerIdAsync]]. | |||
|- | |||
| 3 || [[#DebugSynchronizeStateInFinalization0Async|InFinalization0]] | |||
|- | |||
| 4 || [[#DebugSynchronizeStateInFinalization1Async|InFinalization1]] | |||
|- | |||
| 5 || [[#DebugSynchronizeStateFinalizedAsync|Finalized]] | |||
|} | |||
The response only contains the header. | |||
=== Error === | === Error === | ||