diff options
| author | 2023-06-15 17:39:01 -0600 | |
|---|---|---|
| committer | 2023-06-15 18:22:13 -0600 | |
| commit | 0c90a0926f4c9a7e9954edf2f2c5cd0d82f2ada8 (patch) | |
| tree | 21ad130a6c66031193c764e6412400ffe9ad6f18 /src/input_common | |
| parent | Merge pull request #10781 from 8bitDream/vcpkg (diff) | |
| download | yuzu-0c90a0926f4c9a7e9954edf2f2c5cd0d82f2ada8.tar.gz yuzu-0c90a0926f4c9a7e9954edf2f2c5cd0d82f2ada8.tar.xz yuzu-0c90a0926f4c9a7e9954edf2f2c5cd0d82f2ada8.zip | |
input_common: Add amiibo with originality signature support
Diffstat (limited to 'src/input_common')
| -rw-r--r-- | src/input_common/drivers/virtual_amiibo.cpp | 2 | ||||
| -rw-r--r-- | src/input_common/drivers/virtual_amiibo.h | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/input_common/drivers/virtual_amiibo.cpp b/src/input_common/drivers/virtual_amiibo.cpp index f8bafe553..6435b8af8 100644 --- a/src/input_common/drivers/virtual_amiibo.cpp +++ b/src/input_common/drivers/virtual_amiibo.cpp | |||
| @@ -82,6 +82,7 @@ VirtualAmiibo::Info VirtualAmiibo::LoadAmiibo(const std::string& filename) { | |||
| 82 | switch (nfc_file.GetSize()) { | 82 | switch (nfc_file.GetSize()) { |
| 83 | case AmiiboSize: | 83 | case AmiiboSize: |
| 84 | case AmiiboSizeWithoutPassword: | 84 | case AmiiboSizeWithoutPassword: |
| 85 | case AmiiboSizeWithSignature: | ||
| 85 | data.resize(AmiiboSize); | 86 | data.resize(AmiiboSize); |
| 86 | if (nfc_file.Read(data) < AmiiboSizeWithoutPassword) { | 87 | if (nfc_file.Read(data) < AmiiboSizeWithoutPassword) { |
| 87 | return Info::NotAnAmiibo; | 88 | return Info::NotAnAmiibo; |
| @@ -109,6 +110,7 @@ VirtualAmiibo::Info VirtualAmiibo::LoadAmiibo(std::span<u8> data) { | |||
| 109 | switch (data.size_bytes()) { | 110 | switch (data.size_bytes()) { |
| 110 | case AmiiboSize: | 111 | case AmiiboSize: |
| 111 | case AmiiboSizeWithoutPassword: | 112 | case AmiiboSizeWithoutPassword: |
| 113 | case AmiiboSizeWithSignature: | ||
| 112 | nfc_data.resize(AmiiboSize); | 114 | nfc_data.resize(AmiiboSize); |
| 113 | break; | 115 | break; |
| 114 | case MifareSize: | 116 | case MifareSize: |
diff --git a/src/input_common/drivers/virtual_amiibo.h b/src/input_common/drivers/virtual_amiibo.h index 34e97cd91..09ca09e68 100644 --- a/src/input_common/drivers/virtual_amiibo.h +++ b/src/input_common/drivers/virtual_amiibo.h | |||
| @@ -57,6 +57,7 @@ public: | |||
| 57 | private: | 57 | private: |
| 58 | static constexpr std::size_t AmiiboSize = 0x21C; | 58 | static constexpr std::size_t AmiiboSize = 0x21C; |
| 59 | static constexpr std::size_t AmiiboSizeWithoutPassword = AmiiboSize - 0x8; | 59 | static constexpr std::size_t AmiiboSizeWithoutPassword = AmiiboSize - 0x8; |
| 60 | static constexpr std::size_t AmiiboSizeWithSignature = AmiiboSize + 0x20; | ||
| 60 | static constexpr std::size_t MifareSize = 0x400; | 61 | static constexpr std::size_t MifareSize = 0x400; |
| 61 | 62 | ||
| 62 | std::string file_path{}; | 63 | std::string file_path{}; |