mirror of
https://github.com/PabloMK7/citra.git
synced 2025-10-11 20:10:03 +00:00
Use IPC:MakeHeader instead of hardcoded raw values for IPC command tables. (#6453)
* Use IPC:MakeHeader instead of hardcoded values for IPC command tables. * Use u32 instead of unsigned int in MakeHeader function Co-authored-by: SachinVin <26602104+SachinVin@users.noreply.github.com> * Fix clang format --------- Co-authored-by: SachinVin <26602104+SachinVin@users.noreply.github.com>
This commit is contained in:
parent
9bd8c9290b
commit
63bc0b59bb
74 changed files with 1983 additions and 1896 deletions
|
@ -891,117 +891,119 @@ ResultVal<u16> FS_USER::GetSpecialContentIndexFromTMD(MediaType media_type, u64
|
|||
FS_USER::FS_USER(Core::System& system)
|
||||
: ServiceFramework("fs:USER", 30), system(system), archives(system.ArchiveManager()) {
|
||||
static const FunctionInfo functions[] = {
|
||||
{0x000100C6, nullptr, "Dummy1"},
|
||||
{0x040100C4, nullptr, "Control"},
|
||||
{0x08010002, &FS_USER::Initialize, "Initialize"},
|
||||
{0x080201C2, &FS_USER::OpenFile, "OpenFile"},
|
||||
{0x08030204, &FS_USER::OpenFileDirectly, "OpenFileDirectly"},
|
||||
{0x08040142, &FS_USER::DeleteFile, "DeleteFile"},
|
||||
{0x08050244, &FS_USER::RenameFile, "RenameFile"},
|
||||
{0x08060142, &FS_USER::DeleteDirectory, "DeleteDirectory"},
|
||||
{0x08070142, &FS_USER::DeleteDirectoryRecursively, "DeleteDirectoryRecursively"},
|
||||
{0x08080202, &FS_USER::CreateFile, "CreateFile"},
|
||||
{0x08090182, &FS_USER::CreateDirectory, "CreateDirectory"},
|
||||
{0x080A0244, &FS_USER::RenameDirectory, "RenameDirectory"},
|
||||
{0x080B0102, &FS_USER::OpenDirectory, "OpenDirectory"},
|
||||
{0x080C00C2, &FS_USER::OpenArchive, "OpenArchive"},
|
||||
{0x080D0144, nullptr, "ControlArchive"},
|
||||
{0x080E0080, &FS_USER::CloseArchive, "CloseArchive"},
|
||||
{0x080F0180, &FS_USER::FormatThisUserSaveData, "FormatThisUserSaveData"},
|
||||
{0x08100200, &FS_USER::CreateLegacySystemSaveData, "CreateLegacySystemSaveData"},
|
||||
{0x08110040, nullptr, "DeleteSystemSaveData"},
|
||||
{0x08120080, &FS_USER::GetFreeBytes, "GetFreeBytes"},
|
||||
{0x08130000, nullptr, "GetCardType"},
|
||||
{0x08140000, &FS_USER::GetSdmcArchiveResource, "GetSdmcArchiveResource"},
|
||||
{0x08150000, &FS_USER::GetNandArchiveResource, "GetNandArchiveResource"},
|
||||
{0x08160000, nullptr, "GetSdmcFatfsError"},
|
||||
{0x08170000, &FS_USER::IsSdmcDetected, "IsSdmcDetected"},
|
||||
{0x08180000, &FS_USER::IsSdmcWriteable, "IsSdmcWritable"},
|
||||
{0x08190042, nullptr, "GetSdmcCid"},
|
||||
{0x081A0042, nullptr, "GetNandCid"},
|
||||
{0x081B0000, nullptr, "GetSdmcSpeedInfo"},
|
||||
{0x081C0000, nullptr, "GetNandSpeedInfo"},
|
||||
{0x081D0042, nullptr, "GetSdmcLog"},
|
||||
{0x081E0042, nullptr, "GetNandLog"},
|
||||
{0x081F0000, nullptr, "ClearSdmcLog"},
|
||||
{0x08200000, nullptr, "ClearNandLog"},
|
||||
{0x08210000, &FS_USER::CardSlotIsInserted, "CardSlotIsInserted"},
|
||||
{0x08220000, nullptr, "CardSlotPowerOn"},
|
||||
{0x08230000, nullptr, "CardSlotPowerOff"},
|
||||
{0x08240000, nullptr, "CardSlotGetCardIFPowerStatus"},
|
||||
{0x08250040, nullptr, "CardNorDirectCommand"},
|
||||
{0x08260080, nullptr, "CardNorDirectCommandWithAddress"},
|
||||
{0x08270082, nullptr, "CardNorDirectRead"},
|
||||
{0x082800C2, nullptr, "CardNorDirectReadWithAddress"},
|
||||
{0x08290082, nullptr, "CardNorDirectWrite"},
|
||||
{0x082A00C2, nullptr, "CardNorDirectWriteWithAddress"},
|
||||
{0x082B00C2, nullptr, "CardNorDirectRead_4xIO"},
|
||||
{0x082C0082, nullptr, "CardNorDirectCpuWriteWithoutVerify"},
|
||||
{0x082D0040, nullptr, "CardNorDirectSectorEraseWithoutVerify"},
|
||||
{0x082E0040, nullptr, "GetProductInfo"},
|
||||
{0x082F0040, &FS_USER::GetProgramLaunchInfo, "GetProgramLaunchInfo"},
|
||||
{0x08300182, &FS_USER::ObsoletedCreateExtSaveData, "Obsoleted_3_0_CreateExtSaveData"},
|
||||
{0x08310180, nullptr, "CreateSharedExtSaveData"},
|
||||
{0x08320102, nullptr, "ReadExtSaveDataIcon"},
|
||||
{0x08330082, nullptr, "EnumerateExtSaveData"},
|
||||
{0x08340082, nullptr, "EnumerateSharedExtSaveData"},
|
||||
{0x08350080, &FS_USER::ObsoletedDeleteExtSaveData, "Obsoleted_3_0_DeleteExtSaveData"},
|
||||
{0x08360080, nullptr, "DeleteSharedExtSaveData"},
|
||||
{0x08370040, nullptr, "SetCardSpiBaudRate"},
|
||||
{0x08380040, nullptr, "SetCardSpiBusMode"},
|
||||
{0x08390000, nullptr, "SendInitializeInfoTo9"},
|
||||
{0x083A0100, &FS_USER::GetSpecialContentIndex, "GetSpecialContentIndex"},
|
||||
{0x083B00C2, nullptr, "GetLegacyRomHeader"},
|
||||
{0x083C00C2, nullptr, "GetLegacyBannerData"},
|
||||
{0x083D0100, nullptr, "CheckAuthorityToAccessExtSaveData"},
|
||||
{0x083E00C2, nullptr, "QueryTotalQuotaSize"},
|
||||
{0x083F00C0, nullptr, "GetExtDataBlockSize"},
|
||||
{0x08400040, nullptr, "AbnegateAccessRight"},
|
||||
{0x08410000, nullptr, "DeleteSdmcRoot"},
|
||||
{0x08420040, nullptr, "DeleteAllExtSaveDataOnNand"},
|
||||
{0x08430000, nullptr, "InitializeCtrFileSystem"},
|
||||
{0x08440000, nullptr, "CreateSeed"},
|
||||
{0x084500C2, &FS_USER::GetFormatInfo, "GetFormatInfo"},
|
||||
{0x08460102, nullptr, "GetLegacyRomHeader2"},
|
||||
{0x08470180, nullptr, "FormatCtrCardUserSaveData"},
|
||||
{0x08480042, nullptr, "GetSdmcCtrRootPath"},
|
||||
{0x08490040, &FS_USER::GetArchiveResource, "GetArchiveResource"},
|
||||
{0x084A0002, nullptr, "ExportIntegrityVerificationSeed"},
|
||||
{0x084B0002, nullptr, "ImportIntegrityVerificationSeed"},
|
||||
{0x084C0242, &FS_USER::FormatSaveData, "FormatSaveData"},
|
||||
{0x084D0102, nullptr, "GetLegacySubBannerData"},
|
||||
{0x084E0342, nullptr, "UpdateSha256Context"},
|
||||
{0x084F0102, nullptr, "ReadSpecialFile"},
|
||||
{0x08500040, nullptr, "GetSpecialFileSize"},
|
||||
{0x08510242, &FS_USER::CreateExtSaveData, "CreateExtSaveData"},
|
||||
{0x08520100, &FS_USER::DeleteExtSaveData, "DeleteExtSaveData"},
|
||||
{0x08530142, nullptr, "ReadExtSaveDataIcon"},
|
||||
{0x085400C0, nullptr, "GetExtDataBlockSize"},
|
||||
{0x08550102, nullptr, "EnumerateExtSaveData"},
|
||||
{0x08560240, &FS_USER::CreateSystemSaveData, "CreateSystemSaveData"},
|
||||
{0x08570080, &FS_USER::DeleteSystemSaveData, "DeleteSystemSaveData"},
|
||||
{0x08580000, nullptr, "StartDeviceMoveAsSource"},
|
||||
{0x08590200, nullptr, "StartDeviceMoveAsDestination"},
|
||||
{0x085A00C0, nullptr, "SetArchivePriority"},
|
||||
{0x085B0080, nullptr, "GetArchivePriority"},
|
||||
{0x085C00C0, nullptr, "SetCtrCardLatencyParameter"},
|
||||
{0x085D01C0, nullptr, "SetFsCompatibilityInfo"},
|
||||
{0x085E0040, nullptr, "ResetCardCompatibilityParameter"},
|
||||
{0x085F0040, nullptr, "SwitchCleanupInvalidSaveData"},
|
||||
{0x08600042, nullptr, "EnumerateSystemSaveData"},
|
||||
{0x08610042, &FS_USER::InitializeWithSdkVersion, "InitializeWithSdkVersion"},
|
||||
{0x08620040, &FS_USER::SetPriority, "SetPriority"},
|
||||
{0x08630000, &FS_USER::GetPriority, "GetPriority"},
|
||||
{0x08640000, nullptr, "GetNandInfo"},
|
||||
{0x08650140, &FS_USER::SetSaveDataSecureValue, "SetSaveDataSecureValue"},
|
||||
{0x086600C0, &FS_USER::GetSaveDataSecureValue, "GetSaveDataSecureValue"},
|
||||
{0x086700C4, nullptr, "ControlSecureSave"},
|
||||
{0x08680000, nullptr, "GetMediaType"},
|
||||
{0x08690000, nullptr, "GetNandEraseCount"},
|
||||
{0x086A0082, nullptr, "ReadNandReport"},
|
||||
{0x087A0180, &FS_USER::AddSeed, "AddSeed"},
|
||||
{0x087D0000, &FS_USER::GetNumSeeds, "GetNumSeeds"},
|
||||
{0x088600C0, nullptr, "CheckUpdatedDat"},
|
||||
// clang-format off
|
||||
{IPC::MakeHeader(0x0001, 3, 6), nullptr, "Dummy1"},
|
||||
{IPC::MakeHeader(0x0401, 3, 4), nullptr, "Control"},
|
||||
{IPC::MakeHeader(0x0801, 0, 2), &FS_USER::Initialize, "Initialize"},
|
||||
{IPC::MakeHeader(0x0802, 7, 2), &FS_USER::OpenFile, "OpenFile"},
|
||||
{IPC::MakeHeader(0x0803, 8, 4), &FS_USER::OpenFileDirectly, "OpenFileDirectly"},
|
||||
{IPC::MakeHeader(0x0804, 5, 2), &FS_USER::DeleteFile, "DeleteFile"},
|
||||
{IPC::MakeHeader(0x0805, 9, 4), &FS_USER::RenameFile, "RenameFile"},
|
||||
{IPC::MakeHeader(0x0806, 5, 2), &FS_USER::DeleteDirectory, "DeleteDirectory"},
|
||||
{IPC::MakeHeader(0x0807, 5, 2), &FS_USER::DeleteDirectoryRecursively, "DeleteDirectoryRecursively"},
|
||||
{IPC::MakeHeader(0x0808, 8, 2), &FS_USER::CreateFile, "CreateFile"},
|
||||
{IPC::MakeHeader(0x0809, 6, 2), &FS_USER::CreateDirectory, "CreateDirectory"},
|
||||
{IPC::MakeHeader(0x080A, 9, 4), &FS_USER::RenameDirectory, "RenameDirectory"},
|
||||
{IPC::MakeHeader(0x080B, 4, 2), &FS_USER::OpenDirectory, "OpenDirectory"},
|
||||
{IPC::MakeHeader(0x080C, 3, 2), &FS_USER::OpenArchive, "OpenArchive"},
|
||||
{IPC::MakeHeader(0x080D, 5, 4), nullptr, "ControlArchive"},
|
||||
{IPC::MakeHeader(0x080E, 2, 0), &FS_USER::CloseArchive, "CloseArchive"},
|
||||
{IPC::MakeHeader(0x080F, 6, 0), &FS_USER::FormatThisUserSaveData, "FormatThisUserSaveData"},
|
||||
{IPC::MakeHeader(0x0810, 8, 0), &FS_USER::CreateLegacySystemSaveData, "CreateLegacySystemSaveData"},
|
||||
{IPC::MakeHeader(0x0811, 1, 0), nullptr, "DeleteSystemSaveData"},
|
||||
{IPC::MakeHeader(0x0812, 2, 0), &FS_USER::GetFreeBytes, "GetFreeBytes"},
|
||||
{IPC::MakeHeader(0x0813, 0, 0), nullptr, "GetCardType"},
|
||||
{IPC::MakeHeader(0x0814, 0, 0), &FS_USER::GetSdmcArchiveResource, "GetSdmcArchiveResource"},
|
||||
{IPC::MakeHeader(0x0815, 0, 0), &FS_USER::GetNandArchiveResource, "GetNandArchiveResource"},
|
||||
{IPC::MakeHeader(0x0816, 0, 0), nullptr, "GetSdmcFatfsError"},
|
||||
{IPC::MakeHeader(0x0817, 0, 0), &FS_USER::IsSdmcDetected, "IsSdmcDetected"},
|
||||
{IPC::MakeHeader(0x0818, 0, 0), &FS_USER::IsSdmcWriteable, "IsSdmcWritable"},
|
||||
{IPC::MakeHeader(0x0819, 1, 2), nullptr, "GetSdmcCid"},
|
||||
{IPC::MakeHeader(0x081A, 1, 2), nullptr, "GetNandCid"},
|
||||
{IPC::MakeHeader(0x081B, 0, 0), nullptr, "GetSdmcSpeedInfo"},
|
||||
{IPC::MakeHeader(0x081C, 0, 0), nullptr, "GetNandSpeedInfo"},
|
||||
{IPC::MakeHeader(0x081D, 1, 2), nullptr, "GetSdmcLog"},
|
||||
{IPC::MakeHeader(0x081E, 1, 2), nullptr, "GetNandLog"},
|
||||
{IPC::MakeHeader(0x081F, 0, 0), nullptr, "ClearSdmcLog"},
|
||||
{IPC::MakeHeader(0x0820, 0, 0), nullptr, "ClearNandLog"},
|
||||
{IPC::MakeHeader(0x0821, 0, 0), &FS_USER::CardSlotIsInserted, "CardSlotIsInserted"},
|
||||
{IPC::MakeHeader(0x0822, 0, 0), nullptr, "CardSlotPowerOn"},
|
||||
{IPC::MakeHeader(0x0823, 0, 0), nullptr, "CardSlotPowerOff"},
|
||||
{IPC::MakeHeader(0x0824, 0, 0), nullptr, "CardSlotGetCardIFPowerStatus"},
|
||||
{IPC::MakeHeader(0x0825, 1, 0), nullptr, "CardNorDirectCommand"},
|
||||
{IPC::MakeHeader(0x0826, 2, 0), nullptr, "CardNorDirectCommandWithAddress"},
|
||||
{IPC::MakeHeader(0x0827, 2, 2), nullptr, "CardNorDirectRead"},
|
||||
{IPC::MakeHeader(0x0828, 3, 2), nullptr, "CardNorDirectReadWithAddress"},
|
||||
{IPC::MakeHeader(0x0829, 2, 2), nullptr, "CardNorDirectWrite"},
|
||||
{IPC::MakeHeader(0x082A, 3, 2), nullptr, "CardNorDirectWriteWithAddress"},
|
||||
{IPC::MakeHeader(0x082B, 3, 2), nullptr, "CardNorDirectRead_4xIO"},
|
||||
{IPC::MakeHeader(0x082C, 2, 2), nullptr, "CardNorDirectCpuWriteWithoutVerify"},
|
||||
{IPC::MakeHeader(0x082D, 1, 0), nullptr, "CardNorDirectSectorEraseWithoutVerify"},
|
||||
{IPC::MakeHeader(0x082E, 1, 0), nullptr, "GetProductInfo"},
|
||||
{IPC::MakeHeader(0x082F, 1, 0), &FS_USER::GetProgramLaunchInfo, "GetProgramLaunchInfo"},
|
||||
{IPC::MakeHeader(0x0830, 6, 2), &FS_USER::ObsoletedCreateExtSaveData, "Obsoleted_3_0_CreateExtSaveData"},
|
||||
{IPC::MakeHeader(0x0831, 6, 0), nullptr, "CreateSharedExtSaveData"},
|
||||
{IPC::MakeHeader(0x0832, 4, 2), nullptr, "ReadExtSaveDataIcon"},
|
||||
{IPC::MakeHeader(0x0833, 2, 2), nullptr, "EnumerateExtSaveData"},
|
||||
{IPC::MakeHeader(0x0834, 2, 2), nullptr, "EnumerateSharedExtSaveData"},
|
||||
{IPC::MakeHeader(0x0835, 2, 0), &FS_USER::ObsoletedDeleteExtSaveData, "Obsoleted_3_0_DeleteExtSaveData"},
|
||||
{IPC::MakeHeader(0x0836, 2, 0), nullptr, "DeleteSharedExtSaveData"},
|
||||
{IPC::MakeHeader(0x0837, 1, 0), nullptr, "SetCardSpiBaudRate"},
|
||||
{IPC::MakeHeader(0x0838, 1, 0), nullptr, "SetCardSpiBusMode"},
|
||||
{IPC::MakeHeader(0x0839, 0, 0), nullptr, "SendInitializeInfoTo9"},
|
||||
{IPC::MakeHeader(0x083A, 4, 0), &FS_USER::GetSpecialContentIndex, "GetSpecialContentIndex"},
|
||||
{IPC::MakeHeader(0x083B, 3, 2), nullptr, "GetLegacyRomHeader"},
|
||||
{IPC::MakeHeader(0x083C, 3, 2), nullptr, "GetLegacyBannerData"},
|
||||
{IPC::MakeHeader(0x083D, 4, 0), nullptr, "CheckAuthorityToAccessExtSaveData"},
|
||||
{IPC::MakeHeader(0x083E, 3, 2), nullptr, "QueryTotalQuotaSize"},
|
||||
{IPC::MakeHeader(0x083F, 3, 0), nullptr, "GetExtDataBlockSize"},
|
||||
{IPC::MakeHeader(0x0840, 1, 0), nullptr, "AbnegateAccessRight"},
|
||||
{IPC::MakeHeader(0x0841, 0, 0), nullptr, "DeleteSdmcRoot"},
|
||||
{IPC::MakeHeader(0x0842, 1, 0), nullptr, "DeleteAllExtSaveDataOnNand"},
|
||||
{IPC::MakeHeader(0x0843, 0, 0), nullptr, "InitializeCtrFileSystem"},
|
||||
{IPC::MakeHeader(0x0844, 0, 0), nullptr, "CreateSeed"},
|
||||
{IPC::MakeHeader(0x0845, 3, 2), &FS_USER::GetFormatInfo, "GetFormatInfo"},
|
||||
{IPC::MakeHeader(0x0846, 4, 2), nullptr, "GetLegacyRomHeader2"},
|
||||
{IPC::MakeHeader(0x0847, 6, 0), nullptr, "FormatCtrCardUserSaveData"},
|
||||
{IPC::MakeHeader(0x0848, 1, 2), nullptr, "GetSdmcCtrRootPath"},
|
||||
{IPC::MakeHeader(0x0849, 1, 0), &FS_USER::GetArchiveResource, "GetArchiveResource"},
|
||||
{IPC::MakeHeader(0x084A, 0, 2), nullptr, "ExportIntegrityVerificationSeed"},
|
||||
{IPC::MakeHeader(0x084B, 0, 2), nullptr, "ImportIntegrityVerificationSeed"},
|
||||
{IPC::MakeHeader(0x084C, 9, 2), &FS_USER::FormatSaveData, "FormatSaveData"},
|
||||
{IPC::MakeHeader(0x084D, 4, 2), nullptr, "GetLegacySubBannerData"},
|
||||
{IPC::MakeHeader(0x084E, 13, 2), nullptr, "UpdateSha256Context"},
|
||||
{IPC::MakeHeader(0x084F, 4, 2), nullptr, "ReadSpecialFile"},
|
||||
{IPC::MakeHeader(0x0850, 1, 0), nullptr, "GetSpecialFileSize"},
|
||||
{IPC::MakeHeader(0x0851, 9, 2), &FS_USER::CreateExtSaveData, "CreateExtSaveData"},
|
||||
{IPC::MakeHeader(0x0852, 4, 0), &FS_USER::DeleteExtSaveData, "DeleteExtSaveData"},
|
||||
{IPC::MakeHeader(0x0853, 5, 2), nullptr, "ReadExtSaveDataIcon"},
|
||||
{IPC::MakeHeader(0x0854, 3, 0), nullptr, "GetExtDataBlockSize"},
|
||||
{IPC::MakeHeader(0x0855, 4, 2), nullptr, "EnumerateExtSaveData"},
|
||||
{IPC::MakeHeader(0x0856, 9, 0), &FS_USER::CreateSystemSaveData, "CreateSystemSaveData"},
|
||||
{IPC::MakeHeader(0x0857, 2, 0), &FS_USER::DeleteSystemSaveData, "DeleteSystemSaveData"},
|
||||
{IPC::MakeHeader(0x0858, 0, 0), nullptr, "StartDeviceMoveAsSource"},
|
||||
{IPC::MakeHeader(0x0859, 8, 0), nullptr, "StartDeviceMoveAsDestination"},
|
||||
{IPC::MakeHeader(0x085A, 3, 0), nullptr, "SetArchivePriority"},
|
||||
{IPC::MakeHeader(0x085B, 2, 0), nullptr, "GetArchivePriority"},
|
||||
{IPC::MakeHeader(0x085C, 3, 0), nullptr, "SetCtrCardLatencyParameter"},
|
||||
{IPC::MakeHeader(0x085D, 7, 0), nullptr, "SetFsCompatibilityInfo"},
|
||||
{IPC::MakeHeader(0x085E, 1, 0), nullptr, "ResetCardCompatibilityParameter"},
|
||||
{IPC::MakeHeader(0x085F, 1, 0), nullptr, "SwitchCleanupInvalidSaveData"},
|
||||
{IPC::MakeHeader(0x0860, 1, 2), nullptr, "EnumerateSystemSaveData"},
|
||||
{IPC::MakeHeader(0x0861, 1, 2), &FS_USER::InitializeWithSdkVersion, "InitializeWithSdkVersion"},
|
||||
{IPC::MakeHeader(0x0862, 1, 0), &FS_USER::SetPriority, "SetPriority"},
|
||||
{IPC::MakeHeader(0x0863, 0, 0), &FS_USER::GetPriority, "GetPriority"},
|
||||
{IPC::MakeHeader(0x0864, 0, 0), nullptr, "GetNandInfo"},
|
||||
{IPC::MakeHeader(0x0865, 5, 0), &FS_USER::SetSaveDataSecureValue, "SetSaveDataSecureValue"},
|
||||
{IPC::MakeHeader(0x0866, 3, 0), &FS_USER::GetSaveDataSecureValue, "GetSaveDataSecureValue"},
|
||||
{IPC::MakeHeader(0x0867, 3, 4), nullptr, "ControlSecureSave"},
|
||||
{IPC::MakeHeader(0x0868, 0, 0), nullptr, "GetMediaType"},
|
||||
{IPC::MakeHeader(0x0869, 0, 0), nullptr, "GetNandEraseCount"},
|
||||
{IPC::MakeHeader(0x086A, 2, 2), nullptr, "ReadNandReport"},
|
||||
{IPC::MakeHeader(0x087A, 6, 0), &FS_USER::AddSeed, "AddSeed"},
|
||||
{IPC::MakeHeader(0x087D, 0, 0), &FS_USER::GetNumSeeds, "GetNumSeeds"},
|
||||
{IPC::MakeHeader(0x0886, 3, 0), nullptr, "CheckUpdatedDat"},
|
||||
// clang-format on
|
||||
};
|
||||
RegisterHandlers(functions);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue