Commit Graph

18974 Commits

Author SHA1 Message Date
bunnei 3ded539d4f Merge pull request #7588 from Wunkolo/gibibibi-bytes
yuzu/main: Fix host memory byte units. GB to GiB
2021-12-15 12:04:37 -08:00
bunnei 15a4248f46 Revert "video_core/codecs: refactor ffmpeg searching and handling in cmake" 2021-12-15 00:02:53 -08:00
Wunkolo a8d8df4bde yuzu/main: Fix host memory byte units. GB to GiB
I have `134850146304` bytes of ram and Yuzu was saying that I had `125.59 GB`
of ram. But `125.59` is actually the amount of gi**bi**bytes I have. In
gi**ga**bytes I would have `134.9`.

Additionally, I changed the `1024 / 1024 / 1024` here into the `_GiB`
user-literals that I added a while ago(#6519).

https://www.wolframalpha.com/input/?i=134850146304+bytes
2021-12-14 23:57:33 -08:00
bunnei bf62cd3221 Merge pull request #7565 from liushuyu/fix-linux-decoding
video_core/codecs: refactor ffmpeg searching and handling in cmake
2021-12-14 22:27:13 -08:00
Mai M 14a84586fb Merge pull request #7558 from Morph1984/unused-cpu-family-model
common/cpu_detect: Remove CPU family and model
2021-12-14 23:43:16 -05:00
Mai M 0a83bc9881 Merge pull request #7549 from Morph1984/astc-8x5
maxwell_to_vk: Add ASTC_2D_8X5_UNORM
2021-12-14 23:42:44 -05:00
Mai M 7f48c6cecc Merge pull request #7579 from Morph1984/swkbd-oob-array-access
qt_software_keyboard: Fix out of bounds array access
2021-12-14 23:42:07 -05:00
Narr the Reg 3e0a577553 core/hid: Fix faulty analog triggers 2021-12-14 19:49:44 -06:00
Narr the Reg 8222f70144 Merge pull request #7581 from lioncash/input-iface
common/input: Avoid numerous large copies of CallbackStatus
2021-12-14 19:10:39 -06:00
Narr the Reg a980d24a54 Merge pull request #7577 from v1993/patch-2
input/SDL: Update SDL hints
2021-12-14 10:12:17 -06:00
Valeri af37388ee5 input/SDL: Update SDL hints
SDL_HINT_JOYSTICK_HIDAPI_SWITCH_HOME_LED is no longer needed thanks to new default in SDL 2.0.18.
SDL_HINT_JOYSTICK_HIDAPI_XBOX is reported to cause conflicts with native driver Xbox driver on Linux, and Xbox controllers don't benefit from hidapi anyways.
2021-12-14 15:02:03 +03:00
liushuyu 538db2d872 CI: fix CI on Linux 2021-12-13 22:31:19 -07:00
liushuyu f7516c3fda video_core/codecs: skip decoders that use hw frames ...
... this would resolve some edge-cases where multiple devices are
present and ffmpeg is unable to auto-supply the hw surfaces
2021-12-13 22:29:19 -07:00
Lioncash 726de453bb common/input: Avoid numerous large copies of CallbackStatus
CallbackStatus instances aren't the cheapest things to copy around
(relative to everything else), given that they're currently 520 bytes in
size and are currently copied numerous times when callbacks are invoked.

Instead, we can pass the status by const reference to avoid all the
copying.
2021-12-13 21:22:02 -05:00
Morph 2e4b0fa68c common/cpu_detect: Remove CPU family and model
We currently do not make use of these fields, remove them for now.
2021-12-13 20:45:18 -05:00
Lioncash 319b0ed324 common/input: Remove unnecessary returns
Given these return void, these can be omitted.
2021-12-13 20:43:12 -05:00
Lioncash 3dbb700714 input_poller: Add missing override specifiers 2021-12-13 20:41:17 -05:00
Lioncash 46c7e48143 input_mapping: Amend specification of parameters
param tags are supposed to specify the parameter name without any
quoting.

Silences several -Wdocumentation warnings.
2021-12-13 20:31:59 -05:00
Lioncash c73ebb7d89 input_poller: Remove several unnecessary @param tags
Silences quite a bit of -Wdocumentation warnings, given the @param tag
is only intended to be used to identify function parameters, not what it
contains.
2021-12-13 20:28:30 -05:00
bunnei 7347d2e33f Merge pull request #7575 from lioncash/input
input_engine: Minor object churn cleanup
2021-12-13 16:50:54 -08:00
Morph 21ef5f290d qt_software_keyboard: Fix out of bounds array access
We were unconditionally accessing the keyboard_buttons array, even if the bottom_osk_index was for the numberpad, leading to an out of bounds array access. Fix this by accessing the proper array for the current button when the index is for the numberpad.
2021-12-13 19:04:07 -05:00
Lioncash f63a50ce9d tas_input: Avoid minor copies in Read/WriteCommandButtons()
We don't need to copy the whole pair
2021-12-13 11:45:19 -05:00
Lioncash bac72cecf9 tas_input: Remove unnecessary semicolon
Resolves a -Wextra-semi warning
2021-12-13 11:45:19 -05:00
Lioncash 6a9fe940d2 tas_input: Execute clear() even if empty
clear() when empty is simply a no-op, so we can get rid of the check
here and let the stdlib do it for us.
2021-12-13 11:45:18 -05:00
Lioncash 8b6137eb79 tas_input: Remove unnecessary includes
Gets rid of indirect includes and includes only what the interface
needs.
2021-12-13 11:45:18 -05:00
Lioncash 4284fe0d78 tas_input: std::move strings into vector
While we're in the same area, we can also avoid performing std::stoi in
a loop when it only needs to be performed once.
2021-12-13 11:45:15 -05:00
Lioncash c12653670c tas_input: Use istringstream over stringstream
This is only using the input facilities, so we don't need to use the
fully-fleged stringstream.
2021-12-13 10:57:53 -05:00
Lioncash 4dce3a6cf4 tas_input: Use u8string_view instead of u8string
Same behavior, but without the potential for extra allocations.
2021-12-13 10:54:43 -05:00
Lioncash b2c94d8cd4 tas_input: Remove unused std::smatch variable
This also means we can get rid of the dependency on <regex>
2021-12-13 10:50:24 -05:00
Lioncash f1ff42541a tas_input: Amend -Wdocumentation warnings
Parameters shouldn't have the colon by their name.
2021-12-13 10:49:11 -05:00
Lioncash a82bb17b08 tas_input: Make TasAxes enum an enum class
Prevents these values from potentially clashing with anything in other
headers.
2021-12-13 10:41:32 -05:00
Lioncash 71467b1383 input_engine: Fix typo in TriggerOnAxisChange() parameter name 2021-12-13 10:21:37 -05:00
Lioncash e609218c0f input_engine: Simplify PreSet* family of functions
We can make use of try_emplace() to insert values only if they don't
already exist.
2021-12-13 10:18:04 -05:00
Lioncash 14f7f35957 input_engine: Avoid redundant map lookups
We can use iterators to avoid looking up into maps twice in the getter
functions.

At the same time we can also avoid copying the ControllerData structs,
since they're 264 bytes in size.
2021-12-13 09:57:51 -05:00
Lioncash e7c5737e2e input_engine: Remove left-over namespace qualifiers
These types are part of the InputCommon namespace.
2021-12-13 09:57:51 -05:00
Lioncash f8db0a76af input_engine: Iterate by reference rather than by value where applicable
Avoids creating copies of several object instances (some of which being
over 100 bytes in size).
2021-12-13 09:57:51 -05:00
Lioncash 190cfc5997 input_engine: Take BasicMotion by const reference with SetMotion() and TriggerOnMotionChange()
Copies the BasicMotion instance once instead of twice.
2021-12-13 09:57:39 -05:00
Lioncash e0e9f98fc6 input_engine: std::move InputIdentifier in SetCallback()
Allows avoiding std::function allocations.
2021-12-13 09:23:23 -05:00
Lioncash cd45635f56 input_engine: Pass LedStatus by const reference
Avoids copies where reasonably applicable
2021-12-13 09:20:58 -05:00
Lioncash f41c22d30f input_engine: Pass VibrationStatus by const reference in SetRumble()
Avoids creating copies of the struct where not necessary.
2021-12-13 09:16:10 -05:00
Lioncash 54e164d9de input_engine: std::move engine name where applicable
We can allow the name to be moved into, allowing allocations to be
avoided.
2021-12-13 09:05:50 -05:00
Lioncash d62545828a input_engine: Remove callback clearing in constructor
The callback map is a member variable, so this will always be empty on
initial construction.
2021-12-13 08:54:23 -05:00
Lioncash 7e34562d34 input_engine: Remove unnecessary semi-colons
Silences -Wextra-semi warnings
2021-12-13 08:53:01 -05:00
Lioncash caae5d3868 input_engine: Remove unnecessary return
This is a void function, so it doesn't need this.
2021-12-13 08:52:09 -05:00
Valeri 295b676fe6 Remove erroneous #pragma once 2021-12-13 16:49:01 +03:00
bunnei 5273e0665e Merge pull request #7462 from bunnei/kernel-improve-scheduling
Kernel: Improve threading & scheduling V3
2021-12-12 22:43:25 -08:00
Narr the Reg 66a86f54af service/hid: Improve console motion accuracy 2021-12-12 23:26:04 -06:00
ameerj 8f764d62a5 game_list: Add persistent setting for the favorites row expanded state
Previously, the favorites row was always expanded on launch. This change introduces a persistent setting that allows the favorites row's expanded state to be remembered between launches.
2021-12-12 15:46:42 -05:00
Morph 036cb348bf maxwell_to_vk: Add ASTC_2D_5X4_UNORM 2021-12-10 22:44:24 -05:00
Feng Chen 755963ada1 Fix blit image/view not compatible 2021-12-10 12:41:09 +08:00
Morph 0f7d2bbd55 maxwell_to_vk: Add ASTC_2D_8X5_UNORM
- Used by Lego City Undercover
2021-12-09 13:53:53 -05:00
Morph 16fa8e0b37 Merge pull request #7495 from FernandoS27/text-blit-fix-again
Texture Cache: Fix mismatching image/views on blits
2021-12-09 05:26:21 -05:00
bunnei 99f7732667 Merge pull request #7519 from itsmeft24/master
kernel: svc: Implement ProcessMemory and CodeMemory SVCs
2021-12-09 00:29:09 -08:00
Morph 006965d3c0 profiler: Use QWheelEvent position().toPoint()
QWheelEvent::pos() is deprecated. Make use of position().toPoint() instead.
2021-12-08 15:25:46 -05:00
Morph 052c01db9a renderer_vulkan: Add R16G16_UINT
- Used by Immortals Fenyx Rising
2021-12-08 10:55:11 -05:00
bunnei abecd3905d Merge pull request #7525 from german77/notifa
service/notif: Add notif:a and stub ListAlarmSettings, Initialize
2021-12-07 23:31:44 -08:00
bunnei d3b0025bd1 Merge pull request #7521 from german77/dual_single_joycons
service/hid: Implement SetNpadJoyAssignmentMode
2021-12-07 21:03:42 -08:00
bunnei 962a2a65a0 Merge pull request #7488 from vonchenplus/support_multiple_videos_playing
Support multiple videos playing
2021-12-07 18:38:14 -08:00
Mai M 2f01374013 Merge pull request #7506 from heinermann/focus_crash
Fixed #7502
2021-12-07 18:28:16 -05:00
Mai M 5a19374ea8 Merge pull request #7522 from ameerj/shader-recompiler-filenames
shader_recompiler/backend: Minor organization and refactoring to reduce compile time overhead
2021-12-07 18:27:50 -05:00
itsmeft24 9a28199c5a Update k_code_memory.h 2021-12-07 16:58:23 -05:00
itsmeft24 4b0b2d7d1d make KCodeMemory::GetSourceAddress const
Co-authored-by: Mai M. <mathew1800@gmail.com>
2021-12-07 07:58:33 -05:00
Matías Locatti aca763fd98 main: Update video core popup
Old version had formatting issues, and I want to provide an answer to the most common reason this pops up in the first place, outdated drivers.
2021-12-06 20:35:07 -05:00
bunnei 5788e077cd hle: kernel k_scheduler: EnableScheduling: Remove redundant GetCurrentThreadPointer calls. 2021-12-06 16:39:18 -08:00
bunnei 1b1ed86ec7 hle: kernel k_process: Remove unnecessary .at usage with thread pinning methods. 2021-12-06 16:39:18 -08:00
bunnei 38a6477770 hle: kernel: Remove unnecessary virtual specifier on NotifyAvailable. 2021-12-06 16:39:18 -08:00
bunnei 829c4b6144 hle: kernel: Remove unnecessary virtual specifier on EndWait. 2021-12-06 16:39:18 -08:00
bunnei 1457a75a40 hle: kernel: k_light_condition_variable: Revert unnecessary license comment changes. 2021-12-06 16:39:18 -08:00
bunnei cd4582dc8b hle: kernel: k_condition_variable: Revert unnecessary style changes. 2021-12-06 16:39:18 -08:00
bunnei 4b2aa52da9 hle: kernel: Remove unnecessary virtual specifier on CancelWait. 2021-12-06 16:39:18 -08:00
bunnei 273223d5f1 hle: kernel: service_thread: Force stop threads on destruction. 2021-12-06 16:39:18 -08:00
bunnei 0231cbd79f hle: kernel: k_light_lock: Implement CancelWait.
- Fixes a crash in Megadimension Neptunia VII.
2021-12-06 16:39:18 -08:00
bunnei d17b7268f6 hle: kernel: service_thread: Use std::jthread.
- Fixes a potential deadlock on service thread shutdown.
2021-12-06 16:39:18 -08:00
bunnei b5970145a5 hle: kernel: k_thread: Skip reschedule on DisableDispatch with SC. 2021-12-06 16:39:18 -08:00
bunnei 6d2bf18df9 hle: kernel: k_thread: Rename sleeping_queue -> wait_queue. 2021-12-06 16:39:18 -08:00
bunnei 43d706c7d2 hle: kernel: svc: Fix deadlock that can occur with single core. 2021-12-06 16:39:18 -08:00
bunnei 826b07162a hle: kernel: k_thread: Treat dummy threads as a special type. 2021-12-06 16:39:18 -08:00
FernandoS27 8a38790bd3 hle: kernel: fix timing on thread preemption 2021-12-06 16:39:18 -08:00
FernandoS27 2a7b4489a0 hle: kernel: fix scheduling ops from HLE host thread. 2021-12-06 16:39:17 -08:00
bunnei 58da4d5a6e hle: kernel: Add a flag for indicating that the kernel is currently shutting down. 2021-12-06 16:39:17 -08:00
bunnei 975a4f786b hle: kernel: KSynchronizationObject: Fix variable shadowing. 2021-12-06 16:39:17 -08:00
bunnei eb34276885 hle: kernel: Cleanup to match coding style. 2021-12-06 16:39:17 -08:00
bunnei 8fc7d6e631 hle: kernel: KProcess: Improvements for thread pinning. 2021-12-06 16:39:17 -08:00
bunnei e9231a0b8c hle: kernel: KThreadQueue: Remove deprecated code. 2021-12-06 16:39:17 -08:00
bunnei ecd17bbbe4 hle: kernel: KConditionVariable: Various updates & simplifications. 2021-12-06 16:39:17 -08:00
bunnei 050a4270d6 hle: kernel: KThread: Migrate to updated KThreadQueue (part 2). 2021-12-06 16:39:17 -08:00
bunnei 778f03c57a hle: kernel: KThread: Migrate to updated KThreadQueue (part 1). 2021-12-06 16:39:17 -08:00
bunnei 756fdcbdb1 hle: kernel: KConditionVariable: Migrate to updated KThreadQueue. 2021-12-06 16:39:17 -08:00
bunnei f81a6a07c0 hle: kernel: KServerSession: Migrate to updated KThreadQueue. 2021-12-06 16:39:17 -08:00
bunnei 346f6e54b5 hle: kernel: KLightConditionVariable: Migrate to updated KThreadQueue. 2021-12-06 16:39:17 -08:00
bunnei 5ff19c33fc hle: kernel: KLightLock: Migrate to updated KThreadQueue. 2021-12-06 16:39:17 -08:00
bunnei 2ff578f0ee hle: kernel: KAddressArbiter: Migrate to updated KThreadQueue. 2021-12-06 16:39:17 -08:00
bunnei 0ad0543cde hle: kernel: KThread: Remove tracking of sync object from threads. 2021-12-06 16:39:17 -08:00
bunnei e9cdb3cccb hle: kernel: Update KThreadQueue and migrate KSynchronizationObject. 2021-12-06 16:39:17 -08:00
bunnei 01b0e5b168 core: hle: kernel: Disable dispatch count tracking on single core.
- This would have limited value, and would be a mess to handle properly.
2021-12-06 16:39:17 -08:00
bunnei a3dd417cbf core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard. 2021-12-06 16:39:17 -08:00
bunnei 6fd0256f77 core: cpu_manager: Use invalid core_id on init and simplify shutdown. 2021-12-06 16:39:17 -08:00
bunnei 5892c23e30 core: hle: kernel: k_auto_object: Add GetName method.
- Useful purely for debugging.
2021-12-06 16:39:16 -08:00
bunnei 51a7f04b81 core: hle: kernel: DisableDispatch on suspend threads. 2021-12-06 16:39:16 -08:00
bunnei d31fc39e05 core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling. 2021-12-06 16:39:16 -08:00
bunnei 1d5872511c core: cpu_manager: Use KScopedDisableDispatch. 2021-12-06 16:39:16 -08:00
bunnei 3a83c9c027 core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate. 2021-12-06 16:39:16 -08:00
bunnei 1e03387d98 core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess. 2021-12-06 16:39:16 -08:00
bunnei 454970983d core: hle: kernel: k_scheduler: Improve ScheduleImpl. 2021-12-06 16:39:16 -08:00
bunnei 90310b9c03 core: hle: kernel: k_scheduler: Improve Unload. 2021-12-06 16:39:16 -08:00
bunnei 3ca8aca719 core: hle: kernel: k_process: DisableDispatch on main thread. 2021-12-06 16:39:16 -08:00
bunnei 67e8861da4 core: hle: kernel: k_handle_table: Use KScopedDisableDispatch as necessary. 2021-12-06 16:39:16 -08:00
bunnei 4bd80abd17 core: hle: kernel: k_thread: Add KScopedDisableDispatch. 2021-12-06 16:39:16 -08:00
bunnei fa26f905c8 core: hle: kernel: Ensure idle threads are closed before destroying scheduler. 2021-12-06 16:39:16 -08:00
bunnei cae0bef7ec core: hle: kernel: Reflect non-emulated threads as core 3. 2021-12-06 16:39:16 -08:00
Morph ecc71b636b CMakeLists: Specify /Zm200 when compiling in MSVC
This increases the memory heap size for constructing precompiled headers to 2x the default.
2021-12-06 19:31:26 -05:00
bunnei 3809ab520b Merge pull request #7524 from german77/hid_stub
service/hid: Stub SetNpadCaptureButtonAssignment and ClearNpadCaptureButtonAssignment
2021-12-06 13:06:18 -08:00
german77 57ceda21b7 service/notif: Add notif:a and stub ListAlarmSettings,Initialize
Used by ring fit adventure 1.2.0
2021-12-06 10:36:37 -06:00
itsmeft24 01d66693ce fix formatting 2021-12-06 11:02:33 -05:00
itsmeft24 329e58ad79 move private members below public members 2021-12-06 10:37:13 -05:00
itsmeft24 1dcb18cf3e fix formatting 2021-12-06 10:37:09 -05:00
itsmeft24 c1a1ffa949 fix formatting
Co-authored-by: Mai M. <mathew1800@gmail.com>
2021-12-06 07:58:28 -05:00
german77 df845d5d6e service/hid: Stub SetNpadCaptureButtonAssignment and ClearNpadCaptureButtonAssignment
Used by ring fit adventure 1.2.0
2021-12-05 22:44:31 -06:00
jam1garner 9ea4d9cb8c loader: Support loading subsdk{8,9} 2021-12-05 23:07:50 -05:00
itsmeft24 3df8201e46 fix formatting 2021-12-05 19:00:29 -05:00
itsmeft24 291a398405 Remove unnecessary includes 2021-12-05 18:49:40 -05:00
ameerj 3f06a447fb emit_spirv: Reduce emit_spirv.h include overhead
emit_spirv.h is included in video_core, which was propagating further includes that video_core did not depend on.
2021-12-05 18:11:19 -05:00
ameerj ed5b039980 glasm: Move implemented instructions from not_implemented.cpp 2021-12-05 18:11:19 -05:00
ameerj efd428c747 shader_recompiler: Adjust emit_context includes 2021-12-05 18:11:19 -05:00
german77 2352826bf7 service/hid: Implement SetNpadJoyAssignmentMode 2021-12-05 16:18:23 -06:00
itsmeft24 c27936368a Add copyright notice 2021-12-05 16:49:52 -05:00
ameerj c0705ede4d shader_recompiler: Rename backend emit_context files 2021-12-05 16:33:44 -05:00
ameerj 8969273d2d general: Add missing copyright notices 2021-12-05 16:18:53 -05:00
itsmeft24 e380100026 Add KCodeMemory to CMakeLists.txt 2021-12-05 15:56:44 -05:00
ameerj ef8c472d32 vk_texture_cache: Add ABGR src format check for D24S8 conversions 2021-12-05 15:54:58 -05:00
ameerj 9699d5e6d5 renderer_opengl: Minor refactoring of filter selection 2021-12-05 15:42:45 -05:00
ameerj 7d5c21688e texture_cache: Fix image convert dimensions assertion 2021-12-05 15:42:45 -05:00
ameerj 4c9fb0ffe9 blit_image: Refactor upscale factors usage
The image view itself can be queried to see if it is being rescaled or not, removing the need to pass the upscale/down shift factors from the texture cache.
2021-12-05 15:42:44 -05:00
ameerj a38d05ec11 vk_texture_cache: Add a function to ImageView to check if src image is rescaled 2021-12-05 15:39:00 -05:00
ameerj 0d5b7f7a7f blit_image: Refactor ConvertPipeline functions 2021-12-05 15:39:00 -05:00
ameerj 4495c10671 blit_image: Refactor ConvertPipelineEx functions
reduces much of the duplication between the color/depth variants
2021-12-05 15:38:59 -05:00
ameerj 276de8a751 vk_blit_screen: Minor refactor of filter pipeline selection 2021-12-05 15:35:35 -05:00
ameerj c701429fb4 Revert "Merge pull request #7395 from Morph1984/resolve-comments"
This reverts commit 0442db9ad6, reversing
changes made to 15212de85a.
2021-12-05 15:35:35 -05:00
itsmeft24 033c9dff92 kernel: svc: Implement Map/UnmapProcessMemory and Create/ControlCodeMemory
Used by Skyline modding framework
2021-12-05 15:04:08 -05:00
german77 2ba6890141 core/hid: Add missing controller type 2021-12-05 13:57:59 -06:00
Fernando S be80c6ddae Merge pull request #7494 from Morph1984/no-time-to-wait
native_clock: Wait for less time in EstimateRDTSCFrequency
2021-12-05 18:56:38 +01:00
Adam Heinermann a017f3cb43 Fixed #7502 2021-12-04 23:22:39 -08:00
german77 5fae083bc3 core/hid: Ensure only valid npad are connected 2021-12-04 23:20:18 -06:00
Feng Chen 4a3c1192b8 Address feedback 2021-12-05 00:06:14 +08:00
Fernando Sahmkow 3b1694245f Texture Cache: Fix crashes on NVIDIA. 2021-12-04 11:26:58 +01:00
bunnei 94dddbc155 Merge pull request #7467 from liushuyu/fix-linux-decoding
video_core/codecs: more robust ffmpeg hwdecoder selection logic
2021-12-03 17:11:12 -08:00
Morph 875db1012b native_clock: Wait for less time in EstimateRDTSCFrequency
In my testing, waiting for 200ms provided the same level of precision as the previous implementation when estimating the RDTSC frequency.
This significantly improves the yuzu executable launch times since we reduced the wait time from 3 seconds to 200 milliseconds.
2021-12-03 19:55:59 -05:00
bunnei 89d029ff31 Merge pull request #7489 from Morph1984/steady-clock
general: Replace high_resolution_clock with steady_clock
2021-12-03 16:08:20 -08:00
liushuyu 18ddfcc0cf video_core/cmake: link against libva explicitly ...
... to fix build on Flatpak (and self-builds)
2021-12-02 22:35:30 -07:00
liushuyu 168882cb7a video_core/codecs: more fixes for VAAPI detection ...
* skip impersonated VAAPI implementaions ("imposter detection")
* place VAAPI priority below CUDA/NVDEC/CUVID
2021-12-02 21:31:51 -07:00
liushuyu ef00c213e8 video_core/codec: address comments 2021-12-02 21:01:34 -07:00
liushuyu a32139fdab video_core/codecs: more robust ffmpeg hwdecoder selection logic 2021-12-02 21:01:34 -07:00
bunnei c96e9c65f2 Merge pull request #7490 from Morph1984/stub-album-save-screenshot
service: am: ISelfController: Stub SaveCurrentScreenshot
2021-12-02 18:02:26 -08:00
Morph f650d11a53 service: am: ISelfController: Stub SaveCurrentScreenshot
- Used by Disney Magical World 2: Enchanted Edition
2021-12-02 20:12:24 -05:00
Morph 727461dd71 Merge pull request #7452 from german77/controller_navigation
yuzu: Implement basic controller UI navigation
2021-12-02 19:55:08 -05:00
german77 21872bec53 yuzu: Implement basic controller navigation 2021-12-02 15:17:44 -06:00
Morph 2b9afa4d56 general: Replace high_resolution_clock with steady_clock
On some OSes, high_resolution_clock is an alias to system_clock and is not monotonic in nature. Replace this with steady_clock.
2021-12-02 14:20:43 -05:00
Feng Chen 10cc89bfdf Support multiple videos playing 2021-12-02 12:48:42 +08:00
Morph 2bd51ec9e5 service: friend: Implement GetCompletionEvent
- Used by Super Bomberman R Online
2021-11-30 12:19:21 -05:00
Narr the Reg 3e826e9f30 Merge pull request #7472 from Morph1984/post-kraken-cleanup
core: hid: Post kraken cleanup
2021-11-29 21:10:02 -06:00
Narr the Reg 48537c07cd input_common: Fix error with thread name 2021-11-29 22:03:47 -05:00
Morph ef31afb71f input_interpreter: Make use of NpadButton instead of a u64
Allows us to be more explicit with the representation of button states and use the provided bit manipulation operators
2021-11-29 19:21:51 -05:00
Morph f34773ee36 npad: Return NpadButton in GetAndResetPressState
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-29 19:21:51 -05:00
Morph 978c1c2853 core: hid: hid_types: Add "All" to NpadButton
This represents a bitmask for all pressed buttons
2021-11-29 19:21:51 -05:00
Morph 1524ed6776 qt_controller: Make use of (Enable/Disable)AllControllerConfiguration
This also moves the use of DisableConfiguration to the destructor.
2021-11-29 19:21:50 -05:00
bunnei 7109a780d7 Merge pull request #7466 from vonchenplus/add_miss_pixel_format_mapping
Add missing pixel format mapping
2021-11-29 15:19:15 -08:00
Morph 715d4bdbc6 core: hid: hid_core: Add (Enable/DIsable)AllControllerConfiguration 2021-11-29 17:59:58 -05:00
Morph 726d16f266 general: Fix handheld typo 2021-11-29 17:22:59 -05:00
Morph bc2f114e75 core: hid: Mark constructors as explicit 2021-11-29 17:20:15 -05:00
Morph 24b6822c56 core: hid: Cleanup and amend documentation 2021-11-29 17:20:14 -05:00
vperus e899505921 Revert of 1dabf6d
Caused worker_thread to be stuck in Stage1Completed state until job's destruction.
2021-11-29 16:37:11 +02:00
vperus bd95c199bc [input_common] Add completion test for CalibrationConfigurationJob 2021-11-29 16:33:12 +02:00
Feng Chen 2e834bfa4a Add missing pixel format mapping 2021-11-29 12:39:37 +08:00
german77 d7065ddfda qt_controller: Fix input when the controller applet is ignored 2021-11-28 21:03:42 -06:00
Fernando S d15bbac985 Merge pull request #7396 from FernandoS27/blit-this-mf
TextureCache: Eliminate format deduction as full depth conversion has been supported.
2021-11-28 12:16:31 +01:00
Fernando Sahmkow 4e74fa32a4 Texture Cache: Secure insertions against deletions. 2021-11-28 10:53:27 +01:00
bunnei 05cd56b716 Merge pull request #7438 from german77/homebrew2
Core: Stub services and functions needed for checkpoint
2021-11-28 00:54:48 -08:00
Narr the Reg 9139019352 core/ns: Implement GetReadOnlyApplicationControlDataInterface
Used in checkpoint homebrew
2021-11-27 20:30:16 -06:00
Narr the Reg 979bdaeddd core/pdm: Stub QueryPlayStatisticsByApplicationIdAndUserAccountId
Used in checkpoint homebrew
2021-11-27 20:30:16 -06:00
german77 b7357d95a7 settings: Add debug setting to enable all controllers 2021-11-27 20:24:37 -06:00
Narr the Reg 297b5accab core/hid: Stub GetUniquePadsFromNpad
Used in checkpoint homebrew
2021-11-27 09:03:10 -06:00
Fernando S b4bdeffedd Merge pull request #7255 from german77/kraken
Project Kraken: Input rewrite
2021-11-27 11:52:08 +01:00
Fernando Sahmkow fc91c0f51d Texture Cache: Redesigning the blitting system (again). 2021-11-27 11:22:16 +01:00
german77 8df8dd6c5c config: Remove vibration configuration 2021-11-26 19:31:04 -06:00
german77 83c9e8c4a2 applet/controller: Enable configuring mode while the applet is open 2021-11-26 18:55:28 -06:00
bunnei a44fffc409 Merge pull request #7431 from liushuyu/fix-linux-decoding
video_core/codecs: fix multiple decoding issues on Linux
2021-11-26 15:38:40 -08:00
Narr the Reg 7b56b2cab6 input_common: Fully implement UDP controllers 2021-11-26 15:46:36 -06:00
Fernando Sahmkow dcce920306 Texture Cache: Further fix regressions. 2021-11-26 17:03:48 +01:00
bunnei 3dc2a18c50 Merge pull request #7330 from MightyCreak/simplify-theme-selection
Replace "Light" theme by "Default"
2021-11-25 01:52:48 -08:00
Narr the Reg d20817d2f1 service/hid: Finish converting LIFO objects and address some nits 2021-11-24 20:30:29 -06:00
german77 2e699e089a yuzu: Fix TAS from rebase 2021-11-24 20:30:29 -06:00
german77 b8b849dc2e input_common: Move button names to the frontend 2021-11-24 20:30:28 -06:00
german77 bc9641614d input_common: Fix SDL controller with inverted axis 2021-11-24 20:30:28 -06:00
german77 af121ded18 bootmanager: Use cross-platform keyboard input 2021-11-24 20:30:28 -06:00
german77 30de38ee7f kraken: Address comments from review
Fix compiler bug
2021-11-24 20:30:28 -06:00
german77 25521cd948 core/hid: Improve accuary of mouse implementation 2021-11-24 20:30:28 -06:00
german77 dfb63175d1 core/hid: Fully implement native mouse 2021-11-24 20:30:28 -06:00
german77 6032358402 input_common: Allow keyboard to be backwards compatible 2021-11-24 20:30:28 -06:00
german77 ebfe40dec8 core/hid: Improve accuracy of the keyboard implementation 2021-11-24 20:30:28 -06:00
german77 41dbb2d3cb core/hid: Fix keyboard alignment 2021-11-24 20:30:28 -06:00
german77 99485a06a7 core/hid: Remove usage of native types, fix a couple of errors with motion 2021-11-24 20:30:28 -06:00
german77 ac0154259a settings: Remove includes of core.h 2021-11-24 20:30:27 -06:00
german77 d12525737a service/hid: Remove includes of core.h and settings.h 2021-11-24 20:30:27 -06:00
Levi Behunin ff650fc863 UI nits
Set top margin to 6 on Right Stick, LeftStick, Face Buttons, D-Pad.
Change property on Input Device QComboBox from minimumSize to minimumContentsLength.
2021-11-24 20:30:27 -06:00
german77 8d9d6516fd service/hid: Add support for new controllers 2021-11-24 20:30:27 -06:00
german77 0cf8201c5d settings: Fix controller preview not displaying the correct controller 2021-11-24 20:30:27 -06:00
german77 8517d89be0 core/hid: Rename NpadType to NpadStyleIndex 2021-11-24 20:30:27 -06:00
german77 ddcdaac727 config: Cleanup and documentation 2021-11-24 20:30:27 -06:00
german77 94c972fb36 input_common: Fix motion from 3 axis 2021-11-24 20:30:27 -06:00
german77 a4cdafed54 core/hid: Prevent Emulated controller from flapping with multiple inputs devices 2021-11-24 20:30:27 -06:00
german77 93997b234f core/hid: Fully emulate motion from button 2021-11-24 20:30:27 -06:00
german77 4736326a05 second commit lion review 2021-11-24 20:30:26 -06:00
german77 a8852024b6 settings: Fix Debug controller type options 2021-11-24 20:30:26 -06:00
german77 9f91335a71 kraken: Address comments from review
start lion review
2021-11-24 20:30:26 -06:00
german77 f63c6fce6d input_common: Revert deleted TAS functions 2021-11-24 20:30:26 -06:00
german77 df91c97a36 core/hid: Explain better what a temporary value does 2021-11-24 20:30:26 -06:00
german77 254d133be2 input_common: Fix GC adapter initialization
Fix GC controller
2021-11-24 20:30:26 -06:00
german77 92a9205566 core/hid: Update structs to 13.1.0 2021-11-24 20:30:26 -06:00
german77 d0389d2971 core/hid: Add TAS input 2021-11-24 20:30:26 -06:00
german77 3cd0dd4227 input_common: Fix UDP uuid 2021-11-24 20:30:26 -06:00
german77 124404e756 input_common: Add multiple vibration curves 2021-11-24 20:30:26 -06:00
german77 012691087a core/hid: Rework battery mappings 2021-11-24 20:30:26 -06:00
german77 ae6ba2c8bd input_common: Add manual update options to input devices 2021-11-24 20:30:26 -06:00
german77 c545dca53b service/hid: Fix memory allocated incorrectly 2021-11-24 20:30:25 -06:00
german77 d1bac9024d settings: Fix mouse and keyboard mappings 2021-11-24 20:30:25 -06:00
german77 6743753bc7 web_applet: Replace HIDButton with NpadButton 2021-11-24 20:30:25 -06:00
german77 d813cbd592 Morph review first wave 2021-11-24 20:30:25 -06:00
german77 ecb9ca0dc2 service/hid: Match shared memory closer to HW 2021-11-24 20:30:25 -06:00
german77 498dd14bc7 yuzu: Fix loading input profiles 2021-11-24 20:30:25 -06:00
german77 b3f59b4407 kraken: Address comments from review
review fixes
2021-11-24 20:30:25 -06:00
german77 1f0a7a8bca service/hid: Use ring buffer for gestures 2021-11-24 20:30:25 -06:00
german77 8ea02d19a1 service/hid: Fix gesture input 2021-11-24 20:30:25 -06:00
german77 6774c7988b configuration: Migrate controller settings to emulated controller 2021-11-24 20:30:25 -06:00
german77 6c7814bc9c core/hid: Fix rumble too strong at 1% 2021-11-24 20:30:24 -06:00
german77 00f654cd22 core/hid: Only signal when needed 2021-11-24 20:30:24 -06:00
german77 88cb39be9f hid: Fix controller connection/disconnection 2021-11-24 20:30:24 -06:00
german77 c39001eaa6 core/hid: Documment some files 2021-11-24 20:30:24 -06:00
german77 0292fe0198 kraken: Fix errors from rebase and format files 2021-11-24 20:30:24 -06:00
german77 66cf94709a core/hid: Add output devices 2021-11-24 20:30:24 -06:00
german77 a197599d08 core: Update input interpreter 2021-11-24 20:30:24 -06:00
german77 35cb1c64a9 yuzu: Update overlay applet 2021-11-24 20:30:24 -06:00
german77 d879443146 core/frontend: Update applets 2021-11-24 20:30:24 -06:00
german77 9f38fa7ffe core: Remove frontend/input 2021-11-24 20:30:24 -06:00
german77 0655b8da59 service/hid: Rewrite npad to use ring lifo and the emulated controller 2021-11-24 20:30:24 -06:00
german77 8b1126f80e service/hid: Update console sixaxis to the emulated console 2021-11-24 20:30:24 -06:00
german77 6b6628651f service/hid: Update mouse and keyboard to use ring lifo and the emulated device 2021-11-24 20:30:24 -06:00
german77 9c28d458bd service/hid: Update touch and gestures to use ring lifo and the emulated console 2021-11-24 20:30:24 -06:00
german77 b749bd7498 service/hid: Update debug pad, xpad, stubbed and controller base to use ring lifo and the emulated controller 2021-11-24 20:30:23 -06:00
german77 70a0aba81d service/hid: Use remove duplicated code, update names 2021-11-24 20:30:23 -06:00
german77 461b19a681 service/hid: Create ring LIFO 2021-11-24 20:30:23 -06:00
german77 5709d1271e Qt_applets: Use new input 2021-11-24 20:30:23 -06:00
german77 84bda35f14 settings: Cleanup settings 2021-11-24 20:30:23 -06:00
german77 5d631fd6ef debugger/controller: Remove TAS 2021-11-24 20:30:23 -06:00
german77 d2f31e805b core/emu_window: Remove touch input 2021-11-24 20:30:23 -06:00
german77 28ede3e11a yuzu: Update frontend 2021-11-24 20:30:23 -06:00
german77 4f3c5f0101 core: Register HID 2021-11-24 20:30:23 -06:00
german77 5298dba88e core/hid: Add emulated controllers 2021-11-24 20:30:23 -06:00
german77 4ef141d563 yuzu_cmd: Use new input 2021-11-24 20:30:23 -06:00
german77 1698b991c5 yuzu: Use new input on main and bootmanager 2021-11-24 20:30:23 -06:00
german77 547a1e6dc9 input_common: Rewrite main and add the new drivers 2021-11-24 20:30:23 -06:00
german77 4fc8607f61 input_common: Remove obsolete files 2021-11-24 20:30:23 -06:00
german77 9a108578ed input_common: Rewrite SDL 2021-11-24 20:30:23 -06:00
german77 13413c2290 input_common: Rewrite udp client 2021-11-24 20:30:22 -06:00
german77 ec744b3b04 input_common: Rewrite tas input 2021-11-24 20:30:22 -06:00
german77 78a8ed6290 input_common: Rewrite gc_adapter 2021-11-24 20:30:22 -06:00
german77 86a57fb096 input_common: Rewrite touch 2021-11-24 20:30:22 -06:00
german77 280342cd0a input_common: Rewrite mouse 2021-11-24 20:30:22 -06:00
german77 00d3c058c5 input_common: Rewrite keyboard 2021-11-24 20:30:22 -06:00
german77 1d0e9b62da input_common: Move touch and analog from button. Move udp protocol 2021-11-24 20:30:22 -06:00
german77 783c01771a input_common: Create input poller and mapping 2021-11-24 20:30:22 -06:00
german77 312dd2fb89 input_common: Create input_engine 2021-11-24 20:30:22 -06:00
german77 61e34f0759 core/hid: Move motion_input, create input converter and hid_types 2021-11-24 20:30:22 -06:00
german77 341d3e2f11 core/hid: Move input_interpreter to hid 2021-11-24 20:30:22 -06:00
german77 cb6b6189d7 common: Rewrite and move core/frontend/input.h to common 2021-11-24 20:30:21 -06:00
Adam Heinermann 61c990726b Refactor menu states and shortcuts in GMainWindow. (#7419)
Refactor menu states and shortcuts in GMainWindow.

- Removed "Start", since it was always disabled unless it was "Continue"
which has now been moved to "Pause".
- Allow hotkeys to be used while in fullscreen.
- Removed the load amiibo hotkey.
2021-11-24 21:27:25 -05:00
liushuyu 1a5c1d70de video_core/codec: address comments 2021-11-24 18:06:38 -07:00
liushuyu f91cc356fb video_core/codecs: fix multiple decoding issues on Linux ...
* when someone installed Intel video drivers on an AMD system, the
  decoder will select the Intel VA-API decoding driver and yuzu will
  crash due to incorrect driver selection; the fix will check if the
  currently about-to-use driver is loaded in the kernel
* when using NVIDIA driver on Linux with a ffmpeg that does not have
  CUDA capability enabled, the decoder will crash; the fix simply
  making the decoder prefers the VDPAU driver over CUDA on Linux
2021-11-24 17:23:57 -07:00
bunnei 08fb49f20a Merge pull request #7404 from Kewlan/per-game-framerate-cap
configure_general: Allow framerate cap to be used in custom game configs
2021-11-24 02:36:30 -08:00
bunnei 1d8b5271b4 Merge pull request #7394 from Morph1984/svc-SetMemoryPermission
kernel: svc: Implement SetProcessMemoryPermission
2021-11-22 14:06:09 -08:00
Fernando Sahmkow 81f52ea8fc Texture Cache: Fix issue with blitting 3D textures. 2021-11-22 06:07:21 +01:00
Mai M 21cff3fc90 Merge pull request #7406 from heinermann/tas_menu
Added TAS controls to the menu under Tools
2021-11-21 23:17:07 -05:00
jam1garner 4b9926e608 arm: dynarmic: Cleanup icache op handling 2021-11-21 22:44:13 -05:00
jam1garner 068124d506 arm: dynarmic: Implement icache op handling for 'ic iallu' instruction 2021-11-21 21:18:56 -05:00
jam1garner 3f51dd23da arm: dynarmic: Implement icache op handling for 'ic ivau' instruction 2021-11-21 21:10:14 -05:00
Adam Heinermann 08fd2b2916 const fixes 2021-11-21 18:07:37 -08:00
Adam Heinermann 6e16b52bc7 Apply clang format 2021-11-21 18:02:08 -08:00
Adam Heinermann d54e98fb4a Added TAS controls to the menu under Tools 2021-11-21 17:28:47 -08:00
Fernando Sahmkow dc87895c22 Texture Cache: Correct conversion shaders. 2021-11-22 00:21:42 +01:00
Fernando Sahmkow c03917860b Texture Cache: Always copy on NVIDIA. 2021-11-22 00:06:56 +01:00
Fernando Sahmkow 09a236dbbf TextureCache: Simplify blitting of D24S8 formats and fix bugs. 2021-11-22 00:00:01 +01:00
Fernando Sahmkow eae2158c12 VulkanTexturECache: Use reinterpret on D32_S8 formats. 2021-11-21 21:09:49 +01:00
Fernando Sahmkow 5b92772fe6 HostShaders: Fix D24S8 convertion shaders. 2021-11-21 21:04:04 +01:00
Kewlan 843fa6221e configure_general: Allow framerate cap to be used in custom game configs 2021-11-21 16:57:00 +01:00
bunnei 0442db9ad6 Merge pull request #7395 from Morph1984/resolve-comments
general: Resolve comments in PR #7368
2021-11-21 02:42:24 -08:00
bunnei 15212de85a Merge pull request #7389 from ameerj/screenshot-1x
Fix screenshot dimensions when at 1x scale
2021-11-21 02:31:32 -08:00
bunnei bdacff6b39 Merge pull request #7359 from heinermann/kthread_crash
Fix crash on exit due to static scoped dummy threads
2021-11-20 23:59:58 -08:00
bunnei b578a02420 Merge pull request #7393 from Morph1984/pm-ams-get-pid
service: pm: Implement AtmosphereGetProcessId
2021-11-20 22:08:25 -08:00
Fernando Sahmkow df62d93979 TextureCache: Eliminate format deduction as full depth conversion has been supported. 2021-11-21 05:37:01 +01:00
Morph 463793ccb5 kernel: svc: Move all IsValid functions to an anonymous namespace 2021-11-20 22:49:13 -05:00
Morph 64079bc2f2 kernel: svc: Implement SetProcessMemoryPermission
- Used by Skyline modding framework
2021-11-20 22:18:56 -05:00
Morph d9bfc2d546 kernel: KPageTable: Rename SetCodeMemoryPermission to SetProcessMemoryPermission 2021-11-20 22:18:56 -05:00
Morph e0c4af1b7b vk_texture_cache: Mark VkBufferUsageFlags as static constexpr 2021-11-20 21:49:37 -05:00
Morph feba9b7300 vk_blit_image: Consolidate CreatePipelineTargetEx functions 2021-11-20 21:18:37 -05:00
Morph a1da80a1cd service: pm: Implement AtmosphereGetProcessId
- Used by Skyline modding framework
2021-11-20 20:56:29 -05:00
Morph 5ed5db7883 service: pm: Add all relevant result codes 2021-11-20 20:56:28 -05:00
bunnei 9e4707b508 Merge pull request #7368 from FernandoS27/vulkan-conv
Fix ART Blit detection regression and add D24S8 <-> RGBA8 conv to Vulkan
2021-11-20 16:51:13 -08:00
Morph 20ac4fd61b service: pm: Rename title id to program id 2021-11-20 19:39:26 -05:00
ameerj 69759e55ee Fix screenshot dimensions when at 1x scale
This was regressed by ART.
Prior to ART, the screenshots were saved at the title's framebuffer resolution. A misunderstanding of the existing logic led to screenshot dimensions becoming dependent on the host render window size.

This changes the behavior to match how it was prior to ART at 1x, with screenshots now always being the title's framebuffer dimensions scaled by the resolution scaling factor.
2021-11-20 17:50:24 -05:00
Fernando Sahmkow e6d7d48d78 TextureCache: Refactor and fix linux compiling. 2021-11-20 14:46:19 +01:00
Fernando Sahmkow 1bd224dda0 TextureCache: Assure full conversions on depth/stencil write shaders. 2021-11-20 06:17:01 +01:00
Fernando Sahmkow e926797029 TextureCache: Implement buffer copies on Vulkan. 2021-11-20 06:15:29 +01:00
bunnei cee5a7b762 Merge pull request #7294 from vonchenplus/fix_image_update_error_when_width_too_small
Fix image update/download error when width too small
2021-11-19 15:56:27 -08:00
Fernando Sahmkow df1eabfc53 TextureCache: Add R16G16 to D24S8 converter. 2021-11-20 00:02:12 +01:00
Fernando Sahmkow 4241b9e26c TextureCache: Add B10G11R11 to D24S8 converter. 2021-11-19 23:22:44 +01:00
Fernando Sahmkow efe634608e TextureCache: Further fixes on resolve algorithm. 2021-11-19 23:02:04 +01:00
Feng Chen dbfa89c40b Implement convert legacy to generic 2021-11-19 22:53:58 +08:00
bunnei efd702df07 Merge pull request #7369 from Morph1984/amd-fsr-statusbar
main: Shorten AMD FSR status bar text
2021-11-19 01:20:27 -08:00
bunnei a726f4b74d Merge pull request #7342 from goldenx86/patch-3
Replace keys error pop up
2021-11-19 01:17:18 -08:00
bunnei 2b5f99cebd Merge pull request #7357 from Morph1984/s8_uint
video_core: Implement S8_UINT format
2021-11-19 01:16:49 -08:00
Fernando Sahmkow 5e58fd30b6 TextureCache: Implement additional D24S8 convertions. 2021-11-19 06:27:44 +01:00
Fernando Sahmkow 57e1775bc8 TextureCache: force same image format when resolving an image. 2021-11-19 05:46:57 +01:00
Morph 42790d3b6c main: Fix default AA name
By default, no AA is applied, not FXAA
2021-11-18 23:22:32 -05:00
Morph e0ec4b4855 configure_graphics_ui: AMD's -> AMD
AMD officially markets FSR as AMD FidelityFX™️ Super Resolution
2021-11-18 23:17:16 -05:00
Morph 3fdd823bf4 main: Shorten AMD FSR status bar text
AMD'S FIDELITYFX SR -> FSR
2021-11-18 23:17:16 -05:00
Fernando Sahmkow 37459e821b TextureCache: Fix regression caused by ART and improve blit detection algorithm to be smarter. 2021-11-19 03:17:54 +01:00
Fernando Sahmkow a21d1447ab Vulkan: implement D24S8 <-> RGBA8 convertions. 2021-11-19 03:17:02 +01:00
bunnei 25324b011f Merge pull request #7349 from ameerj/ogl-convert-image
gl_texture_cache: Implement pixel format conversions for copies
2021-11-18 11:30:47 -08:00
bunnei b7d836d5d7 Merge pull request #7353 from v1993/no-more-epilepsy
Prevent window flickering when holding Esc
2021-11-18 11:26:28 -08:00
Morph 39a49776b6 renderer_vulkan: Implement S8_UINT stencil format
It should be noted that on Windows, only nvidia gpus support this format natively as of this commit.
2021-11-18 00:05:51 -05:00
ameerj b31bfc9ca5 gl_texture_cache: Round format conversion PBO to next power of 2 2021-11-17 23:49:44 -05:00
bunnei 00c30d56d1 Merge pull request #7355 from german77/hotkey_spam
hotkeys: Don't allow hotkeys to spam
2021-11-17 18:16:17 -08:00
Adam Heinermann fc017ead67 Fix crash on exit due to static scoped dummy threads 2021-11-17 15:29:25 -08:00
Morph be263c113c renderer_opengl: Implement S8_UINT stencil format 2021-11-17 15:05:07 -05:00
Morph c7bdf8825f video_core: Add S8_UINT stencil format 2021-11-17 15:04:38 -05:00
german77 d46c9689ac hotkeys: Don't allow hotkeys to spam 2021-11-17 10:42:20 -06:00
Valeri 930d7eca24 Prevent window flickering when holding Esc
Reported on discord by Levlight. Don't try to exit fullscreen if it's already off.
2021-11-17 18:07:47 +03:00
Feng Chen f4ee936f8b Fix image update/download error when width too small 2021-11-17 12:21:17 +08:00
ameerj ba5778b0e3 texture_cache: Use pixel format conversion when supported by the runtime 2021-11-16 22:32:46 -05:00
ameerj 902c3f97ce gl_texture_cache: Make FormatConversionPass more generic
This allows the usage of the FormatConversionPass to be applied to more than the previously used BGR conversion scenarios.
2021-11-16 22:32:11 -05:00
ameerj 96df298438 gl_texture_cache: Rename BGRCopyPass to FormatConversionPass 2021-11-16 22:31:58 -05:00
Fernando Sahmkow 88936fc84a TextureCache: Fix Automatic Anisotropic. 2021-11-17 03:15:08 +01:00
FernandoS27 c136081f6e TextureCache: OGL query device memory if possible. 2021-11-17 01:45:50 +01:00
Fernando Sahmkow 923aab37f8 TextureCache: Fix OGL cleaning 2021-11-17 00:59:46 +01:00
Fernando Sahmkow c74619d266 TextureCache: Add automatic anisotropic filtering and refactor code. 2021-11-16 23:14:51 +01:00
Fernando Sahmkow 28fddb9c5e TextureCache: Make a better Anisotropic setter. 2021-11-16 22:11:33 +01:00
Fernando Sahmkow 45b03b3c9f Texture Cache: revert Image changes. 2021-11-16 22:11:33 +01:00
Fernando Sahmkow 04b8e6c834 ShaderCache: Better fix for Shuffling gl_FragCoord 2021-11-16 22:11:33 +01:00
FernandoS27 9ba0a1e022 HostShader: fix Gaussian filter. 2021-11-16 22:11:33 +01:00
FernandoS27 b3494533e5 Texture Cahe/Shader decompiler: Resize PointSize on rescaling, refactor and make reaper more agressive on 4Gb GPUs. 2021-11-16 22:11:33 +01:00
ameerj 80b8b7c241 texture_cache: Refactor Render Target scaling function 2021-11-16 22:11:33 +01:00
ameerj 0299a48a5b gl_resource_manager: Ensure non EXT_framebuffer objects are created 2021-11-16 22:11:33 +01:00
FernandoS27 795daca444 Texture Cache: Fix memory usage on ScaleDown. 2021-11-16 22:11:33 +01:00
FernandoS27 74ce2f4f6f OpenGL: Fix viewport/Scissor scaling on downscaling. 2021-11-16 22:11:33 +01:00
FernandoS27 759bb872c3 Vulkan: fix regression. 2021-11-16 22:11:33 +01:00
ameerj 9db1c7f6c9 host_shaders: Misc copyright/style changes 2021-11-16 22:11:33 +01:00
ameerj 612c52a5fc configure_graphics.ui: Cleanup scaling options and fix duplicate name warning 2021-11-16 22:11:33 +01:00
ameerj 9f2bab53fd FSR: Fix GCC build errors 2021-11-16 22:11:33 +01:00
Marshall Mohror 71e8b72b01 Vulkan: Reimplement FSR constant generation functions to avoid GCC warnings 2021-11-16 22:11:33 +01:00
ameerj 29ef93cc67 vk_blit_screen: Fix AA destruction order 2021-11-16 22:11:32 +01:00
Marshall Mohror c2f855fb98 Presentation: Only use FP16 in scaling shaders on supported devices in Vulkan 2021-11-16 22:11:32 +01:00
ameerj 42b2b47f60 renderer_vulkan/blit_image: Use generic color state on Depth to Color blits
Fixes Bayonetta 2 on AMD
2021-11-16 22:11:32 +01:00
ameerj d8e0e95991 vk_texture_cache: Refactor 3D scaling helpers 2021-11-16 22:11:32 +01:00
ameerj 572315d46b gl_rasterizer: Fix ScissorTest and Clear when scaling 2021-11-16 22:11:32 +01:00
ameerj 904f32975e gl_texture_cache: Simplify scaling procedures 2021-11-16 22:11:32 +01:00
Fernando Sahmkow 1ecaca64b4 OpenGlTextureCache: Fix state invalidation on rescaling. 2021-11-16 22:11:32 +01:00
Fernando Sahmkow 4462c6ee38 VulkanBufferCache: Avoid adding barriers between multiple copies. 2021-11-16 22:11:32 +01:00
Fernando Sahmkow 59680838a9 HostShader: Fix gaussian and add attribution. 2021-11-16 22:11:32 +01:00
Fernando Sahmkow 30039bb358 Yuzu UI: Add button for Anti Alias 2021-11-16 22:11:32 +01:00
Fernando Sahmkow e3e55f450f Vulkan: Fix FXAA in AMD. 2021-11-16 22:11:32 +01:00
Fernando Sahmkow ceace57320 Texture Cache: Fix blitting. 2021-11-16 22:11:32 +01:00
FernandoS27 0a3e7c6f14 Vulkan: Implement FXAA 2021-11-16 22:11:32 +01:00
Marshall Mohror 598aaf3d74 OpenGL: fix FXAA with scaling 2021-11-16 22:11:32 +01:00
Marshall Mohror be286aaa66 OpenGL: Implement FXAA 2021-11-16 22:11:32 +01:00
Marshall Mohror e6c99aecb0 Frontend: Add anti-aliasing method setting 2021-11-16 22:11:32 +01:00
Marshall Mohror d5d689d3aa Settings: Add anti-aliasing method setting 2021-11-16 22:11:32 +01:00
FernandoS27 9fa06bcc03 QtGUI: Add buttton to toggle the filter. 2021-11-16 22:11:32 +01:00
FernandoS27 f54d6dee54 VideoCore: Add gaussian filtering. 2021-11-16 22:11:32 +01:00
FernandoS27 52fc766daf TextureCache: Improve Reaper. 2021-11-16 22:11:32 +01:00
FernandoS27 6db528fb65 Vulkan: fix waiting on semaphore. 2021-11-16 22:11:32 +01:00
Marshall Mohror 887480c513 Update scaleforce to use FP16 2021-11-16 22:11:32 +01:00
FernandoS27 43200a46fe VideoCore: Add more rescaling option. 2021-11-16 22:11:31 +01:00
FernandoS27 564caa296b TextureCache: fix rescaling in aliases and overlap joins. 2021-11-16 22:11:31 +01:00
Marshall Mohror 62092586a1 Presentation: Fix turning FSR on and off in settings 2021-11-16 22:11:31 +01:00
Fernando Sahmkow ba4171de79 Video Core: fix building for GCC. 2021-11-16 22:11:31 +01:00
FernandoS27 91357303b1 Vulkan Rasterizer: Fix clears on integer textures. 2021-11-16 22:11:31 +01:00
FernandoS27 7f45ef70f3 Texture cache: fix Intel with rescaler. 2021-11-16 22:11:31 +01:00
FernandoS27 0439a16f5c TextureCache: Fix blitting filter in Vulkan and correct viewport/scissor calculation when downscaling. 2021-11-16 22:11:31 +01:00
Fernando Sahmkow 00a337fe07 Texture Cache: fix memory managment and optimize scaled downloads, uploads. 2021-11-16 22:11:31 +01:00
Fernando Sahmkow 9cb30de1ba Texture Cache: ease the requirements of textures being blacklisted. 2021-11-16 22:11:31 +01:00
Fernando Sahmkow 20096dfe4c Vulkan: Fix Blit Depth Stencil 2021-11-16 22:11:31 +01:00
Fernando Sahmkow c8785738b0 Texture Cache: Fix downscaling and correct memory comsumption. 2021-11-16 22:11:31 +01:00
Fernando Sahmkow d20bfdd9a3 Presentation: add Nearest Neighbor filter. 2021-11-16 22:11:31 +01:00
Marshall Mohror 2173534da5 vulkan: Implement FidelityFX Super Resolution 2021-11-16 22:11:31 +01:00
FernandoS27 a75a56e998 Texture Cache: Rescale conversions between depth and color 2021-11-16 22:11:31 +01:00
Fernando Sahmkow 2ea2bc9f01 Texture cache: Fix memory consumption and ignore rating when a depth texture is rendered. 2021-11-16 22:11:31 +01:00
ameerj d644a3780c vulkan: Fix rescaling push constant usage 2021-11-16 22:11:31 +01:00
Fernando Sahmkow 7bb52ad3a7 Texture Cahe: Fix downscaling on SMO. 2021-11-16 22:11:31 +01:00
ameerj 4cbb1d0799 texture_cache_base: Remove unused function declarations 2021-11-16 22:11:31 +01:00
ameerj 4290f2101d yuzu: Fix build errors 2021-11-16 22:11:31 +01:00
ameerj 3c0e8a57e6 vk_texture_cache: Use 3D to scale images when blit is unsupported 2021-11-16 22:11:31 +01:00
ameerj 1efc65f2d3 texture_cache: Fix infinitely recursive ImageCanRescale check 2021-11-16 22:11:31 +01:00
ameerj 311b2327cb vk_texture_cache: Fix BlitScale of non-2D images 2021-11-16 22:11:31 +01:00
ameerj b4742306d8 video_core: Refactor resolution scale function 2021-11-16 22:11:31 +01:00
ameerj d4f9388875 texture_cache: Fix image resolves when src/dst are not both scaled 2021-11-16 22:11:30 +01:00
lat9nq 0fe6ef6109 yuzu_cmd: Read resolution_setup and scaling_filter from config
Also adds descriptions and the settings to the default config.
2021-11-16 22:11:30 +01:00
lat9nq c89adcb342 video_core,yuzu: Move UpdateRescalingInfo call to video_core
This only needs to happen once per game boot, so we can just call it
during CreateGPU and be done with it, avoiding the need to call it in
the frontends.
2021-11-16 22:11:30 +01:00
ameerj b15c9a406f gl_texture_cache: Disable scissor test when scaling textures
Fixes a bug on BOTW where some objects were no longer being rendered after blitting
2021-11-16 22:11:30 +01:00
ameerj 83aec496da vk_texture_cache: Fix unsupported blit format error checking 2021-11-16 22:11:30 +01:00
ameerj 52cc6f51aa vk_texture_cache: Fix early returns on unsupported scales 2021-11-16 22:11:30 +01:00
ameerj d99a6e8e47 video_core: Misc resolution scaling related refactoring 2021-11-16 22:11:30 +01:00
ameerj 0b0403b779 texture_cache: Refactor scaled image size calculation 2021-11-16 22:11:30 +01:00
Fernando Sahmkow d4f803a81b Texture Cache: Fix calculations when scaling. 2021-11-16 22:11:30 +01:00
ameerj 3efb140439 gl_texture_cache: Fix BGR pbo size for scaled textures 2021-11-16 22:11:30 +01:00
ameerj 1ce6cd119d rescaling_pass: Fix IR errors when unscalable texture types are encountered 2021-11-16 22:11:30 +01:00
Fernando Sahmkow 6ca801276b Texture Cache: Fix Rescaling on Multisample 2021-11-16 22:11:30 +01:00
Fernando Sahmkow fc21f37496 TextureCache: Base fixes on rescaling. 2021-11-16 22:11:30 +01:00
ameerj 63465c24e1 rescaling_pass: Logic simplification and minor style cleanup 2021-11-16 22:11:30 +01:00
ameerj 746d27372f rescaling_pass: Scale ImageFetch offset if it exists
Plus some code deduplication
2021-11-16 22:11:30 +01:00
ameerj b5ba8bec0e rescaling_pass: Enable PatchImageQueryDimensions on fragment stages 2021-11-16 22:11:30 +01:00
ameerj abe81f73ef vk_texture_cache: Simplify scaled image management 2021-11-16 22:11:30 +01:00
ameerj 226aeeec04 gl_texture_cache: Fix scaling backup logic 2021-11-16 22:11:30 +01:00
ameerj c2174cbb8f vk_rasterizer: Fix scaling on Y_NEGATE 2021-11-16 22:11:30 +01:00
ameerj 0213e5353d vk_texture_cache: Use nearest neighbor scaling when available 2021-11-16 22:11:30 +01:00
ameerj 5cef89d424 gl_texture_cache: Fix depth and integer format scaling blits 2021-11-16 22:11:30 +01:00
ameerj e2f0f51295 gl_texture_cache/rescaling_pass: minor cleanup 2021-11-16 22:11:30 +01:00
ameerj 3beae9ae77 vk_texture_cache: Minor cleanup 2021-11-16 22:11:30 +01:00
ameerj 54ecf7c8c1 rescaling_pass: Fix and simplify shuffle/fragcoord pass 2021-11-16 22:11:30 +01:00
Fernando Sahmkow 4535feac87 Shader: Don't rescale FragCoord if used by Shuffle 2021-11-16 22:11:30 +01:00
ameerj 355343d57c image_info: Mark MSAA textures as non-rescalable
Blitting or resolving multisampled images requires the dimensions of the src and dst to be equal for valid usage, making them difficult for resolution scaling using the current implementation.
2021-11-16 22:11:30 +01:00
ameerj 4919d2d00f bootmanager: Fix screenshot resolution factor usage
Fixes screenshots at non integer scaling
2021-11-16 22:11:30 +01:00
ameerj 1e67e6c225 gl_texture_cache: Simplify scaling
We don't need to reconstruct new textures every time we ScaleUp/ScaleDown. We can scale up once, and revert to the original texture whenever scaling down.
Fixes memory leaks due to glDeleteTextures being deferred for later handling on some drivers
2021-11-16 22:11:29 +01:00
ameerj 8539edc252 Renderers: Unify post processing filter shaders 2021-11-16 22:11:29 +01:00
ameerj f6e3e6651c gl_texture_cache: fix scaling on upload 2021-11-16 22:11:29 +01:00
Fernando Sahmkow bca25d2a0f Renderer: Implement Bicubic and ScaleForce filters. 2021-11-16 22:11:29 +01:00
Fernando Sahmkow cdbe98a4d0 Texture Cache: fix scaling on upload and stop scaling on base resolution. 2021-11-16 22:11:29 +01:00
ameerj 02f27b1992 shader, video_core: Fix GCC build errors 2021-11-16 22:11:29 +01:00
ameerj 92bb068ad5 emit_spirv: Fix RescalingLayout alignment 2021-11-16 22:11:29 +01:00
Fernando Sahmkow 674b073744 TextureCache: Fix Buffer Views Scaling. 2021-11-16 22:11:29 +01:00
Fernando Sahmkow 2549ee33ee RescalingPass: Agregate pixels on texelFetch while on Fragment Shader 2021-11-16 22:11:29 +01:00
Fernando Sahmkow 6933f82023 Texture Cache: Correctly fix Blits Rescaling. 2021-11-16 22:11:29 +01:00
Fernando Sahmkow dc6f13060b shader: Fix TextureSize check on rescaling. 2021-11-16 22:11:29 +01:00
ameerj 877f6e4db7 texture_cache: Disable dst_image scaling in BlitImage
Fixes scaling in Super Mario Party
2021-11-16 22:11:29 +01:00
ameerj a8a021ddcf emit_spirv: Fix RescalingLayout alignment 2021-11-16 22:11:29 +01:00
ReinUsesLisp d04e2dac6c shader: Properly scale image reads and add GL SPIR-V support
Thanks for everything!
2021-11-16 22:11:29 +01:00
ReinUsesLisp 928ff21aae shader: Properly blacklist and scale image loads 2021-11-16 22:11:29 +01:00
ReinUsesLisp 0100b5e700 texture_cache: Add getter to query if image view is rescaled 2021-11-16 22:11:29 +01:00
ReinUsesLisp dc0a20f7e0 vk_rasterizer: Minor style change 2021-11-16 22:11:29 +01:00
ReinUsesLisp 6e61089164 gl_texture_cache: Fix scaling blits 2021-11-16 22:11:29 +01:00
ReinUsesLisp 0d12e498ab glsl/glasm: Pass and use scaling parameters in shaders 2021-11-16 22:11:29 +01:00
ReinUsesLisp d7178ad04e gl_rasterizer: Properly scale viewports and scissors 2021-11-16 22:11:29 +01:00
ameerj e2a7f219e1 gl_texture_cache: Fix multi layered texture Scale 2021-11-16 22:11:29 +01:00
ameerj 650b57386a gl_compute_pipeline: Add downscale factor to shader uniforms 2021-11-16 22:11:29 +01:00
ameerj d891de0664 gl_rasterizer: Fix rescale dirty state checking 2021-11-16 22:11:29 +01:00
ameerj b83c3e7182 gl_graphics_pipeline: Add downscale factor to shader uniforms 2021-11-16 22:11:28 +01:00
ReinUsesLisp b1504f3118 texture_cache: Fix blacklists on compute 2021-11-16 22:11:28 +01:00
ReinUsesLisp dacd5da998 texture_cache: Simplify image view queries and blacklisting 2021-11-16 22:11:28 +01:00
Fernando Sahmkow a637be0a6e Vulkan: Fix downscaling Blit. 2021-11-16 22:11:28 +01:00
Fernando Sahmkow 02708d7e46 Texture Cache: Implement Rating System. 2021-11-16 22:11:28 +01:00
Fernando Sahmkow 13c8573186 OpenGL: set linear mag filter when blitting a downscaled image. 2021-11-16 22:11:28 +01:00
Fernando Sahmkow 257a19aaa6 Vulkan: Fix AA when rescaling. 2021-11-16 22:11:28 +01:00
Fernando Sahmkow 8cafa0686b Texture Cache: Implement Blacklisting. 2021-11-16 22:11:28 +01:00
Morph 6bbf4540d9 main: Add resolution scale label in the status bar
Shows the resolution scale as "Scale: {}x" in the status bar, where {} is a floating point value representing the current resolution scaling factor.
2021-11-16 22:11:28 +01:00
ReinUsesLisp 6dea5adc4d vulkan: Implement rescaling shader patching 2021-11-16 22:11:28 +01:00
ReinUsesLisp 6c9df94aa6 vk_texture_cache: Properly scale blit source images 2021-11-16 22:11:28 +01:00
ReinUsesLisp 0c46b92625 vk_graphics_pipeline: Use Shader::NumDescriptors when possible 2021-11-16 22:11:28 +01:00
ReinUsesLisp 7c4cd0eb06 opengl: Use Shader::NumDescriptors when possible 2021-11-16 22:11:28 +01:00
ReinUsesLisp e63fc7a4bb spirv: Implement rescaling patching 2021-11-16 22:11:28 +01:00
ReinUsesLisp 403633afcc shader/rescaling_pass: Patch more instructions 2021-11-16 22:11:28 +01:00
ReinUsesLisp 7f88938d72 shader: Add IsTextureScaled opcode 2021-11-16 22:11:28 +01:00
ReinUsesLisp 47946c7017 texture_cache: Add image getters 2021-11-16 22:11:28 +01:00
ReinUsesLisp 50d20bf0e9 shader: Add copy constructor to instructions 2021-11-16 22:11:28 +01:00
ReinUsesLisp 8cfa8cda16 shader: Add integer division opcodes 2021-11-16 22:11:28 +01:00
ReinUsesLisp 1b78ba7247 common/settings: Remove unused scaling options 2021-11-16 22:11:28 +01:00
ReinUsesLisp 952c65ae54 shader: Fix rescaling pass 2021-11-16 22:11:28 +01:00
ameerj 99659cf491 gl_texture_cache: Simplify rescaling 2021-11-16 22:11:28 +01:00
ameerj bc5e9c45c2 texture_cache: Fix typo in aliased image rescaling 2021-11-16 22:11:28 +01:00
ReinUsesLisp e3cba280fb vk_texture_cache: Simplify and optimize scaling blits 2021-11-16 22:11:28 +01:00
ReinUsesLisp b38b0d8dae vk_texture_cache: Fix scaling blit validation errors 2021-11-16 22:11:28 +01:00
ReinUsesLisp 14fb648246 shader: Fix resolution scaling pass 2021-11-16 22:11:27 +01:00
ReinUsesLisp 47d1d881cf shader: Add resolution down factor opcode 2021-11-16 22:11:27 +01:00
ameerj e1f1b85d64 gl_texture_cache: Implement ScaleDown 2021-11-16 22:11:27 +01:00
ameerj 7d1f24e490 gl_texture_cache: Rescale fixes for multi-layered textures 2021-11-16 22:11:27 +01:00
Fernando Sahmkow d34b67ae49 Texture Cache: Implement Rescaling on Aliases and Blits. 2021-11-16 22:11:27 +01:00
ReinUsesLisp 189bacde6a Fix blits with mips 2021-11-16 22:11:27 +01:00
ReinUsesLisp 549d60eb30 Fix blits 2021-11-16 22:11:27 +01:00
ameerj e7867b26ff renderer_gl: Resolution scaling fixes 2021-11-16 22:11:27 +01:00
Fernando Sahmkow 21165271e2 TextureCache: Fix rescaling of ImageCopies 2021-11-16 22:11:27 +01:00
Fernando Sahmkow f6a665f295 TextureCache: Modify Viewports/Scissors according to Rescale. 2021-11-16 22:11:27 +01:00
Fernando Sahmkow fcae5dab7b Settings: eliminate rescaling_factor. 2021-11-16 22:11:27 +01:00
Fernando Sahmkow 835110d72c Texture Cache: More rescaling fixes. 2021-11-16 22:11:27 +01:00
ameerj b3cedc87b9 gl_texture_cache: WIP texture rescale 2021-11-16 22:11:27 +01:00
Fernando Sahmkow 256c4b28c4 Texture Cache: Implement Vulkan UpScaling & DownScaling 2021-11-16 22:11:27 +01:00
Fernando Sahmkow a638ce0388 ShaderDecompiler: Add initial support for rescaling. 2021-11-16 22:11:27 +01:00
Fernando Sahmkow b9a9b8d768 Settings: Add resolution scaling to settings. 2021-11-16 22:11:27 +01:00
Fernando Sahmkow 7a957d501f VideoCore: Initial Setup for the Resolution Scaler. 2021-11-16 22:11:27 +01:00
Matías Locatti 23752fff09 Replace keys error pop up
Fight me.
2021-11-16 03:53:28 -03:00
Fernando S e57df081f9 Merge pull request #7326 from ameerj/vp8
codecs: Implement VP8 video decoding support
2021-11-14 23:03:56 +01:00
Romain Failliot 420f9621a5 Replace "Light" theme by "Default"
This reflects the current behavior: Light = System default. If your
system is set to dark theme, then Light = Dark, which is a bit confusing
for the end user.

In this PR, I propose to change "Light" with "Default". This way, the
user has "Default" and "Default Colorful", which will apply the system
theme. Now that the Flatpak respects the system theme, I think this
makes much more sense.

I also simplified the theme update. Before the code was branching
between the default theme and the others, but I think we can have
something simpler by forcing the default theme if no theme is defined in
the settings, or if the selected theme doesn't exist. And if there's an
error, tell the theme name in the error message.
2021-11-14 08:52:55 -05:00
bunnei f6cb4bf018 Merge pull request #7260 from vonchenplus/spirv_support_legacy_attribute_v2
shader: Spirv support legacy attribute v2
2021-11-14 02:07:45 -08:00
bunnei 608210d91d Merge pull request #7272 from behunin/the-courteous-logger
Logging: Impl refactor
2021-11-13 00:03:54 -08:00
ameerj bf504f15f6 codes: Rename ComposeFrameHeader to ComposeFrame
These functions were composing the entire frame, not just the headers. Rename to more accurately describe them.
2021-11-12 23:52:19 -05:00
ameerj 048eb094ba vp8: Implement header composition
Enables frame decoding with FFmpeg
2021-11-12 23:52:18 -05:00
ameerj 538647f62b codecs: Add VP8 codec class 2021-11-12 19:49:45 -05:00
OatmealDome 3a4b8bac08 program_metadata: Add default ThreadInfo kernel capability 2021-11-10 22:01:05 -05:00
Morph 6e09e0f8ed applets/swkbd: Fix text check message encoding
The text check message can be encoded in UTF-8.
2021-11-08 14:57:53 -05:00
Morph ab736f254f applets/swkbd: Skip text checking if the text has been confirmed
Confirm means that the text has already been checked by the application to be correct, but is asking the user for confirmation.
The confirmation text itself seems to be corrupted though, this needs to be investigated.

Fixes the software keyboard in Famicom Detective Club: The Missing Heir
2021-11-08 13:05:50 -05:00
Narr the Reg 22ab930f36 service/pctl: Stub EndFreeCommunication
- Used by Just Dance 2022
2021-11-05 12:16:19 -04:00
Feng Chen bc7104cd76 vulkan_device: Add missing vulkan image format R5G6B5 in GetFormatProperties
- Used by Dragon Quest Builders
2021-11-05 10:31:40 -04:00
Morph 86d6531083 Merge pull request #7279 from Morph1984/system-get-program-id
general: Get the current process program id directly from the system
2021-11-04 20:34:20 -04:00
Morph d60da025cf Merge pull request #7289 from ameerj/perf-stat-shutdown
core: Reorder perf_stats destruction order on Shutdown
2021-11-04 20:34:09 -04:00
ameerj a09800057a core: Reorder perf_stats destruction order on Shutdown
Avoids the gpu_core using perf_stats after it's been freed.
2021-11-04 20:19:58 -04:00
Fernando S fceef14159 Merge pull request #7287 from Morph1984/stub-aoc
service: aoc: Stub more 13.x functions used by Animal Crossing
2021-11-05 00:26:10 +01:00
Morph 41a0c088ba general: Get the current process program id directly from the system
This allows us to avoid including KProcess' header file in files that only need to get the current process' program id.
2021-11-04 16:59:39 -04:00
Morph 10508e7af2 general: Rename GetTitleID to GetProgramID 2021-11-04 16:57:16 -04:00
bunnei 0a2f5932e2 Merge pull request #7282 from ameerj/core-includes
core: Reduce unused header includes
2021-11-04 13:56:10 -07:00
Morph f6eb11caca service: aoc: Stub NotifyUnmountAddOnContent
Used by Animal Crossing: New Horizons v2.0.0 DLC
2021-11-04 16:50:08 -04:00
Morph 8096484995 service: aoc: Stub NotifyMountAddOnContent and NotifyMountAddOnContent
Used by Animal Crossing: New Horizons v2.0.0 DLC
2021-11-04 16:48:47 -04:00
german77 c3e27a75b1 service/acc: Rename Unknown160 to InitializeApplicationInfoV2 2021-11-04 10:10:58 -06:00
Morph 22584e2ade service: acc: Stub acc:u0 '160'
- Used by Animal Crossing: New Horizons v2.0.0

Since the name is currently unknown, '160' is used as a placeholder.
2021-11-04 02:57:13 -04:00
ameerj a3d1429aa5 core: Fix transitive include build errors 2021-11-03 21:42:58 -04:00
ameerj d27abf5546 core: Remove unused includes 2021-11-03 21:42:57 -04:00
Feng Chen c047b66519 Simply legacy attribute implement 2021-11-04 09:26:16 +08:00
Morph c3c09ca222 svc: Correct WaitSynchronization num_handles param type
num_handles is a s32
2021-11-02 22:31:04 -04:00
bunnei deaf9af08d Merge pull request #7262 from FernandoS27/Buffalo-buffalo-Buffalo-buffalo-buffalo
ShaderCache: Order Phi Arguments from farthest away to nearest.
2021-11-02 16:34:03 -07:00
Mai M 5a7c2fae54 Merge pull request #7265 from Morph1984/gl-rasterizer-unused-include
gl_rasterizer: Remove unused includes
2021-11-02 18:43:31 -04:00
Morph fddd57db61 general: Remove MakeResult helpers
This is made obsolete by the presence of implicit constructors.
2021-11-02 17:23:19 -04:00
Morph 13a85dcad5 hle/result: Amend ResultVal documentation
This amends the documentation slightly to reflect the updated interface.
2021-11-02 15:20:36 -04:00
Morph 44dc3bd9a9 hle/result: Reimplement ResultVal using Common::Expected
Common::Expected effectively provides the same functions as ResultVal, so we can implement it with this.
This can be replaced with std::expected with minimal effort should it be standardized in the C++ Standard Template Library.
2021-11-02 15:20:35 -04:00
Morph 7c8824d6e4 common: Implement a subset of P0323 (std::expected)
This implementation is based on and is a subset of the proposed implementation of std::expected
https://github.com/TartanLlama/expected/blob/master/include/tl/expected.hpp
2021-11-02 15:20:35 -04:00
bunnei 58377818a1 Merge pull request #7227 from vonchenplus/fix_memory_leak_v2
Fix memory leak v2
2021-11-01 20:11:30 -07:00
Levi Behunin 30197c803e Refactor Logging Impl
Loop on stop_token and remove final_entry in Entry.
Move Backend thread out of Impl Constructor to its own function.
Add Start function for backend thread.
Use stop token in PopWait and check if entry filename is nullptr before logging.
2021-11-01 18:36:27 -06:00
Fernando Sahmkow a354c3ae82 Shader Cahe: Fix Phi Nodes on GLASM. 2021-11-02 00:59:25 +01:00
Fernando Sahmkow 6f94c9a9fe ShaderCache: Fix Phi Nodes Type on OGL. 2021-11-01 22:26:17 +01:00
Morph c5b0836c96 gl_rasterizer: Remove unused includes
This removes unused includes, especially the core includes which were causing this file to be recompiled every time files included by those headers are modified.
2021-10-31 23:57:51 -04:00
Fernando Sahmkow c9bee9e96e ShaderCache: Order Phi Arguments from farthest away to nearest. 2021-10-31 19:34:15 +01:00
vonchenplus 64a9dffd3d Support gl_FogFragCoord attribute 2021-10-31 23:34:17 +08:00
bunnei 03fb6b840a Merge pull request #7246 from german77/userimage
profile_manager: Resize any image bigger than 256p
2021-10-31 04:07:34 -07:00
Fernando S d5bbff14e4 Merge pull request #7201 from ameerj/spirv-depth-sampling
emit_spirv_image: Fix depth image implicit lod sample in non-fragment stages
2021-10-30 16:45:58 +02:00
bunnei c47ff70bd5 Merge pull request #6702 from lat9nq/disable-screensaver
yuzu_cmd, yuzu qt: Use SDL to disable the screen saver
2021-10-30 00:29:05 -07:00
bunnei 25b17a3ae0 Merge pull request #7244 from Morph1984/application-lang-pt-br
file_sys/ns: Add Brazilian Portuguese to the list of ApplicationLanguage
2021-10-29 22:32:38 -07:00
lat9nq c263ca5d71 yuzu qt: Disable the screensaver with SDL2
Disables the screen saver when a game boots using SDL2 so that it works
on any supported platform.
2021-10-30 01:23:52 -04:00
bunnei b9a3be8125 Merge pull request #7240 from Morph1984/resultval-remove-cv
hle/result: Remove cv-qualifiers from Arg in MakeResult
2021-10-29 21:35:32 -07:00
german77 10ea818a4e profile_manager: Resize any image bigger than 256p 2021-10-29 17:56:51 -05:00
bunnei 2864babfa8 Merge pull request #7241 from Morph1984/resultval-move-assignment
hle/result: Add move assignment operator in ResultVal
2021-10-29 09:14:32 -07:00
bunnei 1504af343c Merge pull request #7243 from lat9nq/nvdrv-warn
gl_device: Force GLASM on NVIDIA drivers 495-496
2021-10-28 17:57:53 -07:00
Morph a505c3c70a CMakeLists: Document the /GT compile option 2021-10-28 20:43:46 -04:00
Morph abfd1c4bca Merge pull request #7007 from FernandoS27/intel-options
Build System: Build with JCC Erratum Mitigation
2021-10-28 20:40:13 -04:00
Morph a901de67c6 file_sys: control_metadata: Add BrazilianPortuguese 2021-10-28 20:05:26 -04:00
Morph 6616cd1b59 ns: language: Add BrazilianPortuguese to ApplicationLanguage
It seems that Nintendo finally filled that last empty spot in ApplicationLanguage for a total of 16 supported languages.
2021-10-28 20:05:05 -04:00
Ameer J 9e335c73ef Merge pull request #7223 from Moonlacer/geometry_property_removal
per_game_ui: Geometry Property Removal and Minor Rewording to the Per Game UI
2021-10-28 19:39:00 -04:00
lat9nq 5167b19cd6 gl_device: Force GLASM on NVIDIA drivers 495-496
GLSL shaders currently do not render correctly on the recent NVIDIA
drivers. This adds a check that forces assembly shaders for these
drivers since they seem unaffected and adds a warning informing of the
decision.

Developers can disable the check by enabling graphics debugging.
2021-10-28 19:38:49 -04:00
Morph 55362bccd9 hle/result: Declare copy/move constructor/assignment as noexcept
While we're at it, we can also declare these copy/move constructor/assignment as noexcept.
2021-10-28 04:00:21 -04:00
Morph 696c2cec31 hle/result: Add move assignment operator in ResultVal
ResultVal was missing a move assignment operator, add it.
2021-10-28 03:52:21 -04:00
Morph 498f7ed966 hle/result: Remove cv-qualifiers from Arg in MakeResult
This removes the const qualification for types when MakeResult(arg) is used in a const member function, allowing for automatic deduction and removing the need to manually specify the non-const type as the template argument.
2021-10-28 03:07:18 -04:00
Ameer J 62c1d67cc3 Merge pull request #7186 from MightyCreak/fix-crash-configure-window
ui: fix crash when closing configure window
2021-10-26 22:15:45 -04:00
Feng Chen 60df1f9030 Fix dangling kernel objects when exiting 2021-10-27 09:06:30 +08:00
Feng Chen 301d0ac5e0 Revert PR7009 2021-10-27 09:06:30 +08:00
Feng Chen c13d1e0b0f Fix memory leak 2021-10-27 09:06:22 +08:00
vonchenplus 1c917c6905 Support gl_BackSecondaryColor attribute 2021-10-26 23:14:40 +08:00
vonchenplus 9cd198ede9 Support gl_FrontSecondaryColor attribute 2021-10-26 23:09:44 +08:00
vonchenplus b4301281d5 Support gl_BackColor attribute 2021-10-26 23:01:57 +08:00
Moonlacer 3140717733 Geometry property removal and rewording 2021-10-25 17:39:36 -05:00
Morph 875a6f4432 Merge pull request #7193 from FernandoS27/idle
SVC: Implement svcInfo:IdleTickCount
2021-10-25 09:17:49 -04:00
Ameer J 2086226f1c Merge pull request #7218 from bylaws/aswdqdsam
Fixup channel submit IOCTL syncpoint parameters
2021-10-24 19:35:00 -04:00
Ameer J bcf19a7c0b Merge pull request #7222 from FernandoS27/fix-indixed-textures-again
TexturePass: Fix clamping  of images as this allowed negative indices.
2021-10-24 15:16:31 -04:00
Fernando Sahmkow 6e19b9f5ff TexturePass: Fix clamping of images as this allowed negative indices. 2021-10-24 20:46:36 +02:00
Andrew Strelsky 5179872db6 Fixed ARM_Dynamic_64 Step 2021-10-24 11:16:32 -04:00
Fernando S 9a15b31b8b Merge pull request #7206 from vonchenplus/fix_vulkan_viewport_issue
Vulkan Rasterizer: Fix viewport issue
2021-10-24 01:53:04 +02:00
Billy Laws d53ca1dfdf Fixup channel submit IOCTL syncpoint parameters
The current arguments worked by happenstance as games only ever submit
one syncpoint and request one fence back, if a game were to do something
other than this then the arguments would've been parsed entirely wrong.
2021-10-24 00:01:35 +01:00
Ameer J f6460266f8 Merge pull request #7070 from FernandoS27/want-you-bad
Vulkan Rasterizer: Correct DepthBias/PolygonOffset on Vulkan.
2021-10-23 18:02:23 -04:00
Fernando Sahmkow ba6e5cd2ed Vulran Rasterizer: address feedback. 2021-10-23 23:46:29 +02:00
Fernando S 0b63955efe Revert "input_common: Fix data race on GC implementation" 2021-10-23 23:32:16 +02:00
Fernando S 8eda2922b2 Merge pull request #6515 from german77/gc_thread_safe
input_common: Fix data race on GC implementation
2021-10-23 23:28:22 +02:00
Feng Chen 1e1979532e Fix vulkan viewport issue 2021-10-22 22:56:31 +08:00
ameerj d03c54439c common/alignment: Fix VS2022 compilation
VS2022 seems to introduce an optimization when moving vectors to check for equality of the element values. AlignmentAllocator needed to overload the equality operator to fix compilation of its usage in vector moving.
2021-10-20 01:22:00 -04:00
ameerj 1dabf6d025 input_common: Fix VS2022 compilation errors 2021-10-20 01:21:59 -04:00
bunnei cfd337c92d Merge pull request #7197 from Moonlacer/tas_help_link
tas_ui: Add a Help Link to the TAS Page on the yuzu Website, Along with Minor Grammar Changes
2021-10-19 15:49:30 -07:00
bunnei 1637f6a578 Merge pull request #7198 from ameerj/settings-chrono
settings: Remove std::chrono usage
2021-10-19 09:55:50 -07:00
ameerj f69d094b14 emit_spirv_image: Fix depth image implicit lod sample in compute
Ensures all drivers behave the same way in this case.
2021-10-17 17:09:11 -04:00
bunnei 1b75cdaf19 Merge pull request #7173 from Morph1984/invalidate-unmap
KPageTable: Perform ranged invalidation when unmapping code memory
2021-10-17 03:25:26 -07:00
ameerj 6cfd975469 settings: Remove std::chrono usage
Alleviates the dependency on chrono for all files that include settings.h
2021-10-17 00:37:49 -04:00
Moonlacer f02e01b3b6 add_link
remove_accident

fix_whoopsie
2021-10-16 21:48:49 -05:00
Ameer J fc0a5a2b84 Merge pull request #7077 from FernandoS27/face-down
A series of fixes to queries and indexed samplers.
2021-10-16 21:41:54 -04:00
Fernando Sahmkow 1a0006ef55 Shader Compiler: avoid overflowed indices on indixed samplers. 2021-10-17 03:38:09 +02:00
Ameer J fb99f7532a Merge pull request #7127 from FernandoS27/i-saw-a-wabbit
A few fixes on Vulkan and Rasterizer Caching
2021-10-16 21:37:43 -04:00
Mai M 1fef54ae00 Merge pull request #7195 from MightyCreak/fix-warning-typo
main: fix typo in warning message
2021-10-16 19:50:41 -04:00
Fernando Sahmkow 69b1cad803 SVC: Implement svcInfo:IdleTickCount
Used by the Witcher 3
2021-10-16 20:33:44 +02:00
Romain Failliot 47902c05fe main: fix typo in warning message 2021-10-16 12:53:06 -04:00
Morph d2b29ff9b7 main: Add missing make_unique for ui 2021-10-15 19:36:52 -04:00
bunnei fed3ca02b1 Merge pull request #7187 from FernandoS27/boy-i-say-boy
NVHost_Ctrl: Force wait if the gpu falls behind too long.
2021-10-15 16:14:32 -07:00
Morph e7c1ef8ae2 Merge pull request #7188 from Morph1984/web-applet-include
qt_web_browser: Add missing QApplication include
2021-10-15 18:52:22 -04:00
Feng Chen e0d5680fc2 service/vi: Stub IHOSBinderDriver::TransactParcel GetBufferHistory (#7184) 2021-10-15 18:50:45 -04:00
Morph b4b6f581e0 qt_web_browser: Add missing QApplication include 2021-10-15 18:48:50 -04:00
Fernando Sahmkow 3aaf788385 NvHost/Core: Address Feedback. 2021-10-16 00:23:27 +02:00
FernandoS27 50495de641 Suspend temporally 2021-10-16 00:23:23 +02:00
FernandoS27 d265a37688 NVHost_Ctrl: Force wait if the gpu falls behind too long. 2021-10-16 00:22:01 +02:00
Romain Failliot aa1510877d ui: fix crash when closing configure window
This crash happens 100% of the time (on Linux at least), you just need
to open the configure window and click OK.

It seems to happen when the tabs are destroyed and once all the tabs are
destroyed, a final signal is sent with `index == -1`. So `debug_tab_tab`
doesn't exist anymore when this happens, so the crash.
2021-10-15 17:43:30 -04:00
Morph 773a189055 bootmanager: Forward declare System and SystemResultStatus 2021-10-15 17:35:34 -04:00
Morph 6322eadaac yuzu: Construct system in GMainWindow 2021-10-15 17:35:33 -04:00
Morph 458ab5a916 core: Move ResultStatus outside of System
Allows it to be a forward declaration in other header files.
2021-10-15 17:34:49 -04:00
Morph dc5d30a9b4 yuzu_cmd: Remove remaining static system instances 2021-10-15 17:34:48 -04:00
Morph 3de2a8ba2c core: Remove static system instance 2021-10-15 17:34:48 -04:00
Mai M 23b73efabc Merge pull request #7172 from Morph1984/out-of-bounds
string_util: Prevent out of bounds access in u16string_view buffer
2021-10-15 17:04:44 -04:00
Mai M 8a973b20d2 Merge pull request #7174 from MightyCreak/hide-cursor-by-default
Check "Hide mouse on inactivity" by default
2021-10-15 17:03:10 -04:00
Mai M ac0a4b3396 Merge pull request #7185 from Morph1984/make_unique_ui
yuzu: Use make_unique instead of operator new for constructing ui
2021-10-15 16:58:45 -04:00
Romain Failliot 030bc6b1d7 Hide mouse cursor by default 2021-10-15 16:01:20 -04:00
Creak 69c3b682e8 main: Slightly refactor NCA entry installation in InstallNCA (#7181)
* main: Slightly refactor NCA entry installation in InstallNCA

Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com>
2021-10-15 15:57:25 -04:00
Morph 91e5b35e1d main: Use std::unique_ptr for ui 2021-10-15 15:35:59 -04:00
Morph e7364a0165 configuration: Use std::make_unique instead of operator new for ui 2021-10-15 15:26:32 -04:00
lat9nq 9bed9e8e4e config: Read network_interface
Let's yuzu_cmd use a network interface. Also adds it to the default ini.
2021-10-15 12:14:09 -04:00
Moonlacer e2d77ebac2 settings_ui: Better NVDEC Description For Each Video Rendering Option (#7165)
* better_description

* Revert "better_description"

This reverts commit 3a152a6ba6f2d6e02530b69a8194e4db302c8acd.

* better_nvdec_wording

* best_performance

* update_word_stuff

* another_update
2021-10-14 18:01:12 -07:00
Morph 6d0b721351 Merge pull request #6774 from lat9nq/remove-global-yuzu
yuzu qt: Remove global system instances
2021-10-14 14:12:22 -04:00
Morph 49ae05213e string_util: Make use of std::string_view and add bounds checking
Makes use of std::string_view in StringFromFixedZeroTerminatedBuffer and add bounds checking
2021-10-14 14:09:34 -04:00
Morph 0196b5a01f string_util: Prevent out of bounds access in u16string_view buffer 2021-10-14 14:09:34 -04:00
Morph 7d2aed7268 Merge pull request #7157 from ameerj/vic-surface-size
vic: Use the minimum of surface/frame dimensions when writing the final frame to the GPU
2021-10-13 20:41:17 -04:00
bunnei 4f723d2690 Merge pull request #7142 from german77/sdl_range
input_common/sdl: Fix joystick range
2021-10-13 15:15:18 -07:00
bunnei 242c32a581 Merge pull request #7158 from ameerj/window-900p
main: Add option to reset window size to 900p
2021-10-13 12:29:45 -07:00
Morph c7f9f19c64 KPageTable: Perform ranged invalidation when unmapping code memory
Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com>
2021-10-13 14:27:11 -04:00
Ameer J cae1144a77 Merge pull request #7147 from behunin/patch-1
Update configure_tas.ui
2021-10-12 15:52:21 -04:00
Ameer J d0501cae90 Merge pull request #7109 from vonchenplus/fix_h264_max__reference_num_error
h264: Use max allowed max_num_ref_frames when using CPU decoding
2021-10-12 14:08:37 -04:00
Creak 6485bc560f common/fs/path_util: Slightly refactor PathManagerImpl's constructor
This moves all GenerateYuzuPath calls outside of the platofrm-specific #ifdefs, replacing them with assignments to paths.
2021-10-11 21:56:25 -04:00
Romain Failliot 01827a8f62 Create local variables for mouse and wheel positions 2021-10-11 19:21:24 -04:00
Romain Failliot deb8c58ce8 Fix a few warnings
- configure_input_player_widget.cpp: always better to use `const auto &`
  whenever possible
- profiler.cpp: `ev->pos()` is deprecated, replace with
  `ev->position()`, which returns floats, thus the addition of
  `.toPoint()` (same as what's happening in `pos()`)
- game_list.cpp: `QString::SplitBehavior` is deprecate, use `Qt::`
  namespace instead
2021-10-11 19:21:17 -04:00
Morph df32c5e496 Merge pull request #7110 from vonchenplus/fix_extract_offline_romefs_error
applets/web: Fallback to loader to get the manual romfs if none is found
2021-10-11 02:09:42 -04:00
german77 cfa3acd4a5 input_common/sdl: Fix joystick range 2021-10-11 01:03:01 -05:00
ameerj 9559cd971e main: Add option to reset window size to 900p 2021-10-11 01:29:02 -04:00
Feng Chen bd64cc420f applets/web: Fallback to loader to get the manual romfs if none is found 2021-10-11 13:12:51 +08:00
ameerj 373d7189f9 vic: Use the minimum of surface/frame dimensions when writing the final frame to the GPU
Addresses possible buffer overflow behavior.
2021-10-10 18:44:16 -04:00
Feng Chen 78317b1a8d h264: Use max allowed max_num_ref_frames when using CPU decoding 2021-10-10 20:07:19 +08:00
Valeri ebf2ab5afb vic: Allow surface to be higher than frame
Touhou Genso Wanderer Lotus Labyrinth R decodes 1920x1080 videos into 1920x1088 surface.
Only allow mismatch for height, since larger width would result in increasingly offset rows and somewhat defeat entire purpose of this check.
2021-10-09 20:22:09 +03:00
Mai M dddf5128c6 Merge pull request #7138 from ameerj/vic-fmt
vic: Implement RGBX8 video frame format
2021-10-08 19:19:20 -04:00
Levi Behunin b8e7caec7c Update configure_tas.ui
Remove the geometry property again(7045) after 7090 re-added.
2021-10-08 15:52:17 -06:00
ameerj 92bd5571cd vic: Avoid memory corruption when multiple streams with different dimensions are decoded
This is a work around to avoid buffer overflow errors until multi channel/multi stream decoding is supported.
2021-10-08 01:22:38 -04:00
ameerj 71698d7351 vic: Refactor frame writing methods 2021-10-07 14:56:44 -04:00
lat9nq aeab40e338 discord_impl: Remove global system instances 2021-10-07 13:50:13 -04:00
lat9nq b6387b3e2f game_list: Remove global instances of Core::System 2021-10-07 13:50:13 -04:00
lat9nq 6405a2a989 configuration: Add const qualifier where able 2021-10-07 13:50:13 -04:00
lat9nq 3aec34df0a yuzu qt: Remove global system instances from config, WaitTree, main 2021-10-07 13:50:13 -04:00
Morph 6bc7f27655 kernel: hle_ipc: Foward declare KAutoObject 2021-10-07 13:32:36 -04:00
Morph 52fa30ab7d service: Reduce header include overhead 2021-10-07 13:32:21 -04:00
ameerj 62efd87fd9 vic: Implement RGBX frame format 2021-10-07 11:06:57 -04:00
Fernando S d40819cfb1 Merge pull request #7118 from ameerj/vc-gpu-impl
gpu: Migrate implementation to the cpp file
2021-10-06 20:02:31 +02:00
bunnei ab87c1576e Merge pull request #7090 from Moonlacer/tas_spacing_addition
(Minor Change) Hint (?) Button Removal and Spacing Change to the TAS Window
2021-10-05 21:18:04 -07:00
bunnei 7d40321e67 Merge pull request #7115 from ameerj/log-compile
common/logging: Reduce dependent header include overhead
2021-10-05 10:05:46 -07:00
bunnei 8234e911f2 Merge pull request #7103 from Morph1984/service-ctx-event
service: Replace all service event creation with ServiceContext::CreateEvent
2021-10-04 17:20:46 -07:00
bunnei 03c97ce8f8 Merge pull request #7101 from ameerj/vk-tess-topology
vk_graphics_pipeline: Force patch list topology when tessellation is used
2021-10-04 15:37:32 -07:00
Fernando Sahmkow 97bafa4e99 Vulkan: Fix failing barrier on refresh. 2021-10-04 20:56:15 +02:00
FernandoS27 8e56d4a8ab RasterizerInterface: Correct size of CPU addresses to cache. 2021-10-04 20:47:31 +02:00
FernandoS27 2fd52e7d8b Vulkan: Fix the master Semaphore 2021-10-04 20:46:58 +02:00
bunnei 04fdf31f0f Merge pull request #7107 from astrelsky/iob_fix
prevent access violation from iob in Memory::IsValidVirtualAddress
2021-10-04 11:08:35 -07:00
Ameer J 170284cf1c Merge pull request #7091 from vonchenplus/fix_memroy_leak
core: Fix memory leak
2021-10-04 00:09:08 -04:00
bunnei 4b8d33cd50 Merge pull request #7111 from lat9nq/no-title-bar-version
main: Don't add an extra separator when the title version is absent
2021-10-03 00:27:08 -07:00
bunnei 5e9f62b844 Merge pull request #7113 from Morph1984/no-log-ip-addr
network: Do not log IP address
2021-10-02 23:19:34 -07:00
ameerj 7a94851e9b nvflinger: Use jthread and stop_token for VSync thread
Avoids a destruction data race that may occur on the vsync thread
2021-10-03 00:35:57 -04:00
ameerj ae3422e3b7 nvhost_ctrl: Refactor usage of gpu.LockSync()
This seems to only be used to protect a later gpu function call. So we can move the lock into that call instead.
2021-10-03 00:35:57 -04:00
ameerj 20a88d9d62 gpu: Migrate implementation to the cpp file 2021-10-03 00:35:57 -04:00
bunnei ceafd4f92c Merge pull request #6979 from german77/joycon_name
input_common: Add alternative string for joycons
2021-10-02 02:58:25 -07:00
Morph 13f4f14223 service: am: Make use of Exit to exit the currently running application
This also moves the call to the end to ensure services are properly destructed on exit.
2021-10-01 23:39:55 -04:00
Morph 85a103cf25 yuzu: main: Register a callback for Exit 2021-10-01 23:39:54 -04:00
Morph 37e30e80ed core: Add Exit and ExitCallback
This allows ISelfController::Exit to stop the currently running application. This is typically used by homebrew to exit back to the homebrew menu after calling consoleExit with libnx.
2021-10-01 23:39:54 -04:00
Morph 0f5f1ec430 service: Replace service event creation with ServiceContext::CreateEvent
The service context helps to manage all created events and allows us to close them upon destruction.
2021-10-01 23:38:59 -04:00
Morph d929edf269 network: Do not log IP address
Logging this may be a privacy concern for some users.
2021-10-01 23:38:44 -04:00
bunnei 56926a137f Merge pull request #7102 from Morph1984/remove-boxcat
Remove Boxcat BCAT backend
2021-10-01 18:41:41 -07:00
ameerj 98b3b5e0e3 common/logging: Reduce scope of fmt include 2021-10-01 20:48:49 -04:00
ameerj f222d1e4ce common/logging: Move Log::Entry declaration to a separate header
This reduces the load of requiring to include std::chrono in all files which include log.h
2021-10-01 20:48:49 -04:00
bunnei cebbde6f12 Merge pull request #7075 from v1993/power-of-tea
applets: Use subdirectory of main data directory for QtWebEngine storage
2021-09-30 16:29:28 -07:00
lat9nq 0012cb45ae main: Don't add an extra separator when the title version is absent
Some titles, such as homebrew, do not have any version string. Because
yuzu hard codes the title bar string assuming a version string is
preset, booting homebrew causes yuzu to add an extra separator with no
content between.

This uses a lambda expression to prevent that from happening.
2021-09-30 18:57:37 -04:00
bunnei d08fdea916 Merge pull request #7061 from ameerj/dma-buffer-misc
buffer_cache, maxwell_dma: Minor refactoring and code fixes
2021-09-30 12:34:28 -07:00
Mai M 132a463781 Merge pull request #7104 from Morph1984/style
style: Remove extra space preceding the :: operator
2021-09-29 19:32:39 -04:00
Andrew Strelsky 5a02e7aabf prevent access violation from iob in Memory::IsValidVirtualAddress 2021-09-29 19:26:44 -04:00
bunnei d905feb0c0 Merge pull request #7036 from ameerj/ogl-bgr-v2
gl_texture_cache: Unify BGR copy passes using PBOs
2021-09-29 16:10:56 -07:00
Andrew Strelsky a24aa6e5bd Fixed invalid iterator usage 2021-09-29 06:58:48 -04:00
Morph 203d8f7f60 style: Remove extra space preceding the :: operator 2021-09-29 01:26:01 -04:00
Morph 5bdf082f49 CMakeLists: Remove BoxCat build option 2021-09-29 01:24:21 -04:00
Morph a4d5ade781 settings: Remove BCAT settings 2021-09-29 01:24:21 -04:00
Morph 8dd5cfd290 configure_network: Remove BCAT 2021-09-29 01:24:21 -04:00
Morph 4be0824b5f service: bcat: Remove BoxCat BCAT implementation
The current implementation of BoxCat as it stands is non-functional due to the reliance on a server providing BCAT files.
This implementation will eventually be replaced with one that allows the use of local BCAT files dumped from a Nintendo Switch.
2021-09-29 01:21:35 -04:00
Moonlacer bb59f52847 configure_tas: Remove help button from dialog window 2021-09-29 00:12:31 -04:00
Moonlacer a0d1f4b80c configure_tas: Ensure dialog buttons always stay at the bottom
Previously, the dialog buttons would be floating in-place when the dialog is stretched downwards.
This change ensures that the dialog buttons always stay at the bottom of the window.
2021-09-29 00:04:19 -04:00
Morph ca8400ec1d externals: Remove libzip 2021-09-28 23:18:39 -04:00
Morph aa68bcdcae file_sys: Remove vfs_libzip 2021-09-28 23:18:39 -04:00
Morph aee79cc758 Merge pull request #7018 from lat9nq/splat-stubs
audin_u: stub Start, RegisterBufferEvent, AppendAudioInBufferAuto
2021-09-28 22:06:11 -04:00
Feng Chen 38fc397b0f Fix KShareMemory object leak 2021-09-29 09:51:20 +08:00
Ameer J e6c10b397d Merge pull request #7042 from v1993/patch-7
Hide XInput bypass on non-Windows OSes
2021-09-28 17:07:12 -04:00
ameerj f83f2af3a2 vk_graphics_pipeline: Force patch list topology when tessellation is used
Fixes a crash on some drivers when tessellation is used but the IA topology is not patch list.
2021-09-28 16:39:42 -04:00
bunnei 760786827a Merge pull request #7076 from ameerj/amd-botw
vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier
2021-09-28 10:46:56 -07:00
german77 2a13524331 service/es: Update to 13.0.0 2021-09-26 20:17:07 -05:00
german77 40a0ba8eea service/npns: Update to 13.0.0 2021-09-26 20:13:09 -05:00
german77 108969dc60 service/vi: Update to 13.0.0 2021-09-26 20:12:02 -05:00
german77 e2a4e12057 service/am: Update to 13.0.0 2021-09-26 20:00:12 -05:00
german77 b6af532687 service/audio: Update to 13.0.0 2021-09-26 19:49:09 -05:00
german77 f444f41880 service/hid: Update to 13.0.0 2021-09-26 19:45:47 -05:00
german77 6b95545f8a service/btdrv: Update to 13.0.0 2021-09-26 19:32:45 -05:00
german77 dccf0b7f82 service/usb: Update to 13.0.0 2021-09-26 19:26:52 -05:00
Morph b93255d853 Merge pull request #7078 from ameerj/vc-jthread-fixes
video_core: Fix jthread related hangs when stopping emulation
2021-09-26 16:40:13 -04:00
Feng Chen 974547f98f Fix KScopedAutoObject object leak when SendSyncRequest 2021-09-25 22:16:21 +08:00
Morph f9b3d812b2 service: bsd: Stub Read
- Used by Diablo II: Resurrected
2021-09-25 08:04:33 -04:00
Morph 498cb34b8e service: bsd: Implement Read
- Used by Diablo II: Resurrected
2021-09-24 16:46:52 -04:00
ameerj d7977be416 general: Update style to clang-format-12 2021-09-24 15:52:05 -04:00
Morph d4b15c2246 Merge pull request #7069 from lioncash/uuid
common/uuid: Add validity checking functions to interface
2021-09-24 08:02:11 -04:00
ameerj a07f80d672 video_core: Fix jthread related hangs when stopping emulation
jthread on some compilers is more picky when it comes to the order in which objects are destroyed.
2021-09-23 20:34:02 -04:00
ameerj d44cd612a0 vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier
Fixes rainbow textures on BOTW.
2021-09-23 19:40:53 -04:00
Fernando Sahmkow f718c363a3 Vulkan Query Cache: make sure to wait for the query result. 2021-09-24 01:14:17 +02:00
Fernando Sahmkow b431a46aa0 QueryCache: Flush queries in order of running. 2021-09-24 01:13:42 +02:00
bunnei 696028abf8 Merge pull request #7068 from behunin/patch-3
Debug Config Ui: Clean-up and nits
2021-09-23 15:19:22 -07:00
v1993 1ec34ff2ce Use subdirectory of main data directory for QtWebEngine storage
Previously, an unrelated directory was used for this. Keep everything together for consistency.
2021-09-24 00:49:39 +03:00
bunnei 1fedcb5336 Merge pull request #7045 from behunin/patch-1
Tas configure ui nits
2021-09-23 09:29:55 -07:00
Fernando Sahmkow 6a6e2407f8 Vulkan Rasterizer: Correct DepthBias/PolygonOffset on Vulkan. 2021-09-23 03:49:10 +02:00
Lioncash ebeb5086b1 core/profile_select: Avoid uninitialized read in SelectProfile()
The default constructor of UUID doesn't initialize its data members, so
we need to directly initialize it to be invalid.
2021-09-22 18:10:39 -04:00
Lioncash e37bea609c common/uuid: Add validity checking functions to interface
Given we have a function to invalidate, we should also have ones to
query the validity. Also makes the code more straightforward to read.
2021-09-22 17:59:00 -04:00
Levi Behunin dd2c8a75e2 Clean-up and nits
Remove redundent label, rearange checkboxs to keep same 3 per column layout, remove unneeded properties.
2021-09-22 00:56:03 -06:00
Levi Behunin b3affefeec Clean-up
Numerize names, remove unneeded properties and spacer.
2021-09-20 20:02:54 -06:00
bunnei b7d572c780 Merge pull request #7003 from ameerj/unlocked-present-mode
vk_swapchain: Use immediate present mode when mailbox is unavailable and FPS is unlocked
2021-09-20 14:34:21 -07:00
Ameer J 84431cca43 Merge pull request #7017 from FernandoS27/i-am-barbie-girl
Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan.
2021-09-19 23:56:08 -04:00
ameerj 1b48f8043b maxwell_dma: Minor refactoring 2021-09-19 20:36:41 -04:00
ameerj 73dd6230aa buffer_cache: Minor fixes
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
2021-09-19 20:35:07 -04:00
bunnei 08e300eb38 Merge pull request #7019 from ameerj/videocore-jthread
videocore: Use std::jthread for worker threads
2021-09-18 20:37:40 -07:00
Levi Behunin 7562fbb268 Tas configure ui nits
Text looked cramped on my pc (Ubuntu 21.04). Re-flowed text as well for nicer read.
2021-09-18 19:41:59 -06:00
german77 1b060a47b2 UI: Relocate tas menu and add brief description 2021-09-18 23:23:03 +02:00
german77 3333d96b46 input_common/tas: new update method 2021-09-18 23:22:57 +02:00
german77 d71f067db8 input_common/tas: Document the main class 2021-09-18 23:22:48 +02:00
german77 d552f84322 input_common/tas: Add swap controller 2021-09-18 23:22:42 +02:00
german77 368c9db4ee input_common/tas: overwrite file dialog 2021-09-18 23:22:42 +02:00
MonsterDruide1 1b67085cda input_common/tas: Fallback to simple update 2021-09-18 23:22:30 +02:00
german77 bba1ab83d6 config: Move TAS options to it's own menu 2021-09-18 23:22:30 +02:00
MonsterDruide1 cce0d58312 core: Hacky TAS syncing & load pausing
To keep the TAS inputs synced to the game speed even through lag spikes and loading zones, deeper access is required.

First, the `TAS::UpdateThread` has to be executed exactly once per frame. This is done by connecting it to the service method the game calls to pass parameters to the GPU: `Service::VI::QueueBuffer`.

Second, the loading time of new subareas and/or kingdoms (SMO) can vary. To counteract that, the `CPU_BOOST_MODE` can be detected: In the `APM`-interface, the call to enabling/disabling the boost mode can be caught and forwarded to the TASing system, which can pause the script execution if neccessary and enabled in the settings.
2021-09-18 23:22:20 +02:00
MonsterDruide1 518852f505 main: TAS Playback state label
During script playback/recording, the user has to see what happens currently. For that, a new label has been added to the bottom-left corner, always displaying the current state of the TASing system.
2021-09-18 23:22:12 +02:00
MonsterDruide1 5f826dd03a settings: File selector & other settings
First of all, TASing requires a script to play back. The user can select the parent directory at `System -> Filesystem`, next to an option to pause TAS during loads: This requires a "hacky" setup deeper in the code and will be added in the last commit.

Also, Hotkeys are being introduced: CTRL+F5 for playback start/stop, CTRL+F6 for re-reading the script and CTRL+F7 for recording a new script.
2021-09-18 23:22:11 +02:00
MonsterDruide1 31068a63a9 input_common/tas: Base playback & recording system
The base playback system supports up to 8 controllers (specified by `PLAYER_NUMBER` in `tas_input.h`), which all change their inputs simulataneously when `TAS::UpdateThread` is called.

The recording system uses the controller debugger to read the state of the first controller and forwards that data to the TASing system for recording. Currently, this process sadly is not frame-perfect and pixel-accurate.

Co-authored-by: Naii-the-Baf <sfabian200@gmail.com>
Co-authored-by: Narr-the-Reg <juangerman-13@hotmail.com>
2021-09-18 23:22:00 +02:00
bunnei 4fde9d058b Merge pull request #7020 from Moonlacer/remove_audio_stretching
Remove audio stretching
2021-09-18 11:18:24 -07:00
Valeri 882216dcbc If not on Windows, disable raw input
This way, if someone copies their Windows config to other OS, they won't be stuck without web applet for no apparent reason.
2021-09-18 15:10:00 +03:00
Valeri 1bf178abe8 Hide XInput bypass on non-Windows OSes
Follow-up to #6950. This option is a no-op on other OSes and only serves to spread confusion there.
2021-09-18 14:41:51 +03:00
bunnei f67b0345f1 Merge pull request #6950 from german77/multiplay
input_common: Add advanced setting for 8 player support
2021-09-17 17:25:51 -07:00
bunnei a6f7c06446 Merge pull request #7015 from german77/NotGoodForTerra
ngct: Stub Match
2021-09-17 10:58:55 -07:00
bunnei d2d6a759f2 Merge pull request #7011 from ameerj/vk-validation-0x0
vulkan_debug_callback: Ignore InvalidCommandBuffer-VkDescriptorSet errors
2021-09-16 17:17:04 -07:00
ameerj 933b5dff61 host_shaders: Remove opengl_copy_bgra.comp 2021-09-16 19:49:13 -04:00
ameerj 6aaf430d15 gl_texture_cache: Migrate BGRCopyPass from util_shaders
The BGR copies no longer use shaders.
2021-09-16 19:49:12 -04:00
Fernando S 295ddaa076 Merge pull request #7027 from ameerj/sorry-amd
vulkan_device: Reorder Float16Int8 declaration
2021-09-16 07:05:58 +02:00
ameerj 43d59a4bbe vulkan_device: Reorder Float16Int8 declaration
This variable was going out of scope before its usage in the vulkan device creation, causing a crash on very specific drivers.
2021-09-16 00:54:24 -04:00
ameerj abf9900d82 Revert "Merge pull request #7006 from FernandoS27/a-motherfucking-driver"
This reverts commit 9ac9c85ecd, reversing
changes made to e99525fb5b.
2021-09-16 00:51:22 -04:00
bunnei e0a73c8420 Merge pull request #7010 from Morph1984/fs-timestamp
vfs: Partially implement GetFileTimeStampRaw
2021-09-15 20:13:26 -07:00
Moonlacer d0d7ce6960 fix_clang_error 2021-09-15 20:20:45 -05:00
ameerj 6af2ea8253 util_shaders: Unify BGRA copy passes 2021-09-15 21:10:52 -04:00
Moonlacer dabeb349f5 fix_accidental_deletion 2021-09-15 19:59:10 -05:00
Moonlacer 1c445d1050 remove-audio-stretching-setting 2021-09-15 19:52:43 -05:00
ameerj f1b7800866 vk_scheduler: Use std::jthread 2021-09-15 20:49:07 -04:00
ameerj 2cb4bb689b gpu: Use std::jthread for async gpu thread 2021-09-15 20:49:07 -04:00
ameerj 4cad11c5f3 threadsafe_queue: Add std::stop_token overload to PopWait
Useful for jthreads which make use of the threadsafe queues.
2021-09-15 20:49:07 -04:00
lat9nq 7fc8560939 audin_u: Return a buffer event in RegisterBufferEvent
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2021-09-15 16:38:12 -04:00
lat9nq 34c6afd6c1 audin_u: stub Start, RegisterBufferEvent, AppendAudioInBufferAuto
This also moves IAudioIn's definition to the header.

Required for Splatoon 2 LAN play.
2021-09-15 15:52:09 -04:00
Fernando Sahmkow d240a8bb35 Build System: Build with JCC Erratum Mitigation 2021-09-15 21:32:44 +02:00
Fernando Sahmkow 0bd7c14e04 Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan. 2021-09-15 21:30:33 +02:00
Narr the Reg 77886a6134 ngct: Stub Match
Needed for  Cruis'n Blast
2021-09-15 00:17:31 -05:00
Morph 653acf39e2 renderers: Log total pipeline count 2021-09-14 13:18:26 -04:00
Morph 65c2d00bd9 vfs: Partially implement GetFileTimeStampRaw
Gets rid of homebrew warnings using this func
2021-09-14 08:48:01 -04:00
bunnei d3cab3095d Merge pull request #7009 from ameerj/main_process_cleanup
core: Destroy main_process during shutdown
2021-09-13 23:32:43 -07:00
ameerj 177affe3ce core: Destroy main_process during shutdown
The main_process was never being cleaned up, causing a noticeable memory leak after subsequent launches. This change cleans up the memory during Core Shutdown, mitigating the leak.
2021-09-13 23:44:52 -04:00
ameerj ccf4fa3aaa vulkan_debug_callback: Ignore InvalidCommandBuffer-VkDescriptorSet errors
This validation error is spammed on some titles, asserting that VkDescriptorSet 0x0[] was destroyed.

This is likely a validation layer bug when using VK_KHR_push_descriptor, which can avoid using traditional VkDescriptorSet. It should be safe to ignore for now.
2021-09-13 23:08:59 -04:00
Morph 419f0efe06 Merge pull request #6943 from FernandoS27/omae-wa-mou-shindeiru
Vulkan: Disable VK_EXT_SAMPLER_FILTER_MINMAX in GCN AMD
2021-09-13 17:33:15 -04:00
Fernando Sahmkow 17e879aa56 Vulkan: Disable VK_EXT_SAMPLER_FILTER_MINMAX in GCN AMD since it's broken. 2021-09-13 23:29:57 +02:00
Morph 9ac9c85ecd Merge pull request #7006 from FernandoS27/a-motherfucking-driver
Vulkan: Blacklist Int8Float16 Extension on AMD on driver 21.9.1
2021-09-13 17:25:56 -04:00
Mai M e99525fb5b Merge pull request #7005 from Morph1984/enum-bitwise-shift-ops
common_funcs: Add enum flag bitwise shift operator overloads
2021-09-13 17:21:22 -04:00
Morph a6825459db Merge pull request #6944 from FernandoS27/dear-drunk-me
Vulkan/Descriptors: Increase sets per pool on AMD propietary driver.
2021-09-13 17:20:07 -04:00
Fernando Sahmkow a3f4f92e7e Vulkan: Blacklist Int8Float16 Extension on AMD on driver 21.9.1 2021-09-13 23:17:37 +02:00
Fernando S 256ac97a7b Merge pull request #7001 from ameerj/wario-fix
vk_rasterizer: Fix dynamic StencilOp updating when two faces are enabled
2021-09-13 23:16:59 +02:00
Fernando Sahmkow dbe8a4fc2f Vulkan/Descriptors: Increase sets per pool on AMFD propietary driver. 2021-09-13 23:09:18 +02:00
Morph 00823acf70 common_funcs: Add enum flag bitwise shift operator overloads
This adds bitwise shift operator overloads (<<, >>, <<=, >>=) in the macro DECLARE_ENUM_FLAG_OPERATORS(type)
2021-09-13 16:01:20 -04:00
Ameer J c3be5da634 Merge pull request #7000 from Morph1984/create-dir-comment
FS: Mark recursive CreateDirectory as inaccurate and temporary
2021-09-12 21:06:52 -04:00
ameerj 184de8c1ca vk_swapchain: Use immediate present mode when mailbox is unavailable and FPS is unlocked
Allows drivers that do not support VK_PRESENT_MODE_MAILBOX_KHR the ability to present at a framerate higher than the monitor's refresh rate when the FPS is unlocked.
2021-09-12 20:32:23 -04:00
Mai M d40462b0f1 Merge pull request #7002 from ameerj/vk-state-unused
vk_state_tracker: Remove unused function
2021-09-12 17:31:56 -04:00
ameerj bf366c1738 vk_rasterizer: Fix dynamic StencilOp updating when two faces are enabled
This function was incorrectly using the stencil_two_side_enable register when dynamically updating the StencilOp.
2021-09-12 16:19:12 -04:00
ameerj 14612971ef vk_state_tracker: Remove unused function 2021-09-12 15:28:24 -04:00
Morph 9191db654d FS: Mark recursive CreateDirectory as inaccurate and temporary 2021-09-12 14:06:01 -04:00
Morph b4d9be4aae Merge pull request #6948 from ameerj/amd-warp-fix
shaders: Fix warp instructions on 64-thread warp devices
2021-09-12 13:53:29 -04:00
Morph 26734981cf Merge pull request #6975 from ogniK5377/acc-async-ctx
account: EnsureTokenIdCacheAsync
2021-09-12 12:03:10 -04:00
Morph 26b459393d Merge pull request #6974 from ogniK5377/fs-recursive-createdir
FS: Recursively create directories for CreateDirectory
2021-09-12 12:02:39 -04:00
Morph eb0222d77f Merge pull request #6997 from ameerj/stop-emulation-confirmation
main: Apply confirm exit setting in exit locked scenarios
2021-09-12 12:01:57 -04:00
Morph f2f9009a9b Merge pull request #6992 from german77/brains
hid/am: Stub SetTouchScreenConfiguration and implement GetNotificationStorageChannelEvent
2021-09-12 12:01:43 -04:00
Morph 4520ae9eed Merge pull request #6987 from Morph1984/common-error
common: Move error handling functions out of common_funcs
2021-09-12 12:01:23 -04:00
Morph e01b714fd5 Merge pull request #6986 from Morph1984/version-update
api_version: Update and add AtmosphereTargetFirmware
2021-09-12 12:01:11 -04:00
ameerj 829fa4c77b main: Apply confirm exit setting in exit locked scenarios
Some titles set an exit lock through HLE, which prompts an exit confirmation when stopping emulation if the system is locked.
This change allows bypassing this confirmation if the setting to confirm exits has been disabled by the user.
2021-09-12 00:31:32 -04:00
Morph fc29159ac7 shader_environment: Add missing <algorithm> include 2021-09-11 17:19:16 -04:00
Morph 5d3d9560e1 vk_descriptor_pool: Add missing <algorithm> include 2021-09-11 17:19:16 -04:00
Morph 244017d3aa slot_vector: Add missing <algorithm> include 2021-09-11 17:19:15 -04:00
Morph 421ff5ea79 video_core/memory_manager: Add missing <algorithm> include 2021-09-11 17:19:15 -04:00
Morph 3e49eac2de kernel: Add missing <functional> include 2021-09-11 17:19:15 -04:00
Morph b529f4b6b7 file_sys/kernel_executable: Add missing <string> include 2021-09-11 17:19:14 -04:00
Morph 84b969a442 codec: Add missing <string_view> include 2021-09-11 17:19:14 -04:00
Morph c4801b0599 common_funcs: Replace <algorithm> with <iterator> 2021-09-11 17:19:14 -04:00
Morph c0ff1dce0b common: Move error handling to error.cpp/h
This allows us to avoid implicitly including <string> every time common_funcs.h is included.
2021-09-11 17:19:14 -04:00
Fernando S f35f5c5072 Merge pull request #6846 from ameerj/nvdec-gpu-decode
nvdec: Add GPU video decoding for all capable drivers and platforms
2021-09-11 23:11:32 +02:00
Fernando S dc8598b472 Merge pull request #6901 from ameerj/vk-clear-bits
vk_rasterizer: Only clear depth/stencil buffers when specified in attachment aspect mask
2021-09-11 22:36:22 +02:00
Fernando S ecad7e67b7 Merge pull request #6941 from ameerj/swapchain-srgb
vk_swapchain: Prefer linear swapchain format when presenting sRGB images
2021-09-11 22:36:03 +02:00
Fernando S a700249ee6 Merge pull request #6953 from ameerj/anv-semaphore
renderer_vulkan: Wait on present semaphore at queue submit
2021-09-11 22:35:52 +02:00
Fernando S 67c075d51d Merge pull request #6981 from ameerj/nvflinger-hb-format
nvflinger: Use external surface format for framebuffer creation
2021-09-11 22:35:25 +02:00
german77 a36409ff16 am: Implement GetNotificationStorageChannelEvent 2021-09-10 12:24:50 -05:00
german77 9847b58137 hid: Stub SetTouchScreenConfiguration 2021-09-10 12:24:28 -05:00
german77 0cea589993 input_common: Enable steam controllers and 8 player support 2021-09-10 00:58:12 -05:00
Morph e92bc1f091 api_version: Update and add AtmosphereTargetFirmware 2021-09-10 01:10:47 -04:00
bunnei 9a7c619698 Merge pull request #6962 from vonchenplus/spirv_support_legacy_attribute
renderer_vulkan: Spirv support glsl  legacy attribute
2021-09-08 14:04:44 -07:00
Chloe 82fca3ab45 Addressed issues
Co-authored-by: Mai M. <mathew1800@gmail.com>
2021-09-09 03:00:08 +10:00
Chloe Marcec 398b0ce799 Mark is_complete as atomic 2021-09-09 00:10:52 +10:00
Chloe Marcec dd526c8bf5 Addressed issues 2021-09-09 00:09:04 +10:00
Fernando S 3821e784bc Merge pull request #6980 from vonchenplus/fix_blend_equation_error
Fix blend equation enum error
2021-09-08 11:50:26 +02:00
Ameer J b9193040cf Merge pull request #6971 from bunnei/buffer-queue-kevent
core: hle: service: buffer_queue: Improve management of KEvent.
2021-09-08 00:34:36 -04:00
Feng Chen 63aba30181 Detail adjustment 2021-09-08 10:30:00 +08:00
Feng Chen 38b28f1c4d Detail adjustment 2021-09-08 09:53:10 +08:00
Feng Chen 3948edde71 Re-implement get unused location 2021-09-07 13:22:52 +08:00
Feng Chen bd94ea2f5a Move attribute related definitions to spirv anonymous namespace 2021-09-07 12:34:35 +08:00
german77 94028da35e input_common: Add alternative string for joycons 2021-09-06 22:20:19 -05:00
ameerj 3e19187560 nvflinger: Use external surface format for framebuffer creation
The format member the IGBPBuffer may not always specify the correct desired format. Using the external format member ensures a valid format is provided when creating the framebuffer.

Fixes homebrew using the wrong framebuffer format.
2021-09-06 23:14:31 -04:00
Ameer J 5eccd5e3c8 Merge pull request #6977 from Moonlacer/master
Second part of Golden's PR #6976
2021-09-06 22:58:23 -04:00
Feng Chen 63acf10871 Fix blend equation enum error 2021-09-07 10:12:09 +08:00
Moonlacer 76c8fdfc78 Second part of Golden's PR 2021-09-06 15:25:40 -05:00
Matías Locatti c80d8c9d11 Rename all shader cache references to pipeline cache
After Hades, both OpenGL and Vulkan use a pipeline cache instead of single stages of the graphics pipeline. Renamed the Remove menu entries to match.
2021-09-06 15:53:04 -03:00
Chloe Marcec 0b8d28b62a address name shadowing with system 2021-09-06 22:13:51 +10:00
Chloe Marcec e27cb5526b account: EnsureTokenIdCacheAsync
Closes #2547, #6946
2021-09-06 21:16:21 +10:00
bunnei 54d33383e8 Merge pull request #6965 from bunnei/cpu_manager_jthread
core: cpu_manager: Use jthread.
2021-09-06 03:49:14 -07:00
Chloe Marcec 2cf086d244 FS: Recursively create directories for CreateDirectory
Originally we only created the parent directory, this caused issues for creating directories which also contained subdirectories, eg `/Folder1/Folder2`

This allows the ultimate mod manager homebrew to at least boot
2021-09-06 19:35:55 +10:00
Feng Chen dc8967ebcd Dynamic get unused location 2021-09-06 10:46:03 +08:00
Feng Chen 1aaa6a353b Implement intput and output fixed fnc textures 2021-09-06 10:36:45 +08:00
bunnei b690071dd5 core: hle: service: buffer_queue: Improve management of KEvent. 2021-09-04 22:25:46 -07:00
bunnei a1a415914d core: hle: service: nvflinger/vi: Improve management of KEvent. 2021-09-03 21:53:00 -07:00
bunnei 14d3f114a5 core: cpu_manager: Use jthread. 2021-09-03 19:05:41 -07:00
Feng Chen 49c66fa4e9 Rename parameters 2021-09-03 23:52:20 +08:00
Feng Chen b3e5a2f75d Fix create GraphicsPipelines crash 2021-09-03 22:55:53 +08:00
ameerj f22d524c39 renderer_vulkan: Wait on present semaphore at queue submit
The present semaphore is being signalled by the call to acquire the
swapchain image. This semaphore is meant to be waited on when rendering
to the swapchain image. Currently it is waited on when presenting, but
moving its usage to be waited on in the command buffer submission allows
for proper usage of this semaphore.

Fixes the device lost when launching titles on the Intel Linux Mesa driver.
2021-09-02 13:13:20 -04:00
Feng Chen a1c9039eae Add input/output location 2021-09-02 23:34:51 +08:00
bunnei 59cf0848c7 Merge pull request #6900 from ameerj/attr-reorder
structured_control_flow: Add DemoteCombinationPass
2021-09-01 17:36:26 -07:00
german77 fab34850ae common/logging: Add missing include 2021-09-01 19:13:33 -05:00
ameerj 668d936dd2 emit_glsl_warp: Fix shuffle ops for 64-thread warp sizes 2021-08-31 16:11:25 -04:00
ameerj 9302524b8c emit_glsl_warp: Fix ballot related ops for 64-thread warp sizes 2021-08-31 16:11:25 -04:00
ameerj c7568d61d2 emit_spirv_warp: Fix shuffle ops for 64-thread warp sizes 2021-08-31 13:40:39 -04:00
ameerj 1bb5fb7e26 emit_spirv_warp: Fix ballot related ops for 64-thread warp sizes 2021-08-31 13:40:12 -04:00
bunnei f59299a696 Merge pull request #6897 from FernandoS27/pineapple-does-not-belong-in-pizza
Project <tentative title>: Rework Garbage Collection.
2021-08-31 09:11:21 -07:00
Feng Chen b86a4caa20 Add colorfront and txtcoord support 2021-09-01 00:07:25 +08:00
bunnei fb109913cb Merge pull request #6928 from ameerj/spirv-get-frontface
emit_spirv_context_get_set: Fix Get FrontFace return value
2021-08-30 18:16:31 -07:00
bunnei dc2d6d0c6b Merge pull request #6879 from ameerj/decoder-assert
vk_blit_screen: Fix non-accelerated texture size calculation
2021-08-30 15:24:04 -07:00
ameerj 8485bb3dcb structured_control_flow: Skip reordering nested demote branches.
Nested demote branches add complexity with combining the condition if it has not been initialized yet. Skip them for the time being.
2021-08-30 11:46:25 -04:00
ameerj e9a8e011f6 structured_control_flow: Conditionally invoke demote reorder pass
This is only needed on select drivers when a fragment shader discards/demotes.
2021-08-30 11:46:24 -04:00
Fernando Sahmkow 133f72c3f4 Garbage Collection: Make it more agressive on high priority mode. 2021-08-29 18:57:17 +02:00
Fernando Sahmkow 129bcd1b85 Garbage Collection: Adress Feedback. 2021-08-29 18:19:53 +02:00
bunnei c7662fd962 Merge pull request #6905 from Morph1984/nifm-misc
nifm/network_interface: Cleanup and populate fields in GetCurrentNetworkProfile
2021-08-29 00:04:58 -07:00
ameerj 584fc3cb71 vulkan_device: Enable VK_KHR_swapchain_mutable_format if available
Silences validation errors when creating sRGB image views of linear swapchain images
2021-08-29 02:03:36 -04:00
ameerj cc38b85948 vk_swapchain: Prefer linear swapchain format when presenting sRGB images
Fixes broken sRGB when presenting from a secondary GPU.
2021-08-29 02:03:35 -04:00
bunnei 02a663b4d2 Merge pull request #6921 from ameerj/vp9-unused
vp9_types: Remove unusued VP9 info struct members
2021-08-28 22:20:09 -07:00
Morph e729e010ca Merge pull request #6927 from german77/ngct
ngct: Stub NGCT:U service
2021-08-28 23:03:29 -04:00
Fernando Sahmkow 9a785765d8 Garbage Collection: enable as default, eliminate option. 2021-08-28 17:55:37 +02:00
Fernando Sahmkow 7d22f79cf0 VideoCore: Rework Garbage Collection. 2021-08-28 17:54:12 +02:00
ameerj 8c687b3a91 structured_control_flow: Add DemoteCombinationPass
Some drivers misread data when demotes are interleaved in the program. This moves demote branches to be checked at the end of the program.
Fixes "wireframe" issue in Pokemon SwSh on some drivers
2021-08-28 11:35:25 -04:00
german77 b036d9df7d ngct: Stub NGCT:U service 2021-08-27 14:15:34 -05:00
Morph 88fa692ae6 Revert "logging: Display backtrace on crash" 2021-08-27 04:01:22 -04:00
Morph 43f7dc615e service: nifm: Populate fields in GetCurrentNetworkProfile
Populates the current_address, subnet_mask, and gateway fields from the selected network interface.
2021-08-27 02:10:59 -04:00
Morph 40e406f9d1 service: nifm: Cleanup GetCurrentIpConfigInfo 2021-08-27 02:10:58 -04:00
Morph b755cdbd57 network_interface: Cleanup code 2021-08-27 02:10:58 -04:00
Morph 2d685e5a51 network_interface: Replace default return value with std::nullopt 2021-08-27 02:10:58 -04:00
ameerj 9b41b19766 emit_spirv_context_get_set: Fix Get FrontFace return value
The IR expects GetAttribute to return an F32 value. This case was returning a U32 instead.
2021-08-26 21:37:34 -04:00
bunnei 4ef01eb41e Merge pull request #6870 from yzct12345/trace-back-stack-back-stack-back
logging: Display backtrace on crash
2021-08-26 17:41:14 -07:00
bunnei 5e600cba3a Revert "kernel: Various improvements to scheduler" 2021-08-25 20:59:28 -07:00
ameerj 8b0a45defd vp9_types: Minor refactor of VP9 info structs. 2021-08-25 21:42:43 -04:00
ameerj 01ac464999 vp9_types: Remove unused Vp9PictureInfo members 2021-08-25 21:29:22 -04:00
Fernando S 33f28f1cd5 Merge pull request #6919 from ameerj/vk-int8-capability
vulkan_device: Add a check for int8 support
2021-08-25 23:46:08 +02:00
Ameer J ef8eb0cb28 Merge pull request #6894 from FernandoS27/bunneis-left-ear
GPU_MemoryManger: Fix GetSubmappedRange.
2021-08-25 16:50:03 -04:00
ameerj 56cabe631b vulkan_device: Add a check for int8 support
Silences validation errors when shaders use int8 without specifying its support to the API
2021-08-24 21:22:41 -04:00
ameerj 0debad63cc logging: Fix log filter during initialization
The log filter was being ignored on initialization due to the logging instance being initialized before the config instance, so the log filter was set to its default value.

This fixes that oversight, along with using descriptive exceptions instead of abort() calls.
2021-08-24 01:32:38 -04:00
Ameer J b53a87b6b4 Merge pull request #6878 from BreadFish64/optimize-GetHostThreadID
kernel: Optimize GetHostThreadID
2021-08-24 00:01:13 -04:00
bunnei 98c2b7a750 Merge pull request #6912 from lioncash/plural
CMakeLists: Ensure proper numerusform tags are generated for pluralized translations
2021-08-23 16:40:31 -07:00
bunnei f3931fe2b5 Merge pull request #6869 from yzct12345/shiny-logs-in-the-fireplace
logging: Simplify and make thread-safe
2021-08-22 20:40:18 -07:00
Lioncash 8efa6d4b74 CMakeLists: Ensure proper numerusform tags are generated for pluralized translations
If we don't set an explicit source and target language for the base
english translation, then we'll generate an incorrect number of
<numerusform> tags (which Transifex doesn't like).
2021-08-22 11:52:37 -04:00
Morph d10148b4aa settings: Amend language_index maximum setting range
The maximum is now 17 with the addition of Brazilian Portuguese
2021-08-21 09:43:15 -04:00
ameerj 64369cceca vk_rasterizer: Only clear depth and stencil buffers when set in attachment aspect mask
Silences validation errors for clearing the depth/stencil buffers of framebuffer attachments that were not specified to have depth/stencil usage.
2021-08-21 02:37:15 -04:00
Ameer J 9cff53ec7c Merge pull request #6888 from v1993/patch-3
video_core: eliminate constant ternary
2021-08-21 00:16:18 -04:00
bunnei 018c64c976 Merge pull request #6877 from MerryMage/dyn-ignore-asserts
dynarmic: Update and enable DYNARMIC_IGNORE_ASSERTS
2021-08-19 15:53:14 -07:00
Mai M de6eeaa67a Merge pull request #6887 from v1993/patch-2
SPIR-V: Merge two ifs in EmitGetAttribute
2021-08-19 17:16:37 -04:00
Mai M 7578fdd63b Merge pull request #6886 from Morph1984/error-code-64
applet_error: Fix 64-bit error code conversion
2021-08-19 17:15:49 -04:00
Fernando Sahmkow c01e168072 GPU_MemoryManger: Fix GetSubmappedRange. 2021-08-19 22:57:22 +02:00
Valeri e8314deee0 Replace QPoint with QPointF where applicable
Previously, floats were implicitly cast to integers
2021-08-19 23:16:58 +03:00
Valeri 35c40cf0aa qt_software_keyboard: fix copy-paste error 2021-08-19 22:17:15 +03:00
Valeri 42b0e8cadf video_core: eliminate constant ternary
`via_header_index` is already checked above, so it would never be true in this branch
2021-08-19 21:22:05 +03:00
Morph 1c1292b13c applet_error: Fix 64-bit error code conversion 2021-08-19 13:16:48 -04:00
Valeri 1510efac15 SPIR-V: Merge two ifs in EmitGetAttribute 2021-08-19 20:13:46 +03:00
Valeri 6a1ad26160 Fix crash in logging in CreateStrayLayer
It was trying to log value of layer_id which is specifically known not to exist, potentially leading to segfault. Log display_id instead.
2021-08-19 19:33:07 +03:00
Valeri 190e12a072 Fix check is thread current in GetThreadContext
Misplaced break made it only check for the first core.
2021-08-19 16:46:30 +03:00
bunnei 7a90ad5238 Merge pull request #6832 from bunnei/scheduler-improvements
kernel: Various improvements to scheduler
2021-08-18 15:42:46 -07:00
ameerj 681b194e24 h264: Lower max_num_ref_frames
GPU decoding seems to be more picky when it comes to the maximum number of reference frames.
2021-08-16 14:40:53 -04:00
ameerj 82906e26a5 configure_graphics: Add GPU nvdec decoding as an option
Some system configurations may see visual regressions or lower performance using GPU decoding compared to CPU decoding. This setting provides the option for users to specify their decoding preference.

Co-Authored-By: yzct12345 <87620833+yzct12345@users.noreply.github.com>
2021-08-16 14:40:53 -04:00
ameerj 7cd52be8c4 codec: Improve libav memory alloc and cleanup 2021-08-16 14:40:53 -04:00
ameerj 5fd82a4ec1 codec: Fallback to CPU decoding if no compatible GPU format is found 2021-08-16 14:40:53 -04:00
lat9nq 3714fd580f cmake: Add VDPAU and NVDEC support to FFmpeg
Adds {h264_,vp9_}{nvdec,vdpau} hwaccels.
2021-08-16 14:40:52 -04:00
ameerj 899cf73819 vk_blit_screen: Fix non-accelerated texture size calculation
Addresses the potential OOB access in UnswizzleTexture.
2021-08-16 14:28:10 -04:00
Fernando S 81f7914b19 Merge pull request #6863 from spholz/fix-lan-play
Fix LAN Play
2021-08-16 17:10:00 +02:00
BreadFish64 8c4f818e77 kernel: Optimize GetHostThreadID 2021-08-16 07:30:23 -05:00
Sönke Holz 12499a34e6 network_interface: correct formatting 2021-08-16 12:18:19 +02:00
spholz 9701ec5ddf network_interface: fix mingw-w64 build 2021-08-16 12:06:35 +02:00
Sönke Holz 363236e2c6 network: retrieve subnet mask and gateway info 2021-08-16 10:32:25 +02:00
Merry 891e19ef4c xbyak: Update include path 2021-08-15 19:26:38 +01:00
bunnei 3376aeb9bd Merge pull request #6861 from yzct12345/const-mempy-is-all-the-speed
decoders: Optimize memcpy for the other functions
2021-08-15 02:38:12 -07:00
bunnei b2f859f47c core: hle: kernel: Disable dispatch count tracking on single core.
- This would have limited value, and would be a mess to handle properly.
2021-08-14 02:14:19 -07:00
yzct12345 156754e476 threadsafe_queue: Fix deadlock
This fixes a lost wakeup in SPSCQueue. If the reader is in just the right position, the writer's notification will be lost and this will be a problem if the writer then does something to wait on the reader.

This was discovered to affect my upcoming stacktrace PR. I don't think any performance decrease will be noticeable because an uncontended mutex is smart enough to skip the syscall. This PR might also resolve some rare deadlocks but I don't know of any examples.
2021-08-13 19:22:51 +00:00
yzct12345 133e23fe1c logging: Display backtrace on crash
This implements backtraces so we don't have to tell users how to use gdb anymore.

This prints a backtrace after abort or segfault is detected. It also fixes the log getting cut off with the last line containing only a bracket. This change lets us know what caused a crash not just what happened the few seconds before it.

I only know how to add support for Linux with GCC. Also this doesn't work outside of C/C++ such as in dynarmic or certain parts of graphics drivers. The good thing is that it'll try and just crash again but the stack frames are still there so the core dump will work just like before.
2021-08-13 18:58:35 +00:00