summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/hid/controllers/npad.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-09-30hid: Stub HomeButtonInputProtection service commandsMorph1-0/+9
- Used in 1-2 Switch. Given that we do not emulate the functionality of the home button yet, we can stub this for now.
2020-09-24Use different timing for motiongerman1-73/+129
2020-09-18hid: Implement Get/SetNpadHandheldActivationModeMorph1-0/+8
- Used in Clubhouse Games: 51 Worldwide Classics
2020-09-05configure_input: Hook up the motion button and checkboxMorph1-1/+1
This allows toggling motion on or off, and allows access to the motion configuration. Also changes the [waiting] text for motion buttons to Shake! as this is how motion is connected to a player.
2020-09-05Add cemu hook changes related to PR #4609german1-2/+1
2020-09-05Remove RealMotionDevicegerman1-2/+3
2020-09-05controllers/npad: Simplify motion entry assignmentMorph1-29/+18
Simplifies the motion assignment in the Dual Joycon entry and assigns index 1 of the motion entry (Motion 2) for the right joycon.
2020-09-05Include HID and configuration changes related to motiongerman1-0/+117
2020-09-04hid: Implement MergeSingleJoyasDualJoyMorph1-0/+16
- Used in multiple games such as Super Mario Odyssey.
2020-09-04applets/controller: Implement fallback applet for the SDL frontendMorph1-88/+0
Implement the fallback applet for the SDL frontend, connecting only the minimum amount of players required.
2020-09-04Project Mjölnir: Part 2 - Controller AppletMorph1-10/+18
Co-authored-by: Its-Rei <kupfel@gmail.com>
2020-08-26controllers/npad: Fix inconsistencies with controller connection statusesMorph1-1/+7
2020-08-26controllers/npad: Fix LibNX controller connection statusesMorph1-1/+9
This allows homebrew applications to be able to properly detect connected controllers.
2020-08-26controllers/npad: Fix LedPattern for P1-4Morph1-3/+3
2020-08-26Project Mjölnir: Part 1Morph1-114/+99
Co-authored-by: James Rowe <jroweboy@gmail.com> Co-authored-by: Its-Rei <kupfel@gmail.com>
2020-08-14core: Resolve several -Wextra-semi warningsLioncash1-2/+2
We can amend one of the cascade macros to require semicolons in order to compile. In other cases, we can just remove the superfluous semicolons.
2020-06-27General: Recover Prometheus project from harddrive failure Fernando Sahmkow1-1/+1
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host Timing, Reworks the Kernel's Scheduler, Introduce Idle State and Suspended State, Recreates the bootmanager, Initializes Multicore system.
2020-06-21hid: Implement Get/ResetGyroscopeZeroDriftModeMorph1-0/+8
- Used by Captain Toad Treasure Tracker
2020-06-21Clang FormattingAmeer1-26/+16
2020-06-21GC Adapter ImplementationAmeer1-16/+26
2020-04-20npad: Lower log level for VibrateController to DebugFearlessTobi1-1/+1
2020-04-18service: hid: npad: Fix implicit fallthrough errors.bunnei1-0/+2
2020-02-18analog_from_button get direction implementationCJBok1-5/+5
2020-01-15Moved analog direction logic to sdl_implCJBok1-9/+22
2020-01-14Corrected directional states sensitivityCJBok1-9/+9
2020-01-09hid: Fix analog sticks directional statesCJBok1-12/+12
2019-11-25kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. (#3154)bunnei1-2/+1
* kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. - See https://github.com/citra-emu/citra/pull/4710 for details.
2019-11-03kernel: events: Remove ResetType::Automatic.bunnei1-1/+1
- This does not actually seem to exist in the real kernel - games reset these automatically. # Conflicts: # src/core/hle/service/am/applets/applets.cpp # src/core/hle/service/filesystem/fsp_srv.cpp
2019-10-18hid/npad: Fix incorrect connection boolean value in ConnectAllDisconnectedControllers()Lioncash1-1/+1
We should be setting the connection state to true, otherwise we aren't actually making the controllers connected like the function name indicates.
2019-10-18hid/npad: Add missing break in default caseLioncash1-0/+1
While not an issue, it does prevent fallthrough from occurring if anything is ever added after this case (unlikely to occur, but this turns a trivial "should not cause issues" into a definite "won't cause issues).
2019-10-18hid/npad: Replace std::for_each with ranged for loopsLioncash1-13/+12
Performs the same behavior, but is built into the core language itself. No functional change.
2019-10-18hid/npad: Remove redundant non-const variant of IsControllerSupported()Lioncash1-33/+5
The const qualified variant can also be called in non-const contexts, so we can remove the non-const variant to eliminate a bit of code duplication.
2019-10-05service/hid: Silence -Wunused and -WswitchReinUsesLisp1-2/+6
2019-09-24Signal styleset changes at a better timeDavid Marcec1-8/+2
We should signal when a net controller is added and our event should be manual, not automatic.
2019-09-22removed commentDavid Marcec1-1/+0
2019-09-22RebasedDavid Marcec1-8/+15
2019-09-22RebaseDavid Marcec1-2/+2
2019-09-22Deglobalize System: HidDavid Marcec1-2/+2
2019-09-04IsVibrationEnabled() as a const member funcMorph19841-1/+1
2019-09-04Update npad.cppMorph19841-0/+6
2019-07-08addressed issuesDavid Marcec1-6/+7
2019-07-01hid:StartLrAssignmentMode, hid:StopLrAssignmentMode, hid:SwapNpadAssignmentDavid Marcec1-0/+30
StartLrAssignmentMode and StopLrAssignmentMode don't require any implementation as it's just used for showing the screen of changing the controller orientation if the user wishes to do so. Ever since #1634 this has not been needed as users can specify the controller orientation from the config and swap at any time. We store a private member just in case this gets used for anything extra in the future
2019-05-18core/kernel/object: Rename ResetType enum membersLioncash1-1/+1
Renames the members to more accurately indicate what they signify. "OneShot" and "Sticky" are kind of ambiguous identifiers for the reset types, and can be kind of misleading. Automatic and Manual communicate the kind of reset type in a clearer manner. Either the event is automatically reset, or it isn't and must be manually cleared. The "OneShot" and "Sticky" terminology is just a hold-over from Citra where the kernel had a third type of event reset type known as "Pulse". Given the Switch kernel only has two forms of event reset types, we don't need to keep the old terminology around anymore.
2019-02-16core_timing: Convert core timing into a classLioncash1-2/+3
Gets rid of the largest set of mutable global state within the core. This also paves a way for eliminating usages of GetInstance() on the System class as a follow-up. Note that no behavioral changes have been made, and this simply extracts the functionality into a class. This also has the benefit of making dependencies on the core timing functionality explicit within the relevant interfaces.
2019-02-12core_timing: Rename CoreTiming namespace to Core::TimingLioncash1-1/+1
Places all of the timing-related functionality under the existing Core namespace to keep things consistent, rather than having the timing utilities sitting in its own completely separate namespace.
2018-12-29web_browser: Add bounds checking to applet interfaceZach Hilman1-4/+2
2018-12-28hid: Make Hid service accessible and add GetPressStateZach Hilman1-0/+8
2018-12-26npad: Remove code to invert input in horizontal mode.bunnei1-46/+0
- This was incorrect, the game appears to handle this for us. - Fixes horizontal mode with Puyo Puyo Tetris and Super Mario Odyssey.
2018-12-02Fixed crash with SetNpadModeDavid Marcec1-2/+3
fixed crash due to handheld
2018-11-29kernel/event: Reference ReadableEvent from WritableEventZach Hilman1-7/+5
2018-11-29core: Port all current usages of Event to Readable/WritableEventZach Hilman1-5/+9
2018-11-28npad: Use NPadIdToIndex to prevent invalid array accessZach Hilman1-2/+2
2018-11-26Changed logging to be "Log before execution", Added more error logging, all services should now log on some levelDavid Marcec1-1/+2
2018-11-19hid: Use player-defined controller type as PREFERRED_CONTROLLERZach Hilman1-163/+50
2018-11-19hid/npad: Update NPad to use player controller bindings and typeZach Hilman1-53/+101
2018-11-19Added controller helper funcsDavid Marcec1-0/+31
2018-11-19Left joycon rotation button remappingDavid Marcec1-5/+16
2018-11-19Added automatic npad switch based on supported stylesetsDavid Marcec1-3/+121
2018-11-19Added multi-input support and controller assignment at any portDavid Marcec1-119/+168
2018-11-16Fixed priority switching edge case for handheld (#1675)David1-12/+46
* Fixed priority switching edge case for handheld We accidently used controller index instead of npad id * Moved NPadIdToIndex
2018-11-14hid/npad: Add missing break in switch statement within Controller_NPad::OnUpdate()Lioncash1-0/+1
2018-11-07Updated npad styles on holdtype switchesDavid Marcec1-0/+2
Fixes input for megaman
2018-11-02Fixed HID crash when launching more than 1 game & signaled syleset change eventDavid Marcec1-0/+3
This should fix crashes when launching multiple games in yuzu
2018-10-24npad: Remove unused controller variable from OnInit()Lioncash1-2/+3
This also gets rid of variable shadowing related to the lambda parameter a little bit below this code as well.
2018-10-20Added auto controller switching to supported controllers and single joycon button rotationDavid Marcec1-4/+187
This is a subset of the better-hid-2 changes, this fixes input in various games which don't support dual joycons. This pr will search for the next best controller which is supported by the current game
2018-10-18hid/controller: Remove unused header inclusionsLioncash1-1/+0
swap.h only needs to be present in the header for the type aliases and definitions, it's not actually needed in the cpp files though. input.h is just unused entirely in xpad.h
2018-10-18hid/controller/npad: Remove #pragma once from the cpp fileLioncash1-2/+0
This is only useful in headers.
2018-10-18hid/controller/npad: Move npad_id_list into the cpp fileLioncash1-1/+10
This is just a lookup table, and since it's private, there's nothing really stateful about it, so we can just move it into the cpp file.
2018-10-18hid/controller/npad: Remove unnecessary const from void return typeLioncash1-1/+1
This literally does nothing.
2018-10-18hid/controller: Default the destructors of all controller types in the cpp fileLioncash1-0/+1
These classes are non-trivial and are definitely going to be changed in the future, so we default these to prevent issues with forward declarations, and to keep the compiler from inlining tear-down code.
2018-10-17Using dual joycons as the default controllerDavid Marcec1-68/+47
Reason for the change is to allow both docked and undocked mode to work
2018-10-12WipDavid Marcec1-2/+18
2018-10-11Dynamically decide handheld variant based on supported npad id priorityDavid Marcec1-16/+55
Kirby input still doesn't work, should fix a lot of other games
2018-10-10Added BeginPermitVibrationSession and EndPermitVibrationSessionDavid Marcec1-0/+6
Used by Mario Party
2018-10-10Added GetLedPattern and HandheldVariantDavid Marcec1-2/+34
HandheldVariant is for specific games which expect handheld controllers to be at position 8(kirby), however this doesn't fix all games as some games require handhelds to be at position 0(snipperclips)
2018-10-10Kirby expects handheld controllers to be at position 8David Marcec1-2/+8
2018-10-10Added the ability to "disconnect" individual npadsDavid Marcec1-12/+24
Fixes arms
2018-10-10Addressed changes for better hidDavid Marcec1-49/+52
2018-10-10"Better Hid" rework part 1David Marcec1-0/+336