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:
PabloMK7 2023-04-28 07:31:03 +02:00 committed by GitHub
parent 9bd8c9290b
commit 63bc0b59bb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
74 changed files with 1983 additions and 1896 deletions

View file

@ -11,35 +11,35 @@ namespace Service::NFC {
NFC_M::NFC_M(std::shared_ptr<Module> nfc) : Module::Interface(std::move(nfc), "nfc:m", 1) {
static const FunctionInfo functions[] = {
// clang-format off
// nfc:u shared commands
{0x00010040, &NFC_M::Initialize, "Initialize"},
{0x00020040, &NFC_M::Shutdown, "Shutdown"},
{0x00030000, &NFC_M::StartCommunication, "StartCommunication"},
{0x00040000, &NFC_M::StopCommunication, "StopCommunication"},
{0x00050040, &NFC_M::StartTagScanning, "StartTagScanning"},
{0x00060000, &NFC_M::StopTagScanning, "StopTagScanning"},
{0x00070000, &NFC_M::LoadAmiiboData, "LoadAmiiboData"},
{0x00080000, &NFC_M::ResetTagScanState, "ResetTagScanState"},
{0x00090002, nullptr, "UpdateStoredAmiiboData"},
{0x000B0000, &NFC_M::GetTagInRangeEvent, "GetTagInRangeEvent"},
{0x000C0000, &NFC_M::GetTagOutOfRangeEvent, "GetTagOutOfRangeEvent"},
{0x000D0000, &NFC_M::GetTagState, "GetTagState"},
{0x000F0000, &NFC_M::CommunicationGetStatus, "CommunicationGetStatus"},
{0x00100000, nullptr, "GetTagInfo2"},
{0x00110000, &NFC_M::GetTagInfo, "GetTagInfo"},
{0x00120000, nullptr, "CommunicationGetResult"},
{0x00130040, nullptr, "OpenAppData"},
{0x00140384, nullptr, "InitializeWriteAppData"},
{0x00150040, nullptr, "ReadAppData"},
{0x00160242, nullptr, "WriteAppData"},
{0x00170000, nullptr, "GetAmiiboSettings"},
{0x00180000, &NFC_M::GetAmiiboConfig, "GetAmiiboConfig"},
{0x00190000, nullptr, "GetAppDataInitStruct"},
{0x001A0000, &NFC_M::Unknown0x1A, "Unknown0x1A"},
{0x001B0000, &NFC_M::GetIdentificationBlock, "GetIdentificationBlock"},
// clang-format off
{IPC::MakeHeader(0x0001, 1, 0), &NFC_M::Initialize, "Initialize"},
{IPC::MakeHeader(0x0002, 1, 0), &NFC_M::Shutdown, "Shutdown"},
{IPC::MakeHeader(0x0003, 0, 0), &NFC_M::StartCommunication, "StartCommunication"},
{IPC::MakeHeader(0x0004, 0, 0), &NFC_M::StopCommunication, "StopCommunication"},
{IPC::MakeHeader(0x0005, 1, 0), &NFC_M::StartTagScanning, "StartTagScanning"},
{IPC::MakeHeader(0x0006, 0, 0), &NFC_M::StopTagScanning, "StopTagScanning"},
{IPC::MakeHeader(0x0007, 0, 0), &NFC_M::LoadAmiiboData, "LoadAmiiboData"},
{IPC::MakeHeader(0x0008, 0, 0), &NFC_M::ResetTagScanState, "ResetTagScanState"},
{IPC::MakeHeader(0x0009, 0, 2), nullptr, "UpdateStoredAmiiboData"},
{IPC::MakeHeader(0x000B, 0, 0), &NFC_M::GetTagInRangeEvent, "GetTagInRangeEvent"},
{IPC::MakeHeader(0x000C, 0, 0), &NFC_M::GetTagOutOfRangeEvent, "GetTagOutOfRangeEvent"},
{IPC::MakeHeader(0x000D, 0, 0), &NFC_M::GetTagState, "GetTagState"},
{IPC::MakeHeader(0x000F, 0, 0), &NFC_M::CommunicationGetStatus, "CommunicationGetStatus"},
{IPC::MakeHeader(0x0010, 0, 0), nullptr, "GetTagInfo2"},
{IPC::MakeHeader(0x0011, 0, 0), &NFC_M::GetTagInfo, "GetTagInfo"},
{IPC::MakeHeader(0x0012, 0, 0), nullptr, "CommunicationGetResult"},
{IPC::MakeHeader(0x0013, 1, 0), nullptr, "OpenAppData"},
{IPC::MakeHeader(0x0014, 14, 4), nullptr, "InitializeWriteAppData"},
{IPC::MakeHeader(0x0015, 1, 0), nullptr, "ReadAppData"},
{IPC::MakeHeader(0x0016, 9, 2), nullptr, "WriteAppData"},
{IPC::MakeHeader(0x0017, 0, 0), nullptr, "GetAmiiboSettings"},
{IPC::MakeHeader(0x0018, 0, 0), &NFC_M::GetAmiiboConfig, "GetAmiiboConfig"},
{IPC::MakeHeader(0x0019, 0, 0), nullptr, "GetAppDataInitStruct"},
{IPC::MakeHeader(0x001A, 0, 0), &NFC_M::Unknown0x1A, "Unknown0x1A"},
{IPC::MakeHeader(0x001B, 0, 0), &NFC_M::GetIdentificationBlock, "GetIdentificationBlock"},
// nfc:m
{0x04040A40, nullptr, "SetAmiiboSettings"}
{IPC::MakeHeader(0x0404, 41, 0), nullptr, "SetAmiiboSettings"}
// clang-format on
};
RegisterHandlers(functions);

View file

@ -12,31 +12,31 @@ namespace Service::NFC {
NFC_U::NFC_U(std::shared_ptr<Module> nfc) : Module::Interface(std::move(nfc), "nfc:u", 1) {
static const FunctionInfo functions[] = {
// clang-format off
{0x00010040, &NFC_U::Initialize, "Initialize"},
{0x00020040, &NFC_U::Shutdown, "Shutdown"},
{0x00030000, &NFC_U::StartCommunication, "StartCommunication"},
{0x00040000, &NFC_U::StopCommunication, "StopCommunication"},
{0x00050040, &NFC_U::StartTagScanning, "StartTagScanning"},
{0x00060000, &NFC_U::StopTagScanning, "StopTagScanning"},
{0x00070000, &NFC_U::LoadAmiiboData, "LoadAmiiboData"},
{0x00080000, &NFC_U::ResetTagScanState, "ResetTagScanState"},
{0x00090002, nullptr, "UpdateStoredAmiiboData"},
{0x000B0000, &NFC_U::GetTagInRangeEvent, "GetTagInRangeEvent"},
{0x000C0000, &NFC_U::GetTagOutOfRangeEvent, "GetTagOutOfRangeEvent"},
{0x000D0000, &NFC_U::GetTagState, "GetTagState"},
{0x000F0000, &NFC_U::CommunicationGetStatus, "CommunicationGetStatus"},
{0x00100000, nullptr, "GetTagInfo2"},
{0x00110000, &NFC_U::GetTagInfo, "GetTagInfo"},
{0x00120000, nullptr, "CommunicationGetResult"},
{0x00130040, nullptr, "OpenAppData"},
{0x00140384, nullptr, "InitializeWriteAppData"},
{0x00150040, nullptr, "ReadAppData"},
{0x00160242, nullptr, "WriteAppData"},
{0x00170000, nullptr, "GetAmiiboSettings"},
{0x00180000, &NFC_U::GetAmiiboConfig, "GetAmiiboConfig"},
{0x00190000, nullptr, "GetAppDataInitStruct"},
{0x001A0000, &NFC_U::Unknown0x1A, "Unknown0x1A"},
{0x001B0000, &NFC_U::GetIdentificationBlock, "GetIdentificationBlock"},
{IPC::MakeHeader(0x0001, 1, 0), &NFC_U::Initialize, "Initialize"},
{IPC::MakeHeader(0x0002, 1, 0), &NFC_U::Shutdown, "Shutdown"},
{IPC::MakeHeader(0x0003, 0, 0), &NFC_U::StartCommunication, "StartCommunication"},
{IPC::MakeHeader(0x0004, 0, 0), &NFC_U::StopCommunication, "StopCommunication"},
{IPC::MakeHeader(0x0005, 1, 0), &NFC_U::StartTagScanning, "StartTagScanning"},
{IPC::MakeHeader(0x0006, 0, 0), &NFC_U::StopTagScanning, "StopTagScanning"},
{IPC::MakeHeader(0x0007, 0, 0), &NFC_U::LoadAmiiboData, "LoadAmiiboData"},
{IPC::MakeHeader(0x0008, 0, 0), &NFC_U::ResetTagScanState, "ResetTagScanState"},
{IPC::MakeHeader(0x0009, 0, 2), nullptr, "UpdateStoredAmiiboData"},
{IPC::MakeHeader(0x000B, 0, 0), &NFC_U::GetTagInRangeEvent, "GetTagInRangeEvent"},
{IPC::MakeHeader(0x000C, 0, 0), &NFC_U::GetTagOutOfRangeEvent, "GetTagOutOfRangeEvent"},
{IPC::MakeHeader(0x000D, 0, 0), &NFC_U::GetTagState, "GetTagState"},
{IPC::MakeHeader(0x000F, 0, 0), &NFC_U::CommunicationGetStatus, "CommunicationGetStatus"},
{IPC::MakeHeader(0x0010, 0, 0), nullptr, "GetTagInfo2"},
{IPC::MakeHeader(0x0011, 0, 0), &NFC_U::GetTagInfo, "GetTagInfo"},
{IPC::MakeHeader(0x0012, 0, 0), nullptr, "CommunicationGetResult"},
{IPC::MakeHeader(0x0013, 1, 0), nullptr, "OpenAppData"},
{IPC::MakeHeader(0x0014, 14, 4), nullptr, "InitializeWriteAppData"},
{IPC::MakeHeader(0x0015, 1, 0), nullptr, "ReadAppData"},
{IPC::MakeHeader(0x0016, 9, 2), nullptr, "WriteAppData"},
{IPC::MakeHeader(0x0017, 0, 0), nullptr, "GetAmiiboSettings"},
{IPC::MakeHeader(0x0018, 0, 0), &NFC_U::GetAmiiboConfig, "GetAmiiboConfig"},
{IPC::MakeHeader(0x0019, 0, 0), nullptr, "GetAppDataInitStruct"},
{IPC::MakeHeader(0x001A, 0, 0), &NFC_U::Unknown0x1A, "Unknown0x1A"},
{IPC::MakeHeader(0x001B, 0, 0), &NFC_U::GetIdentificationBlock, "GetIdentificationBlock"},
// clang-format on
};
RegisterHandlers(functions);