mirror of
https://github.com/yuzu-emu/yuzu.git
synced 2025-06-14 09:18:58 -05:00
input_common: Make amiibo scanning less demanding
This commit is contained in:
@ -72,6 +72,11 @@ DriverResult NfcProtocol::StartNFCPollingMode() {
|
||||
}
|
||||
|
||||
DriverResult NfcProtocol::ScanAmiibo(std::vector<u8>& data) {
|
||||
if (update_counter++ < AMIIBO_UPDATE_DELAY) {
|
||||
return DriverResult::Delayed;
|
||||
}
|
||||
update_counter = 0;
|
||||
|
||||
LOG_DEBUG(Input, "Start NFC pooling Mode");
|
||||
ScopedSetBlocking sb(this);
|
||||
DriverResult result{DriverResult::Success};
|
||||
@ -87,7 +92,7 @@ DriverResult NfcProtocol::ScanAmiibo(std::vector<u8>& data) {
|
||||
result = WaitUntilNfcIsReady();
|
||||
}
|
||||
if (result == DriverResult::Success) {
|
||||
result = StartPolling(tag_data);
|
||||
result = StartPolling(tag_data, 7);
|
||||
}
|
||||
if (result == DriverResult::Success) {
|
||||
result = GetAmiiboData(data);
|
||||
@ -129,9 +134,8 @@ DriverResult NfcProtocol::WaitUntilNfcIsReady() {
|
||||
return DriverResult::Success;
|
||||
}
|
||||
|
||||
DriverResult NfcProtocol::StartPolling(TagFoundData& data) {
|
||||
DriverResult NfcProtocol::StartPolling(TagFoundData& data, std::size_t timeout_limit) {
|
||||
LOG_DEBUG(Input, "Start Polling for tag");
|
||||
constexpr std::size_t timeout_limit = 7;
|
||||
MCUCommandResponse output{};
|
||||
std::size_t tries = 0;
|
||||
|
||||
|
Reference in New Issue
Block a user