Line 312: |
Line 312: |
| | 1019 || [13.0.0+] UnsetDebugOption | | | 1019 || [13.0.0+] UnsetDebugOption |
| |- | | |- |
− | | 1100 || [4.0.0+] OverrideSaveDataTransferTokenSignVerificationKey | + | | 1020 || [18.0.0+] OpenMemoryStressor |
| + | |- |
| + | | 1100 || [4.0.0-17.0.1] OverrideSaveDataTransferTokenSignVerificationKey |
| + | |- |
| + | | 1101 || [18.0.0+] OverrideSaveDataTransferKeyForTest |
| |- | | |- |
| | 1110 || [6.0.0+] CorruptSaveDataFileSystemByOffset | | | 1110 || [6.0.0+] CorruptSaveDataFileSystemByOffset |
Line 1,115: |
Line 1,119: |
| | 220 || [9.0.0+] [[#GetGameCardCompatibilityType]] | | | 220 || [9.0.0+] [[#GetGameCardCompatibilityType]] |
| |- | | |- |
− | | 221 || [17.0.0+] GetGameCardAsicCertificate | + | | 221 || [17.0.0+] [[#GetGameCardAsicCertificate]] |
| + | |- |
| + | | 222 || [18.0.0+] [[#GetGameCardCardHeader]] |
| |- | | |- |
| | 300 || [[#SetSpeedEmulationMode]] | | | 300 || [[#SetSpeedEmulationMode]] |
| |- | | |- |
| | 301 || [[#GetSpeedEmulationMode]] | | | 301 || [[#GetSpeedEmulationMode]] |
| + | |- |
| + | | 302 || [18.0.0+] SetApplicationStorageSpeed |
| |- | | |- |
| | 400 || [5.0.0+] [[#SuspendSdmmcControl]] | | | 400 || [5.0.0+] [[#SuspendSdmmcControl]] |
Line 1,241: |
Line 1,249: |
| == GetGameCardCompatibilityType == | | == GetGameCardCompatibilityType == |
| Takes an input [[#GameCardHandle]]. Returns an output [[#GameCardCompatibilityType]]. | | Takes an input [[#GameCardHandle]]. Returns an output [[#GameCardCompatibilityType]]. |
| + | |
| + | == GetGameCardAsicCertificate == |
| + | Takes a type-0x6 output buffer and an input s64 '''BufferSize'''. No output. |
| + | |
| + | == GetGameCardCardHeader == |
| + | Takes a type-0x6 output buffer, an input s64 '''BufferSize''' and an input [[#GameCardHandle]]. No output. |
| | | |
| == SetSpeedEmulationMode == | | == SetSpeedEmulationMode == |
Line 1,474: |
Line 1,488: |
| |- | | |- |
| | 0 || [[#GetChallenge]] | | | 0 || [[#GetChallenge]] |
| + | |- |
| + | | 8 || [18.0.0+] SetMode |
| + | |- |
| + | | 9 || [18.0.0+] SetAttribute |
| |- | | |- |
| | 16 || [[#SetKeySeedPackage]] | | | 16 || [[#SetKeySeedPackage]] |
Line 1,485: |
Line 1,503: |
| | 63 || [17.0.0+] OpenSaveDataImporter | | | 63 || [17.0.0+] OpenSaveDataImporter |
| |- | | |- |
− | | 64 || [6.0.0+] [[#OpenSaveDataImporterDeprecated]] ([5.0.0-5.1.0] OpenSaveDataImporter) | + | | 64 || [6.0.0-17.0.1] [[#OpenSaveDataImporterDeprecated]] ([5.0.0-5.1.0] OpenSaveDataImporter) |
| |- | | |- |
− | | 65 || [[#OpenSaveDataImporterForDiffImport]] | + | | 65 || [5.0.0-17.0.1] [[#OpenSaveDataImporterForDiffImport]] |
| |- | | |- |
− | | 66 || [6.0.0+] [[#OpenSaveDataImporterForDuplicateDiffImport]] | + | | 66 || [6.0.0-17.0.1] [[#OpenSaveDataImporterForDuplicateDiffImport]] |
| |- | | |- |
| | 67 || [6.0.0-16.1.0] [[#OpenSaveDataImporter]] | | | 67 || [6.0.0-16.1.0] [[#OpenSaveDataImporter]] |
Line 1,497: |
Line 1,515: |
| | 69 || [6.0.0+] [[#CancelSuspendingImport]] | | | 69 || [6.0.0+] [[#CancelSuspendingImport]] |
| |- | | |- |
− | | 70 || [10.0.0+] DecryptAndVerifyInitialData | + | | 70 || [10.0.0+] CancelSuspendingImportByAttribute |
| |- | | |- |
− | | 80 || [11.0.0+] DecryptoAndVerifyPortContext | + | | 80 || [11.0.0+] SwapSecondary |
| |} | | |} |
| | | |
Line 1,546: |
Line 1,564: |
| | 0 || [[#SetDivisionCount]] | | | 0 || [[#SetDivisionCount]] |
| |- | | |- |
− | | 1 || [6.0.0+] [[#GetSaveDataInfo]] | + | | 1 || [6.0.0+] [[#ReadSaveDataExtraData]] |
| |- | | |- |
| | 16 || [[#OpenSaveDataDiffChunkIterator]] | | | 16 || [[#OpenSaveDataDiffChunkIterator]] |
Line 1,560: |
Line 1,578: |
| | 67 || [6.0.0+] [[#SuspendExport]] | | | 67 || [6.0.0+] [[#SuspendExport]] |
| |- | | |- |
− | | 70 || [6.0.0+] [[#GetKeySeed]] | + | | 70 || [6.0.0-17.0.1] [[#GetKeySeed]] |
| |- | | |- |
| | 71 || [6.0.0+] [[#GetInitialDataMac]] | | | 71 || [6.0.0+] [[#GetInitialDataMac]] |
Line 1,567: |
Line 1,585: |
| |- | | |- |
| | 73 || [9.0.0+] [[#GetInitialDataMacKeyGeneration]] | | | 73 || [9.0.0+] [[#GetInitialDataMacKeyGeneration]] |
| + | |- |
| + | | 74 || [18.0.0+] [[#GetKeySeed]] |
| |- | | |- |
| | 80 || [6.0.0+] [[#GetImportInitialDataAad]] | | | 80 || [6.0.0+] [[#GetImportInitialDataAad]] |
Line 1,614: |
Line 1,634: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [6.0.0+] [[#GetSaveDataInfo]] | + | | 0 || [6.0.0+] [[#ReadSaveDataExtraData]] |
| |- | | |- |
| | 16 || [[#OpenSaveDataDiffChunkIterator]] | | | 16 || [[#OpenSaveDataDiffChunkIterator]] |
Line 1,637: |
Line 1,657: |
| |} | | |} |
| | | |
− | == GetSaveDataInfo == | + | == ReadSaveDataExtraData == |
| No input/output, takes a type-0x6 output buffer. | | No input/output, takes a type-0x6 output buffer. |
| | | |
Line 2,478: |
Line 2,498: |
| | 16 || [9.0.0+] DifferentRegionCupToGlobalDeviceFlag | | | 16 || [9.0.0+] DifferentRegionCupToGlobalDeviceFlag |
| |} | | |} |
| + | |
| + | = GameCardAttribute2 = |
| + | This is "nn::fs::GameCardAttribute2". |
| | | |
| = GameCardSize = | | = GameCardSize = |
Line 2,665: |
Line 2,688: |
| = RmaInformation = | | = RmaInformation = |
| This is "nn::gc::RmaInformation". This is a 0x200-byte struct. | | This is "nn::gc::RmaInformation". This is a 0x200-byte struct. |
| + | |
| + | = GameCardCardHeader = |
| + | This is a 0x600-byte struct. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset |
| + | ! Size |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x100 |
| + | | [[XCI#CardHeader|Signature]] |
| + | |- |
| + | | 0x100 |
| + | | 0x100 |
| + | | [[Lotus3#GetCardHeader|Header]] |
| + | |- |
| + | | 0x200 |
| + | | 0x400 |
| + | | [[XCI#NewCardHeaderCertArea|NewCardHeaderCertArea]] |
| + | |} |
| | | |
| = SimulatingDeviceType = | | = SimulatingDeviceType = |