| Age | Commit message (Collapse) | Author |
|
hid: Check if applet_resource exists in InitializeVibrationDevice
|
|
|
|
HID: Stub set and get NpadCommunicationMode
|
|
Now there's only two meaningful instances left in core.
|
|
|
|
Completely removes all usages of the global system instance within the
services code by passing in the using system instance to the services.
|
|
nvdrv, video_core: Don't index out of bounds when given invalid syncpoint ID
|
|
nvservices: Reintroducee IoctlCtrl
|
|
|
|
- This is used by Super Mario 3D All-Stars.
|
|
* hle: services: Fix a crash with improper NVFlinger lifetime management.
- This crash would happen when attempting to shutdown yuzu early on in boot.
|
|
- Use .at() instead of raw indexing when dealing with untrusted indices.
- For the special case of WaitFence with syncpoint id UINT32_MAX,
instead of crashing, log an error and ignore. This is what I get when
running Super Mario Maker 2.
|
|
svc: Remove unnecessary [[maybe_unused]] tag
|
|
Fixes regression caused by #4907 which caused games like Breath of the Wild 1.0.0 not to boot.
|
|
The parameter is used in this function, so this suppression isn't
necessary.
|
|
patch_manager: Remove usages of the global system instance
|
|
core: Make nvservices more standardized
|
|
|
|
functions.
- Used by Animal Cross: New Horizons v1.6.0 update, minimal stub gets this update working.
|
|
With this, only 19 usages of the global system instance remain within
the core library.
We're almost there.
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
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.
|
|
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>
|
|
This will be replaced in favor of per-player vibration strength modifiers.
|
|
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.
|
|
This stops all controllers from continuously vibrating when emulation is stopped.
|
|
- Used in Super Mario Odyssey
|
|
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.
|
|
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.
|
|
Fixes vibration in 1-2 Switch and potentially other games where they would vibrate both players' joycons at the same time.
|
|
This fixes the issue where rumble is only sent to the first controller.
Now, individual controllers can receive their own rumble commands.
|
|
Some parameters need to be doubleword aligned due to the presence of the applet_resource_user_id.
Previously, this value was invalid in many commands where it was not doubleword aligned when popped.
|
|
Reorders all HID commands in command id order.
|
|
The first u32 describes the vibration device type which is a Linear Resonant Actuator used in Nintendo Switch controller hardware.
The second u32 describes the vibration device position, in this case distinguishing between left and right vibration actuators.
Pro Controllers have 2 LRAs each that can vibrate independently of each other, which means they have 2 distinct vibration device handles to distinguish between the two actuators.
Similarly for joycons, the left joycon can be distinguished from the right joycon through the vibration device handle since each joycon has 1 LRA.
|
|
|
|
This more accurately represents the underlying type and avoids confusion with NpadType
|
|
A DeviceHandle describes a vibration device or six-axis sensor based on the npad type, npad id, and device index/position
|
|
|
|
|
|
applets/controller: Introduce additional checks for mode and caller
|
|
hle: service: caps_u: Stub GetAlbumFileList3AaeAruid.
|
|
|
|
|
|
Resolves numerous deprecation warnings throughout the codebase due to
inclusion of this header. Now building core should be significantly less
noisy (and also relying on less global state).
This also uncovered quite a few modules that were relying on indirect
includes, which have also been fixed.
|
|
|
|
|