Commit Graph

19964 Commits (02b10a6e4dca0ed94e20e1b7dcc69a073d1f22a4)

Author SHA1 Message Date
Lioncash 7f42432f42 common/input: Pass ParamPackage by const reference in CreateDevice
This was previously being passed by value, which was unnecessary and
created more allocations than necessary.
2022-11-28 09:11:58 +07:00
Lioncash e96f55b6e2 yuzu/main: Merge variable declaration into ifdef
This is only used in the non-Windows path.
2022-11-28 08:40:41 +07:00
liamwhite 6291eec700
Merge pull request #9325 from german77/default_by_default
yuzu-cmd: Fix default config value
2022-11-28 08:14:32 +07:00
german77 aaada241dc yuzu-cmd: Fix default config value 2022-11-27 20:43:34 +07:00
liamwhite 6b64557ad6
Merge pull request #8829 from Docteh/qt6_0002
CMake: rework for Qt6 support
2022-11-27 17:56:22 +07:00
liamwhite a2fde04da9
Merge pull request #9317 from german77/input-crash
yuzu-cmd: Fix input callback crash on close
2022-11-27 15:39:24 +07:00
Liam 2956a33463 Vulkan: update initialization
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
2022-11-27 14:58:28 +07:00
liamwhite 71f2b4ba8f
Merge pull request #9323 from german77/intructions
yuzu-cmd: Update configuration file description
2022-11-27 12:54:01 +07:00
german77 7d8095d944 input_common: Pump sdl events from main thread 2022-11-27 11:09:40 +07:00
german77 a67e776af9 yuzu-cmd: Fix input callback crash on close 2022-11-27 10:53:22 +07:00
bunnei 3ab8d9ac7c
Merge pull request #9276 from goldenx86/fsrSlider
FSR Sharpening Slider
2022-11-27 00:13:15 +07:00
Valeri 278c0e6e8d
crypto: use user-provided keys whenever possible
Solves an issue where autogenerated title keys would take precedence over those provided by user.
2022-11-27 05:08:25 +07:00
german77 4a46da6fb5 yuzu-cmd: Update configuration file description 2022-11-26 19:48:22 +07:00
bunnei 8f6245be9a core: Use atomic instead of a lock to protect is_paused.
- This allows us to call IsPaused() elsewhere if we are holding the suspend lock.
2022-11-26 13:46:38 +07:00
Matías Locatti 701ca96827
Oops 2022-11-26 17:39:43 +07:00
Matías Locatti 26211ac339
Replace GLSL as the default OpenGL shader backend
GLASM is not very compatible with the latest games, and too many people have the special superpower to break their Vulkan support.
2022-11-26 17:27:04 +07:00
liamwhite 3e53d8138c
Merge pull request #9288 from vonchenplus/deferred_draw
video_core: Fine tune maxwell drawing trigger mechanism
2022-11-26 09:35:45 +07:00
liamwhite ddca512f3f
Merge pull request #9307 from Morph1984/not-used-correctly
maxwell_to_vk: Fix format usage bits and add R16_SINT
2022-11-26 09:08:55 +07:00
Matías Locatti 972bd6cb54
Sharpness instead of Sharpening 2022-11-26 02:14:10 +07:00
lat9nq 19a640286c configure_graphics: Implement custom FSR Sharpening setting 2022-11-25 22:42:54 +07:00
lat9nq b670c350e4 settings: Reset FSR sharpening global state with the others 2022-11-25 22:42:24 +07:00
liamwhite e16d1b85f1
Merge pull request #9297 from Kelebek1/sink_oob
[audio_core] Fix an OoB with sample sinking
2022-11-25 12:53:29 +07:00
bunnei e8cbc3b4c5
Merge pull request #9304 from liamwhite/menu-roll
Qt: assign menuRole properties for actions
2022-11-25 00:38:50 +07:00
bunnei 64965cc658
Merge pull request #9305 from lioncash/request
hle_ipc: Add helper function for determining element counts
2022-11-25 00:38:17 +07:00
liamwhite 20b62dbd30
Merge pull request #9194 from FernandoS27/yfc-fermi2d
YFC - Fermi2D: Rework blit engine and add a software blitter.
2022-11-24 21:48:41 +07:00
Fernando Sahmkow 826e0785bf Fermi2D: Cleanup and address feedback. 2022-11-24 21:00:48 +07:00
Fernando Sahmkow 3b582d5fb2 GPU: Fix buffer cache issue, engine upload not inlining memory in multiline and pessismistic invalidation. 2022-11-24 20:57:16 +07:00
Fernando Sahmkow 7356ab1de6 GPU: Implement additional render target formats. 2022-11-24 20:35:44 +07:00
Fernando Sahmkow daf2ef8f1c MaxwellDMA: Implement BlockLinear to BlockLinear copies. 2022-11-24 20:35:44 +07:00
Fernando Sahmkow 5fbd6954ef Fermi2D: Implement Bilinear software filtering and address feedback. 2022-11-24 20:35:44 +07:00
Fernando Sahmkow 957840be91 Fermi2D: Rework blit engine and add a software blitter. 2022-11-24 20:35:44 +07:00
Kyle Kienapfel a75542ad2d CMake: rework for Qt6 support
This PR rearranges things in the CMake system to make compiling with Qt6 possible

1. Camera API has changed in Qt6, so the camera feature is disabled
2. A previous fix involving QLocale is now version gated.
3. QRegExp replaced with QRegularExpression, see #5343
4. Qt6_LOCATION option added to specify a location to search for Qt6
  (see examples below)
5. windeployqt is used to copy Qt6 files into the build directory on Windows

Notes for Arch Linux
Arch install happened to have qt6-base qt6-declarative qt6-translations installed

mkdir build && cd build
cmake .. -GNinja -DYUZU_USE_BUNDLED_VCPKG=ON -DYUZU_TESTS=OFF -DENABLE_QT6=YES -DYUZU_USE_BUNDLED_QT=NO

Windows (MSVC)
Qt wants users to download precompiled libraries via an online installer,
it is worth noting that the GPL/LGPL takes precendence over any ...

In the Qt Maintenance tool, under a version, such as 6.3.1
Select "MSVC 2019 64-bit"
Under Additional Libraries Qt Multimedia may be of use for Camera support

For the Web Applet I had to select the following:
PDF Positioning WebChannel WebEngine

mkdir build && cd build
cmake -G "Visual Studio 16 2019" -DQt6_LOCATION=C:/Qt/6.4.0/msvc2019_64/ \
-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=YES -DYUZU_USE_BUNDLED_QT=NO \
-DENABLE_QT_TRANSLATION=YES -DENABLE_QT6=YES ..

Some numbers for reference (msvc2019_64)
Qt5 (slimmed down) 508 MB
Qt5.15.2 all in    929 MB
Qt6.3.1           1.71 GB
Qt6.3.2           1.73 GB
Qt6.4.0-beta3     1.83 GB
Qt6.4.0           1.67 GB
2022-11-24 06:28:42 +07:00
Matías Locatti f209e976f4 FSR Sharpening Slider part 1 - only a global slider 2022-11-24 04:22:13 +07:00
lat9nq 35319ca3a5 startup_checks: Use fmt::print, fix exec error handling
Uses fmt::print opposed to std::fprintf for error printing.

Call exit instead of returning to caller to prevent a like issue the
previous commit was trying to solve.

Removes unneeded comment.

Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
Co-authored-by: Lioncash <mathew1800@gmail.com>
2022-11-23 21:59:24 +07:00
lat9nq 3e6c835a64 startup_checks: Use Windows flow for *nix
Spawns a child using fork and exec as opposed to fork alone. Workaround
for the macos file manager complaining about not supporting fork without
exec.

Control flow for *nix is now roughly the same as for Windows.
2022-11-23 21:35:47 +07:00
Morph 852de7a771 maxwell_to_vk: Add R16_SINT
This was somehow missed when the format was added to GL
2022-11-23 21:30:58 +07:00
Morph ca154d466a maxwell_to_vk: Fix format usage bits
- VK_FORMAT_B8G8R8A8_UNORM supports the STORAGE_IMAGE_BIT
- VK_FORMAT_R4G4B4A4_UNORM_PACK16 does not support the COLOR_ATTACHMENT_BIT
2022-11-23 21:29:43 +07:00
Lioncash 97f273e94e service: Make use of buffer element count helpers 2022-11-23 13:43:20 +07:00
Lioncash 59335f6796 hle_ipc: Add helper functions for getting number of buffer elements 2022-11-23 13:15:19 +07:00
Lioncash c31f19b6d1 hle_ipc: Mark relevant member functions as [[nodiscard]]
Will allow the compiler to complain about cases where ignoring the
return value would be a bug.
2022-11-23 13:08:52 +07:00
Liam 9abceaed61 Qt: assign menuRole properties for actions 2022-11-23 12:41:56 +07:00
Liam 9737615948 general: fix compile for Apple Clang 2022-11-22 22:22:28 +07:00
liamwhite 168c9ee341
Merge pull request #9299 from lioncash/cast
k_handle_table: Remove cast to void* in GetObjectForIpc
2022-11-22 17:47:53 +07:00
Lioncash 8d99aae45b k_handle_table: Remove cast to void* in GetObjectForIpc
This was used to get around the KProcess class being incomplete. We can
just move this to the cpp file and eliminate the cast entirely, letting
the compiler do its work.
2022-11-22 13:58:42 +07:00
bunnei f047f376d4
Merge pull request #9219 from german77/nfc_impl
service: nfc: Implement NFC IUser service
2022-11-22 10:28:38 +07:00
Kelebek1 84d4da89a5 Use the maximum input index for samples buffer span size, not just the input count 2022-11-22 15:32:11 +07:00
FengChen 1d57851fc7 video_core: Optimize maxwell drawing trigger mechanism 2022-11-22 17:53:26 +07:00
Morph 7e0f70e5a1 qt_amiibo_settings: Use WebClient only if ENABLE_WEB_SERVICE is enabled
Resolves compilation errors when ENABLE_WEB_SERVICE is disabled in CMake configuration
2022-11-21 15:22:17 +07:00
Morph aab68674c0
Merge pull request #9279 from liamwhite/this-would-have-never-happened-in-rust
dmnt:cht: fix copy-paste error
2022-11-20 13:30:35 +07:00
liamwhite 7f1c6def1f
Merge pull request #9216 from vonchenplus/reimp_inline_index_buffer
video_core: Reimplement inline index buffer binding
2022-11-20 12:08:08 +07:00
Narr the Reg db7bcd51ae
Merge branch 'master' into nfc_impl 2022-11-20 09:31:20 +07:00
Liam eb0713f781 dmnt:cht: fix copy-paste error 2022-11-20 10:14:22 +07:00
bunnei 57a05b1653
Merge pull request #9238 from german77/cabinet_applet
service: am: Implement cabinet applet
2022-11-20 00:48:39 +07:00
Morph 69c92b8156
Merge pull request #9249 from goldenx86/available-vram
Add available Vulkan VRAM to log files
2022-11-20 00:21:29 +07:00
bunnei 109c31c90f
Merge pull request #9254 from FernandoS27/auto-cpu-fix
Dynarmic: Remove inaccurate NaN from Auto CPU settings.
2022-11-19 12:52:41 +07:00
liamwhite bcbc25eeb3
Merge pull request #9191 from german77/touching_souls
core: hid: Implement true multitouch support
2022-11-19 13:21:01 +07:00
Fernando S b0365a81c2
Merge pull request #9260 from liamwhite/youre-in-big-trouble-now
spirv_emit_context: add missing flat decoration
2022-11-19 16:40:14 +07:00
Narr the Reg 327d225c3e service: nfc: Implement nfc user 2022-11-19 08:51:59 +07:00
german77 aa075a0c08 service: hid: Only overclock npad controllers 2022-11-19 08:44:42 +07:00
Narr the Reg 38c48cf8d8 core: hid: Implement true multitouch support 2022-11-19 08:44:33 +07:00
bunnei 4975f60162
Merge pull request #9252 from liamwhite/radv-superiority
maxwell3d: HLE multi-layer clear macro
2022-11-19 01:46:48 +07:00
Liam 0d033e6b45 spirv_emit_context: add missing flat decoration 2022-11-18 22:05:28 +07:00
liamwhite 9c67334031
Merge pull request #9253 from vonchenplus/attr_layer
shader: Implement miss attribute layer
2022-11-18 22:04:18 +07:00
bunnei 1fb33bd1e1
Merge pull request #9234 from liamwhite/data-cash-money
kernel: implement data cache management operations
2022-11-18 13:18:36 +07:00
Kyle Kienapfel d23a35dfbd qt: Add Qt version to LogRuntimes 2022-11-17 19:14:14 +07:00
Kyle Kienapfel ad3ee5c52b Qt6: Disable IR Sensor when compiling with Qt6
Gating the IR Sensor code behind a macro like so
`#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && YUZU_USE_QT_MULTIMEDIA`

The YUZU_USE_QT_MULTIMEDIA flag is implemented in later commit

Also the locale fix in src/yuzu/main.cpp is now gated against Qt6,
as it causes compilation error
2022-11-17 19:14:14 +07:00
bunnei 405d685101
Merge pull request #9244 from liamwhite/lost-wakeup
nvnflinger: fix lost wakeup
2022-11-17 17:15:47 +07:00
Morph e5a446a0df
Merge pull request #9229 from Docteh/achy_breaky_heart
Add break for default cases
2022-11-17 19:20:18 +07:00
liamwhite 0e61d711e2
Merge pull request #9228 from HidroSaphire/patch-1
Add break statement in default case
2022-11-17 18:53:59 +07:00
Fernando Sahmkow bc95753107 Dynarmic: Remove inaccurate NaN from Auto CPU settings. 2022-11-17 16:59:41 +07:00
FengChen 60e0d4a177 shader: Implement miss attribute layer 2022-11-17 22:45:14 +07:00
Liam 4c42655a2d maxwell3d: full HLE for multi-layer clears 2022-11-17 08:31:43 +07:00
Liam ece0c1095d maxwell3d: HLE multi-layer clear macro 2022-11-16 22:28:58 +07:00
Matías Locatti 7c50a916c7
Update renderer_vulkan.cpp 2022-11-16 05:53:42 +07:00
lat9nq e94bcf03cb configure_profile_manager: Cleanup reference/pointer usage
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
Co-authored-by: Mai M. <mathew1800@gmail.com>
2022-11-15 19:25:09 +07:00
lat9nq 8ca02794c5 configure_profile_manager: Remove profile picture border
The border adds its own width at least on Linux which causes the icon to
be offset by 1px, and cropped by 2px on the bottom and right sides.
2022-11-15 18:11:58 +07:00
lat9nq ef5184cf1c configure_profile_manager: Use a custom dialog for deletion
A hopefully more informative dialog that most importantly notifies the
user that their saves will be deleted with the user profile.

cpm: Only keep track of UI elements that we need

cpm: Remove unused forward declarations

cpm: Add missing include
2022-11-15 18:11:56 +07:00
bunnei 9e27624a19
Merge pull request #9243 from german77/result
core: Update result module
2022-11-14 20:36:38 +07:00
Feng Chen cb971ad654 video_core: Reimplement inline index buffer binding 2022-11-15 12:10:44 +07:00
Liam cf202f3718 nvnflinger: fix lost wakeup 2022-11-14 21:18:52 +07:00
Narr the Reg 18fcc03b3c core: Update result module 2022-11-14 20:08:47 +07:00
Kyle Kienapfel 6fa3faec65 Add break for default cases
Visual Studio has an option to search all files in a solution, so I
did a search in there for "default:" looking for any missing break
statements.

I've left out default statements that return something, and that throw
something, even if via ThrowInvalidType. UNREACHABLE leads towards throw

R_THROW macro leads towards a return
2022-11-13 16:30:55 +07:00
german77 75e6ec85e1 general: Address review comments 2022-11-13 17:13:43 +07:00
german77 a253d1557d service: am: Fix cabinet applet result 2022-11-13 14:25:00 +07:00
german77 9afadca5dc yuzu: Implement cabinet applet frontend 2022-11-13 13:58:19 +07:00
german77 fb57cd26a1 service: am: Implement cabinet applet backend 2022-11-13 11:07:48 +07:00
german77 b193d40d22 input_common: Add amiibo applet functions 2022-11-13 10:56:54 +07:00
german77 6c045c9beb service: nfc: fix tagprotocol and implement GetApplicationAreaId 2022-11-13 10:52:48 +07:00
liamwhite 040a01a5dd
Merge pull request #9225 from liamwhite/debugger-instance
Debugger improvements
2022-11-12 21:04:00 +07:00
Matías Locatti 540c1696d1 Ignore ARM for core count 2022-11-12 15:31:54 +07:00
Liam 651f6598ac kernel: implement FlushProcessDataCache 2022-11-12 11:27:04 +07:00
Liam 70ea1c2000 common: add cache management functions 2022-11-12 11:26:56 +07:00
bunnei 08091ff3e3
Merge pull request #9226 from Kelebek1/regs_regression
[video_core] Fix a couple regs regressions
2022-11-12 02:27:06 +07:00
bunnei b51c1544b9
Merge pull request #9224 from liamwhite/services-arent-processes
service_thread: remove explicit KProcess
2022-11-11 22:37:04 +07:00
Mai 7dfe35eca6
Merge pull request #9231 from goldenx86/corecount
Add CPU core count to log files
2022-11-12 03:19:26 +07:00
Matías Locatti 69768ec71e Add CPU core count to log files 2022-11-11 23:50:48 +07:00
liamwhite e4d55e4ee4
Merge pull request #9204 from vonchenplus/dma_copy_1d_random_crash
video_core: Fix dma copy 1D random crash
2022-11-11 17:56:41 +07:00
liamwhite c4bc7ce7e2
Merge pull request #9133 from FearlessTobi/compat-improvements
yuzu/compatdb: Improve compatibility submission system
2022-11-11 16:15:36 +07:00
Tobias 211da31b34
yuzu/main: Change to 8_GiB instead of magic number
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2022-11-11 19:15:52 +07:00
liamwhite c973029374
Merge pull request #9167 from vonchenplus/tess
video_core: Fix few issues in Tess stage
2022-11-11 08:03:40 +07:00