summaryrefslogtreecommitdiff
path: root/src/yuzu
AgeCommit message (Collapse)Author
2020-11-17configure_input_player: Use static qualifier for IsProfileNameValid()Lioncash
This is a static member function, so we don't need use an existing instance to call this function.
2020-11-15configure_input: Accommodate for the mouse input device engineMorph
2020-11-15configure_input: Update the input profiles for other player tabsMorph
2020-11-15general: Fix compiler warnings on linux and miscellaneous changesMorph
2020-11-15sdl_impl: Revert to the "old" method of mapping sticksMorph
Not all controllers have a SDL_GameController binding. This caused controllers not present in the SDL GameController database to have buttons mapped instead of axes. Furthermore, it was not possible to invert the axes when it could be useful such as emulating a horizontal single joycon or other potential cases. This allows us to invert the axes by reversing the order of mapping (vertical, then horizontal).
2020-11-15applets/controller: Change the input button to create input profilesMorph
Co-authored-by: Its-Rei <kupfel@gmail.com>
2020-11-15input: Disconnect a controller prior to connecting a new oneMorph
Some games do not respond to a change in controller type if 1) The controller is not disconnected prior to being reconnected and/or 2) The controller is reconnected instantly after being disconnected. Since it is not possible to change controllers instantly on hardware and requiring a disconnect prior to connecting a new one, we should emulate this as well with a small delay, fixing the aforementioned issue.
2020-11-15input_common: Add VibrationDevice and VibrationDeviceFactoryMorph
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-15configure_input: Add per-player vibrationMorph
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-15settings: Remove global vibration strength modifierMorph
This will be replaced in favor of per-player vibration strength modifiers.
2020-11-15configure_input: Hook up the vibration percentage spinboxMorph
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-15configure_input_player: Change "Defaults" button behaviorMorph
RestoreDefaults() now restores the selected devices' mappings using UpdateMappingWithDefaults(). This allows us to move the keyboard mapping from RestoreDefaults() to UpdateMappingWithDefaults().
2020-11-15settings: Preparation for per-game input settingsMorph
2020-11-15config: Migrate config files into config/customMorph
Co-authored-by: lat9nq <lat9nq@virginia.edu>
2020-11-15controllers/npad: Connect a controller on init if none are connectedMorph
2020-11-15applets/controller: Auto accept a valid single player configurationMorph
2020-11-15bootmanager: Allow mouse clicks only if touch is disabledMorph
Previously mouse clicks will not register when touch is disabled. This rectifies that and allows mouse clicks to be mapped to other buttons if the touchscreen is disabled.
2020-11-15input_profiles: Implement input profilesMorph
2020-11-15configure_input_player: Implement input exclusivity and persistenceMorph
With this, the "Input Devices" combobox should accurately reflect the input device being used and disallows inputs from other input devices unless the input device is set to "Any".
2020-11-15ui/themes: Cleanup UIMorph
2020-11-09bootmanager: Address review commentslat9nq
Changes QMessageBox usages to warnings, as the problems they bring to light are being safely handled by the application and do not warrant something of the "critical" level. Changes LOG_CRITICAL to LOG_ERROR for the same reason. Preferring ERROR to WARNING as yuzu is denying loading of any guest applications after checking for these conditions. Moved logging the GL_RENDERER string into GetUnsupportedGLExtensions() to make more clear that unsupported extensions were already being logged. Makes placement of the logs easier to understand later, as well.
2020-11-09bootmanager: Log and show GL_RENDERER string when GPU is insufficientlat9nq
Changes the first message to not include the OpenGL version, as the error is caused by OpenGL failing to load. Adds a new check for OpenGL version 4.3. This will display a message with a similar error as well as the GL_RENDERER string. Adds a CRITICAL log message when triggered. This prevents a crash with yuzu trying to use older OpenGL versions. Modifies the unsupported extension message to output the GL_RENDERER string in the message, as well as logging the string.
2020-11-06Merge pull request #4888 from lioncash/unicorn-removebunnei
core: Remove usage of unicorn
2020-11-04core/settings: Move configuring_global behind an APILioncash
Rather than have directly modified global state here, we can make it an implementation detail and have an interface that changes are queried through.
2020-11-03core: Remove usage of unicornLioncash
Unicorn long-since lost most of its use, due to dynarmic gaining support for handling most instructions. At this point any further issues encountered should be used to make dynarmic better. This also allows us to remove our dependency on Python.
2020-10-26yuzu: settings: Enable multicore, asynch GPU, and assembly shaders by default.bunnei
- In general, this is now the preferred settings for most games. # Conflicts: # src/yuzu/configuration/config.cpp
2020-10-26Merge pull request #4729 from ameerj/nvdec-prodbunnei
video_core: NVDEC Implementation
2020-10-26video_core: NVDEC Implementationameerj
This commit aims to implement the NVDEC (Nvidia Decoder) functionality, with video frame decoding being handled by the FFmpeg library. The process begins with Ioctl commands being sent to the NVDEC and VIC (Video Image Composer) emulated devices. These allocate the necessary GPU buffers for the frame data, along with providing information on the incoming video data. A Submit command then signals the GPU to process and decode the frame data. To decode the frame, the respective codec's header must be manually composed from the information provided by NVDEC, then sent with the raw frame data to the ffmpeg library. Currently, H264 and VP9 are supported, with VP9 having some minor artifacting issues related mainly to the reference frame composition in its uncompressed header. Async GPU is not properly implemented at the moment. Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
2020-10-26Merge pull request #4834 from lioncash/copy-fnbunnei
controller: Pass ControllerParameters by reference in ReconfigureControllers()
2020-10-26controller: Pass ControllerParameters by reference in ReconfigureControllers()Lioncash
Prevents unnecessary copies and heap reallocations from occurring.
2020-10-25Merge pull request #4827 from lioncash/truncRodrigo Locatti
controller: Convert led_patterns integer literals to bool literals
2020-10-25Merge pull request #4828 from lioncash/lockguardRodrigo Locatti
general: Use template deduction guides for lock_guard
2020-10-25general: Use template deduction guides for lock_guardLioncash
Same behavior, less code.
2020-10-25controller: Convert led_patterns integer literals to bool literalsLioncash
'bool' isn't always guaranteed to be the same size as an int, so this can technically cause truncation warnings if we support other platforms.
2020-10-25applets/profile_select: Resolve a warning in exec()Morph
Resolves a warning where not all control paths return a value.
2020-10-24Merge pull request #4817 from Kewlan/open-single-save-locationbunnei
main/profile_select: Don't ask for profile when there's only one.
2020-10-22Merge pull request #4792 from bunnei/rtc-fixbunnei
service: time: Update current time with changes to RTC setting.
2020-10-22Don't ask for profile when there's only one.Kewlan
2020-10-20configure_input_player: Fix modifier buttonsMorph
Fix them for real this time, now they finally work.
2020-10-15input_common/CMakeLists: Make some warnings errorsLioncash
Makes the input_common code warnings consistent with the rest of the codebase.
2020-10-12service: time: Update current time with changes to RTC setting.bunnei
- This can be used to advance time, e.g. for Pokemon Sword/Shield pokejobs.
2020-09-30Merge pull request #4733 from ReinUsesLisp/game-list-leakLC
qt/game_list: Give GameListSearchField::KeyReleaseEater a parent
2020-09-29qt/game_list: Give GameListSearchField::KeyReleaseEater a parentReinUsesLisp
This fixes a memory leak as KeyReleaseEater's destructor was never called.
2020-09-26main: Allow applets to display on top while fullscreenMorph
Using the Qt::WindowStaysOnTopHint flag allows these dialogs to show up on top while running in fullscreen. However, if yuzu goes out of focus (by alt-tabbing or otherwise), this flag does not seem to have an effect.
2020-09-23Merge pull request #4701 from lioncash/unused-protoRodrigo Locatti
install_dialog: Remove unused function prototype
2020-09-23install_dialog: Make use of [[nodiscard]] where applicableLioncash
Allows the compiler to warn against cases where the return value isn't used (which would be a bug).
2020-09-23install_dialog: Remove unused function prototypeLioncash
This function doesn't have an implementation, so it can be removed to prevent others from unintentionally using it.
2020-09-23game_list: Make game list function naming consistentLioncash
Makes the naming consistent with the rest of the functions that are present.
2020-09-23game_list: Eliminate redundant argument copiesLioncash
Several functions can be taken by const reference to avoid copies
2020-09-20renderer_opengl: Remove emulated mailbox presentationReinUsesLisp
Emulated mailbox presentation was causing performance issues on Nvidia's OpenGL driver. Remove it.