Lioncash
0d9c723df4
engines: Remove unnecessary casts
...
In a few cases we have some casts that can be trivially removed.
2022-11-29 08:38:46 -05:00
liamwhite
fa8bf5fb43
Merge pull request #9340 from lioncash/nvdrv
...
nvdrv: Simplify builder declarations
2022-11-29 08:27:13 -05:00
liamwhite
1f7c0310e2
Merge pull request #9347 from lioncash/vcast
...
video_core/surface: Eliminate casts in GetFormatType()
2022-11-29 08:26:39 -05:00
liamwhite
049c6ca248
Merge pull request #9346 from lioncash/vtable
...
producer_listener: Add virtual destructor to IProducerListener
2022-11-29 08:26:32 -05:00
liamwhite
6197033d88
Merge pull request #9345 from lioncash/fence
...
consumer_base: Pass std::shared_ptr by const reference
2022-11-29 08:26:25 -05:00
liamwhite
9e9e28c281
Merge pull request #9343 from lioncash/bounds
...
syncpoint_manager: Reduce redundant bounds checks
2022-11-29 08:26:16 -05:00
lat9nq
868c5ca1cb
CMake: Directly link to SDL2-static when appropriate
...
Trying to be lazy and alias SDL2 to SDL2-static causes issues in later
versions of CMake. Just use the same condition to tell which one to use.
2022-11-28 23:21:14 -05:00
Morph
7ba644dc5d
service: nifm: Update stubs for Submit/GetRequestState/GetResult
2022-11-28 22:58:10 -05:00
Lioncash
789c33dc48
video_core/surface: Eliminate casts in GetFormatType()
...
We can just compare directly and get rid of verbose casting.
2022-11-28 20:25:44 -05:00
Liam
acc4a150ef
video_core: add null backend
2022-11-28 19:49:09 -05:00
Lioncash
ccec899cd8
producer_listener: Add virtual destructor to IProducerListener
...
Several member variables are shared_ptr's to this base class. Even
though producer listeners are still unimplemented, this ensures we
always have consistent deletion behavior once this ends up being used
polymorphically.
2022-11-28 19:39:13 -05:00
ameerj
76a58e741a
configure_input_player: Fix profile saving when using handheld controller type
2022-11-28 19:22:18 -05:00
ameerj
736a034af8
config: Custom profile detection fixes
...
Also only reads/writes applicable configs for the custom profiles.
2022-11-28 19:22:18 -05:00
ameerj
8a1c99d57b
configure_input_per_game: Allow configuring all 8 players
2022-11-28 19:22:18 -05:00
Lioncash
93f287c79b
buffer_item_consumer: Pass fence by const-ref in ReleaseBuffer()
...
This isn't directly modified.
Also allows rvalues to be used with it.
2022-11-28 19:16:20 -05:00
Lioncash
7d9d432ff4
buffer_queue_consumer: std::move std::shared_ptr in Connect()
...
Avoids an unnecessary reference count increment and decrement
2022-11-28 19:12:26 -05:00
Lioncash
f5def4b9c5
consumer_base: Pass shared_ptr by const reference
...
Avoids churning atomic reference count increments and decrements.
2022-11-28 19:09:44 -05:00
Lioncash
bde42f6767
consumer_base: Remove redundant virtual
...
override already serves this purpose
2022-11-28 19:06:34 -05:00
Lioncash
eb1bdc5ed4
syncpoint_manager: Mark IsSyncpointAllocated() as const
...
This doesn't modify class state at all.
2022-11-28 16:08:21 -05:00
Lioncash
8409b91f2e
syncpoint_manager: Reduce number of bounds checks
...
The only time we need to check bounds is on the first access.
2022-11-28 16:06:01 -05:00
Morph
2c5073f375
Merge pull request #9339 from lioncash/cacheheader
...
common/cache_management: Amend header includes
2022-11-28 13:12:20 -05:00
Morph
65b9694ec7
Merge pull request #9338 from lioncash/properties
...
input_common/helpers: Mark analog property structs members as static constexpr
2022-11-28 13:12:14 -05:00
Morph
ca79f2ed10
Merge pull request #9337 from lioncash/pbr
...
common/input: Add helper functions for constructing input and output devices
2022-11-28 13:12:08 -05:00
Lioncash
e621ee9ec6
nvdrv: Simplify builder declarations
...
We can just use auto here. If one of these ever happens to not be
derived from nvdevice, then this will cause a compilation error.
We can also move the devices into the collection to get rid of an
unnecessary atomic reference count increment and decrement.
2022-11-28 10:43:48 -05:00
Lioncash
7c051067f6
common/cache_management: Amend header includes
...
Narrows the include in the header to <cstddef>, since that's what houses
size_t's definition, meanwhile the <cstdint> include can be moved into
the cpp file.
2022-11-28 10:19:53 -05:00
Lioncash
23e85d2d85
input_common/helpers: Mark analog property structs members as static constexpr
...
These are const with no dependency on any other data members, so we can
make these static constexpr to reduce the overall object size.
2022-11-28 10:10:37 -05:00
Lioncash
a9892677ed
core/hid/emulated_controller: Use ranges version of transform
...
Makes the transform calls much nicer to read.
2022-11-28 10:00:42 -05:00
Lioncash
0862aabdc6
common/input: Add helpers functions for creating input and output devices
...
Avoids the redundancy of needing to explictly specify the common
namespace and the type.
2022-11-28 10:00:37 -05:00
Lioncash
c005d24e1e
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 -05:00
Lioncash
72cfd9cb9b
yuzu/main: Merge variable declaration into ifdef
...
This is only used in the non-Windows path.
2022-11-28 08:40:41 -05:00
liamwhite
755e1e93c7
Merge pull request #9325 from german77/default_by_default
...
yuzu-cmd: Fix default config value
2022-11-28 08:14:32 -05:00
german77
3075c5ec5c
yuzu-cmd: Fix default config value
2022-11-27 20:43:34 -06:00
liamwhite
48b545354a
Merge pull request #8829 from Docteh/qt6_0002
...
CMake: rework for Qt6 support
2022-11-27 17:56:22 -05:00
liamwhite
d31bb0b36b
Merge pull request #9317 from german77/input-crash
...
yuzu-cmd: Fix input callback crash on close
2022-11-27 15:39:24 -05:00
Liam
0a077cb467
Vulkan: update initialization
...
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
2022-11-27 14:58:28 -05:00
liamwhite
7daf70feec
Merge pull request #9323 from german77/intructions
...
yuzu-cmd: Update configuration file description
2022-11-27 12:54:01 -05:00
german77
cddbfe5e67
input_common: Pump sdl events from main thread
2022-11-27 11:09:40 -06:00
german77
23d7d8b9df
yuzu-cmd: Fix input callback crash on close
2022-11-27 10:53:22 -06:00
bunnei
0e8043fc24
Merge pull request #9276 from goldenx86/fsrSlider
...
FSR Sharpening Slider
2022-11-27 00:13:15 -08:00
Valeri
e9fb4a65b9
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 +03:00
german77
8e2afd4e42
yuzu-cmd: Update configuration file description
2022-11-26 19:48:22 -06:00
bunnei
94ee753735
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 -08:00
Matías Locatti
71055c8e90
Oops
2022-11-26 17:39:43 -03:00
Matías Locatti
492fabc9b2
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 -03:00
liamwhite
0f9aee1f8a
Merge pull request #9288 from vonchenplus/deferred_draw
...
video_core: Fine tune maxwell drawing trigger mechanism
2022-11-26 09:35:45 -05:00
liamwhite
8ee07be628
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 -05:00
Matías Locatti
b4211c8a46
Sharpness instead of Sharpening
2022-11-26 02:14:10 -03:00
lat9nq
cedec65403
configure_graphics: Implement custom FSR Sharpening setting
2022-11-25 22:42:54 -05:00
lat9nq
1c5379fef9
settings: Reset FSR sharpening global state with the others
2022-11-25 22:42:24 -05:00
liamwhite
ad0cb5a8bc
Merge pull request #9297 from Kelebek1/sink_oob
...
[audio_core] Fix an OoB with sample sinking
2022-11-25 12:53:29 -05:00
bunnei
0465fd322a
Merge pull request #9304 from liamwhite/menu-roll
...
Qt: assign menuRole properties for actions
2022-11-25 00:38:50 -08:00
bunnei
d62f8bbcc4
Merge pull request #9305 from lioncash/request
...
hle_ipc: Add helper function for determining element counts
2022-11-25 00:38:17 -08:00
liamwhite
ac7ceced88
Merge pull request #9194 from FernandoS27/yfc-fermi2d
...
YFC - Fermi2D: Rework blit engine and add a software blitter.
2022-11-24 21:48:41 -05:00
Fernando Sahmkow
984c30bc52
Fermi2D: Cleanup and address feedback.
2022-11-24 21:00:48 +01:00
Fernando Sahmkow
b3708b0a5b
GPU: Fix buffer cache issue, engine upload not inlining memory in multiline and pessismistic invalidation.
2022-11-24 20:57:16 +01:00
Fernando Sahmkow
a87ff9181b
GPU: Implement additional render target formats.
2022-11-24 20:35:44 +01:00
Fernando Sahmkow
e3b3fcb1fc
MaxwellDMA: Implement BlockLinear to BlockLinear copies.
2022-11-24 20:35:44 +01:00
Fernando Sahmkow
41b3ddbbae
Fermi2D: Implement Bilinear software filtering and address feedback.
2022-11-24 20:35:44 +01:00
Fernando Sahmkow
f4291e4576
Fermi2D: Rework blit engine and add a software blitter.
2022-11-24 20:35:44 +01:00
Kyle Kienapfel
84063074a5
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 -08:00
Matías Locatti
8e19421f84
FSR Sharpening Slider part 1 - only a global slider
2022-11-24 04:22:13 -05:00
lat9nq
350ea4888b
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 -05:00
lat9nq
b9046e89de
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 -05:00
Morph
79d76606f2
maxwell_to_vk: Add R16_SINT
...
This was somehow missed when the format was added to GL
2022-11-23 21:30:58 -05:00
Morph
44ef6e38cb
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 -05:00
Lioncash
8c35c8c4a6
service: Make use of buffer element count helpers
2022-11-23 13:43:20 -05:00
Lioncash
ff19204dc6
hle_ipc: Add helper functions for getting number of buffer elements
2022-11-23 13:15:19 -05:00
Lioncash
ce329764a2
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 -05:00
Liam
fa845b681b
Qt: assign menuRole properties for actions
2022-11-23 12:41:56 -05:00
Liam
5a712bb51a
general: fix compile for Apple Clang
2022-11-22 22:22:28 -05:00
liamwhite
1cc95c4d53
Merge pull request #9299 from lioncash/cast
...
k_handle_table: Remove cast to void* in GetObjectForIpc
2022-11-22 17:47:53 -05:00
Lioncash
71d5db9354
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 -05:00
bunnei
8484ed0cf6
Merge pull request #9219 from german77/nfc_impl
...
service: nfc: Implement NFC IUser service
2022-11-22 10:28:38 -08:00
Kelebek1
59c4dc2f32
Use the maximum input index for samples buffer span size, not just the input count
2022-11-22 15:32:11 +00:00
FengChen
607a965c57
video_core: Optimize maxwell drawing trigger mechanism
2022-11-22 17:53:26 +08:00
Morph
e1a681378e
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 -05:00
ameerj
19ca666e9f
Configuration: Add per-game input profiles
2022-11-20 14:06:31 -05:00
Morph
8c78a8f003
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 -05:00
liamwhite
cebe63ee08
Merge pull request #9216 from vonchenplus/reimp_inline_index_buffer
...
video_core: Reimplement inline index buffer binding
2022-11-20 12:08:08 -05:00
Narr the Reg
06d54056d6
Merge branch 'master' into nfc_impl
2022-11-20 09:31:20 -06:00
Liam
9c69743686
dmnt:cht: fix copy-paste error
2022-11-20 10:14:22 -05:00
bunnei
914f824b1f
Merge pull request #9238 from german77/cabinet_applet
...
service: am: Implement cabinet applet
2022-11-20 00:48:39 -08:00
Morph
2d185b2c44
Merge pull request #9249 from goldenx86/available-vram
...
Add available Vulkan VRAM to log files
2022-11-20 00:21:29 -05:00
bunnei
66235689d2
Merge pull request #9254 from FernandoS27/auto-cpu-fix
...
Dynarmic: Remove inaccurate NaN from Auto CPU settings.
2022-11-19 12:52:41 -08:00
liamwhite
e118cc09bd
Merge pull request #9191 from german77/touching_souls
...
core: hid: Implement true multitouch support
2022-11-19 13:21:01 -05:00
Fernando S
ea0dcb71d5
Merge pull request #9260 from liamwhite/youre-in-big-trouble-now
...
spirv_emit_context: add missing flat decoration
2022-11-19 16:40:14 +01:00
Narr the Reg
5c134b62bd
service: nfc: Implement nfc user
2022-11-19 08:51:59 -06:00
german77
1cf625b6c6
service: hid: Only overclock npad controllers
2022-11-19 08:44:42 -06:00
Narr the Reg
8e0e45dcb9
core: hid: Implement true multitouch support
2022-11-19 08:44:33 -06:00
bunnei
09a93caeb8
Merge pull request #9252 from liamwhite/radv-superiority
...
maxwell3d: HLE multi-layer clear macro
2022-11-19 01:46:48 -08:00
Liam
4b905e9680
spirv_emit_context: add missing flat decoration
2022-11-18 22:05:28 -05:00
liamwhite
d96606b091
Merge pull request #9253 from vonchenplus/attr_layer
...
shader: Implement miss attribute layer
2022-11-18 22:04:18 -05:00
bunnei
a6b1bc0ded
Merge pull request #9234 from liamwhite/data-cash-money
...
kernel: implement data cache management operations
2022-11-18 13:18:36 -08:00
Kyle Kienapfel
11903d9b88
qt: Add Qt version to LogRuntimes
2022-11-17 19:14:14 -08:00
Kyle Kienapfel
6269560358
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 -08:00
bunnei
ca033e8d94
Merge pull request #9244 from liamwhite/lost-wakeup
...
nvnflinger: fix lost wakeup
2022-11-17 17:15:47 -08:00
Morph
ab4c53a3e6
Merge pull request #9229 from Docteh/achy_breaky_heart
...
Add break for default cases
2022-11-17 19:20:18 -05:00
liamwhite
5ec3607731
Merge pull request #9228 from HidroSaphire/patch-1
...
Add break statement in default case
2022-11-17 18:53:59 -05:00
Fernando Sahmkow
ee4b6380b9
Dynarmic: Remove inaccurate NaN from Auto CPU settings.
2022-11-17 16:59:41 +01:00
FengChen
12f2ab01bb
shader: Implement miss attribute layer
2022-11-17 22:45:14 +08:00