mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2024-11-23 04:12:02 +00:00
Merge pull request #542 from leo60228/master
Allow pressing buttons on all controllers in loader (closes #541)
This commit is contained in:
commit
13a1566b4e
4 changed files with 22 additions and 6 deletions
|
@ -460,7 +460,11 @@ Result Utils::GetKeysHeld(u64 *keys) {
|
|||
}
|
||||
|
||||
hidScanInput();
|
||||
*keys = hidKeysHeld(CONTROLLER_P1_AUTO);
|
||||
*keys = 0;
|
||||
|
||||
for (int controller = 0; controller < 10; controller++) {
|
||||
*keys |= hidKeysHeld((HidControllerID) controller);
|
||||
}
|
||||
|
||||
return ResultSuccess;
|
||||
}
|
||||
|
|
|
@ -26,7 +26,11 @@ Result HidManagement::GetKeysDown(u64 *keys) {
|
|||
std::scoped_lock<HosMutex> lk(g_hid_keys_down_lock);
|
||||
|
||||
hidScanInput();
|
||||
*keys = hidKeysHeld(CONTROLLER_P1_AUTO);
|
||||
*keys = 0;
|
||||
|
||||
for (int controller = 0; controller < 10; controller++) {
|
||||
*keys |= hidKeysHeld((HidControllerID) controller);
|
||||
}
|
||||
|
||||
return ResultSuccess;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,7 +36,11 @@ Result HidManagement::GetKeysHeld(u64 *keys) {
|
|||
}
|
||||
|
||||
hidScanInput();
|
||||
*keys = hidKeysHeld(CONTROLLER_P1_AUTO);
|
||||
*keys = 0;
|
||||
|
||||
for (int controller = 0; controller < 10; controller++) {
|
||||
*keys |= hidKeysHeld((HidControllerID) controller);
|
||||
}
|
||||
|
||||
return ResultSuccess;
|
||||
}
|
||||
|
|
|
@ -79,8 +79,12 @@ int main(int argc, char **argv)
|
|||
//Scan all the inputs. This should be done once for each frame
|
||||
hidScanInput();
|
||||
|
||||
//hidKeysDown returns information about which buttons have been just pressed (and they weren't in the previous frame)
|
||||
u64 kDown = hidKeysDown(CONTROLLER_P1_AUTO);
|
||||
u64 kDown = 0;
|
||||
|
||||
for (int controller = 0; controller < 10; controller++) {
|
||||
// hidKeysDown returns information about which buttons have been just pressed (and they weren't in the previous frame)
|
||||
kDown |= hidKeysDown((HidControllerID) controller);
|
||||
}
|
||||
|
||||
if (can_reboot && kDown & KEY_MINUS) {
|
||||
reboot_to_payload();
|
||||
|
|
Loading…
Reference in a new issue