Add several names to unknown commands

This commit is contained in:
piepie62 2020-05-06 22:18:18 -04:00
parent 7d1e1e93c4
commit abe477b763
2 changed files with 32 additions and 19 deletions

View File

@ -161,14 +161,20 @@ Result FSPXI_CloseDirectory(Handle serviceHandle, FSPXI_Directory directory);
Result FSPXI_OpenArchive(Handle serviceHandle, FSPXI_Archive* archive, FS_ArchiveID archiveID, FS_Path path); Result FSPXI_OpenArchive(Handle serviceHandle, FSPXI_Archive* archive, FS_ArchiveID archiveID, FS_Path path);
/** /**
* @brief Unknown 0x13 * @brief Checks if the archive contains a file at path.
* @param archive Archive to check.
* @param out Pointer to output existence to.
* @param path Path to check for file
*/ */
Result FSPXI_Unknown0x13(Handle serviceHandle, FSPXI_Archive archive, u8* out, FS_Path path); Result FSPXI_HasFile(Handle serviceHandle, FSPXI_Archive archive, bool* out, FS_Path path);
/** /**
* @brief Unknown 0x14 * @brief Checks if the archive contains a directory at path.
* @param archive Archive to check.
* @param out Pointer to output existence to.
* @param path Path to check for directory
*/ */
Result FSPXI_Unknown0x14(Handle serviceHandle, FSPXI_Archive archive, u32* out, FS_Path path); Result FSPXI_HasDirectory(Handle serviceHandle, FSPXI_Archive archive, bool* out, FS_Path path);
/** /**
* @brief Commits an archive's save data. * @brief Commits an archive's save data.
@ -443,10 +449,10 @@ Result FSPXI_GetLegacyRomHeader(Handle serviceHandle, FS_MediaType mediaType, u6
Result FSPXI_GetLegacyBannerData(Handle serviceHandle, FS_MediaType mediaType, u64 programId, void* banner, u8 unk); Result FSPXI_GetLegacyBannerData(Handle serviceHandle, FS_MediaType mediaType, u64 programId, void* banner, u8 unk);
/** /**
* Unknown command 3D * @brief Formats the CARDNOR device.
* @param unk Unknown. Transaction? * @param unk Unknown. Transaction?
*/ */
Result FSPXI_Unknown0x3D(Handle serviceHandle, u32 unk); Result FSPXI_FormatCardNorDevice(Handle serviceHandle, u32 unk);
/// Deletes the 3DS SDMC root. /// Deletes the 3DS SDMC root.
Result FSPXI_DeleteSdmcRoot(Handle serviceHandle); Result FSPXI_DeleteSdmcRoot(Handle serviceHandle);
@ -495,8 +501,12 @@ Result FSPXI_ImportIntegrityVerificationSeed(Handle serviceHandle, const FS_Inte
*/ */
Result FSPXI_GetLegacySubBannerData(Handle serviceHandle, u32 bannerSize, FS_MediaType mediaType, u64 programId, void* banner); Result FSPXI_GetLegacySubBannerData(Handle serviceHandle, u32 bannerSize, FS_MediaType mediaType, u64 programId, void* banner);
/// Unknown command 47 /**
Result FSPXI_Unknown0x47(Handle serviceHandle, void* buf, u32 size); * @brief Generates random bytes. Uses same code as PSPXI_GenerateRandomBytes
* @param buf Buffer to output random bytes to.
* @param size Size of buffer.
*/
Result FSPXI_GenerateRandomBytes(Handle serviceHandle, void* buffer, u32 size);
/** /**
* @brief Gets the last modified time of a file in an archive. * @brief Gets the last modified time of a file in an archive.
@ -562,8 +572,11 @@ Result FSPXI_ReadFileSHA256(Handle serviceHandle, FSPXI_File file, u32* bytesRea
*/ */
Result FSPXI_WriteFileSHA256(Handle serviceHandle, FSPXI_File file, u32* bytesWritten, u64 offset, const void* writeBuffer, u32 writeBufferSize, void* hashtable, u32 hashtableSize, u32 unk1, u32 unk2); Result FSPXI_WriteFileSHA256(Handle serviceHandle, FSPXI_File file, u32* bytesWritten, u64 offset, const void* writeBuffer, u32 writeBufferSize, void* hashtable, u32 hashtableSize, u32 unk1, u32 unk2);
/// Unknown command 4F /**
Result FSPXI_Unknown0x4F(Handle serviceHandle, u64 unk); * @brief Configures CTRCARD latency emulation.
* @param latency Latency to apply.
*/
Result FSPXI_SetCtrCardLatencyParameter(Handle serviceHandle, u64 latency);
/** /**
* @brief Sets the file system priority. * @brief Sets the file system priority.

View File

@ -361,7 +361,7 @@ Result FSPXI_OpenArchive(Handle serviceHandle, FSPXI_Archive* archive, FS_Archiv
return (Result) cmdbuf[1]; return (Result) cmdbuf[1];
} }
Result FSPXI_Unknown0x13(Handle serviceHandle, FSPXI_Archive archive, u8* out, FS_Path path) Result FSPXI_HasFile(Handle serviceHandle, FSPXI_Archive archive, bool* out, FS_Path path)
{ {
Result ret = 0; Result ret = 0;
u32* cmdbuf = getThreadCommandBuffer(); u32* cmdbuf = getThreadCommandBuffer();
@ -376,12 +376,12 @@ Result FSPXI_Unknown0x13(Handle serviceHandle, FSPXI_Archive archive, u8* out, F
if(R_FAILED(ret = svcSendSyncRequest(serviceHandle))) return ret; if(R_FAILED(ret = svcSendSyncRequest(serviceHandle))) return ret;
if (out) *out = (u8)cmdbuf[2]; if (out) *out = (bool)cmdbuf[2];
return (Result) cmdbuf[1]; return (Result) cmdbuf[1];
} }
Result FSPXI_Unknown0x14(Handle serviceHandle, FSPXI_Archive archive, u32* out, FS_Path path) Result FSPXI_HasDirectory(Handle serviceHandle, FSPXI_Archive archive, bool* out, FS_Path path)
{ {
Result ret = 0; Result ret = 0;
u32* cmdbuf = getThreadCommandBuffer(); u32* cmdbuf = getThreadCommandBuffer();
@ -396,7 +396,7 @@ Result FSPXI_Unknown0x14(Handle serviceHandle, FSPXI_Archive archive, u32* out,
if(R_FAILED(ret = svcSendSyncRequest(serviceHandle))) return ret; if(R_FAILED(ret = svcSendSyncRequest(serviceHandle))) return ret;
if (out) *out = (u8)cmdbuf[2]; if (out) *out = (bool)cmdbuf[2];
return (Result) cmdbuf[1]; return (Result) cmdbuf[1];
} }
@ -1003,7 +1003,7 @@ Result FSPXI_GetLegacyBannerData(Handle serviceHandle, FS_MediaType mediaType, u
return (Result) cmdbuf[1]; return (Result) cmdbuf[1];
} }
Result FSPXI_Unknown0x3D(Handle serviceHandle, u32 unk) Result FSPXI_FormatCardNorDevice(Handle serviceHandle, u32 unk)
{ {
Result ret = 0; Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer(); u32 *cmdbuf = getThreadCommandBuffer();
@ -1141,7 +1141,7 @@ Result FSPXI_GetLegacySubBannerData(Handle serviceHandle, u32 bannerSize, FS_Med
return (Result) cmdbuf[1]; return (Result) cmdbuf[1];
} }
Result FSPXI_Unknown0x47(Handle serviceHandle, void* buf, u32 size) Result FSPXI_GenerateRandomBytes(Handle serviceHandle, void* buf, u32 size)
{ {
Result ret = 0; Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer(); u32 *cmdbuf = getThreadCommandBuffer();
@ -1289,14 +1289,14 @@ Result FSPXI_WriteFileSHA256(Handle serviceHandle, FSPXI_File file, u32* bytesWr
return (Result) cmdbuf[1]; return (Result) cmdbuf[1];
} }
Result FSPXI_Unknown0x4F(Handle serviceHandle, u64 unk) Result FSPXI_SetCtrCardLatencyParameter(Handle serviceHandle, u64 latency)
{ {
Result ret = 0; Result ret = 0;
u32 *cmdbuf = getThreadCommandBuffer(); u32 *cmdbuf = getThreadCommandBuffer();
cmdbuf[0] = IPC_MakeHeader(0x4F, 2, 0); // 0x004F0080 cmdbuf[0] = IPC_MakeHeader(0x4F, 2, 0); // 0x004F0080
cmdbuf[1] = (u32) unk; cmdbuf[1] = (u32) latency;
cmdbuf[2] = (u32) (unk >> 32); cmdbuf[2] = (u32) (latency >> 32);
if(R_FAILED(ret = svcSendSyncRequest(serviceHandle))) return ret; if(R_FAILED(ret = svcSendSyncRequest(serviceHandle))) return ret;