summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/hid/controllers/npad.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-11-21service: hid: Create appropriate hid resourcesNarr the Reg1-488/+98
2023-11-19Implemented qlaunch version of the controller appletFrozenAra1-0/+16
2023-11-12core: hid: Split SL and SR buttonsgerman771-2/+4
2023-11-03core: hid: Fix wrong battery valuesgerman771-3/+3
2023-09-24service: hid: Set last connected controller as activegerman771-0/+1
2023-09-16service: hid: Implement ApplyNpadSystemCommonPolicygerman771-0/+25
2023-09-16hid: service: Remove outdated field from npadgerman771-11/+10
2023-09-16hid: service: Implement Last active Npadgerman771-0/+4
2023-09-16service: hid: Ensure state is correctgerman771-8/+8
2023-08-23general: Use console mode helper across projectlat9nq1-1/+1
2023-08-22general: Convert use_docked_mode to an enumerationlat9nq1-1/+1
Allows some special interactions with it in the Qt frontend.
2023-05-15service: hid: Use span instead of vector referencegerman771-2/+2
2023-05-08core: hid: Update motion on a better placegerman771-2/+2
2023-04-02service: hid: Fix handle validationgerman771-5/+1
2023-03-30service: hid: Implement SetNpadJoyAssignmentModeSingleWithDestinationgerman771-16/+16
Used by Let's Get Fit
2023-03-27service: hid: Silence warning on MergeSingleJoyAsDualJoyNarr the Reg1-1/+2
2023-02-14remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistencyarades791-5/+5
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14apply clang-formatarades791-3/+3
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14add static lifetime to constexpr values to force compile time evaluation where possiblearades791-3/+3
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-10core: hid: Use gyro thresholds modes set by the gameNarr the Reg1-2/+5
2023-02-08service: hid: Return error if arguments of SetSupportedNpadIdType is invalidNarr the Reg1-2/+10
2023-02-03Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"ameerj1-2/+3
This reverts commit 25fc5c0e1158cb8e81cbc769b24ad84032a1fbfd, reversing changes made to af20e25081f97d55b451606c87922e2b49f0d363.
2023-02-02Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer"liamwhite1-3/+2
2023-02-01input_common: Implement turbo buttonsgerman771-0/+3
2023-01-20core: hid: Only set the polling mode to the correct sideNarr the Reg1-1/+13
2023-01-20core: hid: Fix input regressionsNarr the Reg1-0/+1
2023-01-20service: hid: Set led pattern and fix color detectionNarr the Reg1-0/+5
2022-12-29hidbus: Use ReadBufferSpanameerj1-2/+3
2022-12-25service: Use ReadBufferSpan where it is trivial to do soameerj1-1/+1
2022-10-22general: Enforce C4800 everywhere except in video_coreMorph1-10/+10
2022-10-21input_common: cache vibration testsgerman771-2/+2
2022-10-21hid/npad: Fix copy size in GetSupportedNpadIdTypesLioncash1-2/+3
Previously this was passing the size of the vector into memcpy rather than the size in bytes to copy, which would result in a partial read. Thankfully, this function isn't used yet, so this gets rid of a bug before it's able to do anything.
2022-10-13kernel: remove KWritableEventLiam1-3/+2
2022-09-25service: hid: Partially implement palma controllerNarr the Reg1-1/+5
2022-08-08hid: core: Properly emulate controller color and battery levelNarr the Reg1-15/+62
2022-06-29input_common: sdl: lower vibration frequency and use it's own unique threadgerman771-2/+2
2022-06-29service: hid: Correct some mistakes and add more validationsNarr the Reg1-8/+26
2022-06-27core: Replace all instances of ResultCode with Resultgerman771-30/+30
2022-06-14common: Change semantics of UNREACHABLE to unconditionally crashLiam1-4/+4
2022-05-27service: hid: Implement ResetIsSixAxisSensorDeviceNewlyAssignedgerman771-2/+75
Needed by Nintendo Switch Sports
2022-05-27service: hid: Implement LoadSixAxisSensorCalibrationParameter and GetSixAxisSensorIcInformationgerman771-1/+31
Needed by Nintendo Switch Sports
2022-05-27service: hid: Implement EnableSixAxisSensorUnalteredPassthrough and IsSixAxisSensorUnalteredPassthroughEnabledgerman771-0/+26
Needed by Nintendo Switch Sports
2022-05-27service: hid: Add error handling to sixaxis functionsgerman771-30/+52
2022-05-27service: hid: Refractor sixaxis functionsgerman771-176/+74
2022-05-27service: hid: Implement MergeSingleJoyAsDualJoy according to REgerman771-61/+50
2022-05-27service: hid: Add error handling to setNpadAssignment and variantsgerman771-10/+12
2022-05-27service: hid: Quick RE fixes and commentsgerman771-20/+30
2022-05-06service: hid: Fix motion refresh rateNarr the Reg1-0/+5
2022-05-06service: hid: Disable correctly motion inputgerman771-50/+41
2022-04-23service: hid: Access shared memory directlyNarr the Reg1-148/+142
2022-04-23general: Convert source file copyright comments over to SPDXMorph1-3/+2
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-18service: hid: Improve accuracy of sixaxis functionsNarr the Reg1-43/+230
2022-04-07core/hle: Replace lock_guard with scoped_lockMerry1-1/+1
2022-03-31service: hid: Remove inaccurate behavior on initializationgerman771-13/+19
2021-12-16core/hid: Cancel any vibration after the testNarr the Reg1-3/+4
2021-12-05service/hid: Implement SetNpadJoyAssignmentModegerman771-23/+142
2021-12-05core/hid: Ensure only valid npad are connectedgerman771-17/+13
2021-11-30npad: Return NpadButton in GetAndResetPressStateMorph1-3/+3
We were previously truncating this to a u32 as there were no known buttons that used the full 64 bits of this type. Fix this now that we know they are used.
2021-11-29general: Fix handheld typoMorph1-1/+1
2021-11-28settings: Add debug setting to enable all controllersgerman771-0/+4
2021-11-25service/hid: Finish converting LIFO objects and address some nitsNarr the Reg1-0/+2
2021-11-25kraken: Address comments from reviewgerman771-1/+1
Fix compiler bug
2021-11-25core/hid: Remove usage of native types, fix a couple of errors with motiongerman771-200/+298
2021-11-25service/hid: Remove includes of core.h and settings.hgerman771-8/+7
2021-11-25service/hid: Add support for new controllersgerman771-1/+30
2021-11-25core/hid: Rename NpadType to NpadStyleIndexgerman771-63/+66
2021-11-25second commit lion reviewgerman771-0/+2
2021-11-25core/hid: Update structs to 13.1.0german771-7/+8
2021-11-25core/hid: Rework battery mappingsgerman771-2/+9
2021-11-25Morph review first wavegerman771-3/+1
2021-11-25service/hid: Match shared memory closer to HWgerman771-18/+40
2021-11-25kraken: Address comments from reviewgerman771-5/+5
review fixes
2021-11-25core/hid: Only signal when neededgerman771-2/+4
2021-11-25hid: Fix controller connection/disconnectiongerman771-25/+52
2021-11-25core/hid: Add output devicesgerman771-23/+4
2021-11-25service/hid: Rewrite npad to use ring lifo and the emulated controllergerman771-627/+473
2021-11-04core: Remove unused includesameerj1-1/+0
2021-07-21hle: service: hid: npad: Remove unused kernel reference.bunnei1-1/+0
2021-07-21hle: service: Add a helper module for managing kernel objects.bunnei1-5/+7
2021-07-11npad: Disable vibration check if disabledgerman771-0/+5
2021-06-22npad: Fix data race when updating devicesRodrigo Locatti1-0/+4
Add a lock to avoid data races. This reduces the number of -fsanitize=thread errors significantly.
2021-05-06hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject.bunnei1-5/+4
2021-05-06hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.bunnei1-2/+6
2021-05-06hle: kernel: Ensure all kernel objects with KAutoObject are properly created.bunnei1-0/+1
2021-05-06hle: kernel: Migrate KEvent to KAutoObject.bunnei1-3/+2
2021-05-06hle: kernel: Refactor IPC interfaces to not use std::shared_ptr.bunnei1-2/+1
2021-05-04service: Resolve cases of member field shadowingLioncash1-1/+1
Now all that remains is for kernel code to be 'shadow-free' and then -Wshadow can be turned into an error.
2021-04-24hid: Implement SevenSixAxis and ConsoleSixAxisSensorgerman771-2/+2
2021-04-19npad: Remove duplicated class member variableLioncash1-1/+1
ControllerBase already has a System reference that can be accessed from this class, so we can get rid of this to make the class layout a little more straightforward.
2021-04-15common: Move settings to common from core.bunnei1-1/+1
- Removes a dependency on core and input_common from common.
2021-04-08service: hid: Stub SetAnalogStickUseCenterClampMorph1-0/+4
- Used by eBASEBALLパワフルプロ野球2020
2021-04-02HID: Fix SL and SR buttons for right joycongerman771-2/+6
2021-02-08hid: Implement GC controllergerman1-0/+63
2021-02-05hle: kernel: Reimplement KReadableEvent and KWritableEvent.bunnei1-5/+7
2021-02-05hle: kernel: Rename WritableEvent to KWritableEvent.bunnei1-2/+2
2021-02-05hle: kernel: Rename ReadableEvent to KReadableEvent.bunnei1-2/+3
2021-02-04Add footer types and address commentsgerman1-33/+46
2021-02-04Fix npad struct to match switchbrewgerman1-65/+64
2021-02-04Adds missing controller types and propertiesgerman1-0/+12
2021-01-27npad: Remove unused device handle parameterMorph1-4/+3
2021-01-24Stub Set/Get/Reset SixaxisSensorFusionParametersgerman1-0/+18
2021-01-18npad: Add check for HANDHELD_INDEX in UpdateControllerAt()Morph1-1/+1
2021-01-15core: Silence Wclass-memaccess warningsReinUsesLisp1-2/+4
This requires making several types trivial and properly initialize them whenever they are called.
2020-12-18controllers/npad: Make press_state atomicMorph1-1/+1
2020-12-12controllers/npad: Validate device handles before useMorph1-0/+41
Some games such as NEKOPARA Vol. 3 send invalid device handles when calling InitializeVibrationDevice. Introduce a check to validate the device handle before use.
2020-11-27Stub set and get NpadCommunicationModegerman1-0/+8
2020-11-16hid: Reimplement Begin/EndPermitVibrationSessionMorph1-2/+6
Upon further investigation, these commands allow temporary vibrations even when the "Controller Vibration" system setting is disabled. As a result, vibrations are allowed when either the system setting or this flag is set to true. Therefore, we can only block vibrations when both flags are set to false.
2020-11-16controllers/npad: Load input devices on initMorph1-0/+2
2020-11-16general: Fix compiler warnings on linux and miscellaneous changesMorph1-7/+10
2020-11-16controllers/npad: Remove the old vibration filterMorph1-49/+59
Previously we used a vibration filter that filters out amplitudes close to each other. It turns out there are cases where this results into vibrations that are too inaccurate. Remove this and move the 100Hz vibration filter (Only allowing a maximum of 100 vibrations per second) from sdl_impl to npad when enable_accurate_vibrations is set to false.
2020-11-16hid: Implement InitializeVibrationDevice and IsVibrationDeviceMountedMorph1-1/+41
2020-11-16input_common: Add VibrationDevice and VibrationDeviceFactoryMorph1-30/+18
A vibration device is an input device that returns an unsigned byte as status. It represents whether the vibration device supports vibration or not. If the status returns 1, it supports vibration. Otherwise, it does not support vibration.
2020-11-16configure_input: Add per-player vibrationMorph1-2/+11
Allows for enabling and modifying vibration and vibration strength per player. Also adds a toggle for enabling/disabling accurate vibrations. Co-authored-by: Its-Rei <kupfel@gmail.com>
2020-11-16settings: Remove global vibration strength modifierMorph1-3/+1
This will be replaced in favor of per-player vibration strength modifiers.
2020-11-16hid: Mark Begin/EndPermitVibrationSession as stubsMorph1-9/+1
The implementation of these commands seem incomplete and causes rumble in Super Mario Party to stop working since only EndPermitVibrationSession is called. Thus, these are better off being marked as a stub until this can be investigated more thoroughly.
2020-11-16controllers/npad: Send an empty vibration on destruction/deactivationMorph1-14/+28
This stops all controllers from continuously vibrating when emulation is stopped.
2020-11-16controllers/npad: Add heuristics to reduce rumble state changesMorph1-5/+46
Sending too many state changes in a short period of time can cause massive performance issues. As a result, we have to use several heuristics to reduce the number of state changes to minimize/eliminate this performance impact while maintaining the quality of these vibrations as much as possible.
2020-11-16configure_input: Hook up the vibration percentage spinboxMorph1-1/+2
This allows setting the vibration strength percentage anywhere from 1% to 100%. Also hooks up the remaining motion button and checkbox in the Controller Applet.
2020-11-16controllers/npad: Stop games from vibrating incorrect controllersMorph1-0/+10
Fixes vibration in 1-2 Switch and potentially other games where they would vibrate both players' joycons at the same time.
2020-11-16hid: Fix controller rumble based on new researchMorph1-18/+27
This fixes the issue where rumble is only sent to the first controller. Now, individual controllers can receive their own rumble commands.
2020-11-16hid: Reorder all HID commandsMorph1-17/+17
Reorders all HID commands in command id order.
2020-11-16controllers/npad: Rename NPadType to NpadStyleSetMorph1-2/+2
This more accurately represents the underlying type and avoids confusion with NpadType
2020-11-16settings: Preparation for per-game input settingsMorph1-18/+24
2020-11-16controllers/npad: Connect a controller on init if none are connectedMorph1-0/+13
2020-10-21Revert "core: Fix clang build"bunnei1-42/+27
2020-10-18core: Fix clang buildLioncash1-27/+42
Recent changes to the build system that made more warnings be flagged as errors caused building via clang to break. Fixes #4795
2020-10-13core/CMakeLists: Make some warnings errorsLioncash1-25/+0
Makes our error coverage a little more consistent across the board by applying it to Linux side of things as well. This also makes it more consistent with the warning settings in other libraries in the project. This also updates httplib to 0.7.9, as there are several warning cleanups made that allow us to enable several warnings as errors.
2020-10-02Only use inputs corresponding to controller typegerman1-49/+58
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-29First implementation of controller rumblegerman1-7/+18
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