Only 1 ISystemUpdateControl can be open at a time.
Only 1 ISystemUpdateControl can be open at a time.
−
On newer sysvers, all pre-4.0.0 Card cmds require [[#SetupCardUpdateViaSystemUpdater]] to be used previously, except for RequestPrepareCardUpdate.
+
All Card cmds except SetupCardUpdate* require [[#SetupCardUpdate]]/[[#SetupCardUpdateViaSystemUpdater]] to be used previously, except for RequestPrepareCardUpdate.
=== HasDownloaded ===
=== HasDownloaded ===
Line 1,473:
Line 1,473:
Takes an input u64 size and a TransferMemory handle, no output.
Takes an input u64 size and a TransferMemory handle, no output.
−
The permissions for the TransferMemory is None.
+
Official sw creates the TransferMemory with an user-specified buffer, with permissions=None.
[[qlaunch]] uses size 0x100000 for the TransferMemory buffer.
[[qlaunch]] uses size 0x100000 for the TransferMemory buffer.
Line 1,492:
Line 1,492:
The permissions for the TransferMemory is None.
The permissions for the TransferMemory is None.
−
Same as SetupCardUpdate, except this doesn't have the code for [[Filesystem_services|GetGameCardHandle/GetGameCardUpdatePartitionInfo]], and uses [[Filesystem_services|OpenRegisteredUpdatePartition]] instead of [[Filesystem_services|OpenGameCardFileSystem]]. This also uses a different is_initialized bool state flag.
+
Same as [[#SetupCardUpdate]], except this doesn't have the code for [[Filesystem_services|GetGameCardHandle/GetGameCardUpdatePartitionInfo]], and uses [[Filesystem_services|OpenRegisteredUpdatePartition]] instead of [[Filesystem_services|OpenGameCardFileSystem]]. This uses the same is_initialized bool state flag.