Mai
485473f118
Merge pull request #8501 from liamwhite/backtrace-again
...
core/arm: better support for backtrace generation
2022-07-07 23:49:54 -04:00
liamwhite
79d631b630
Merge pull request #8502 from liamwhite/end-wait
...
kernel: clean up waiting implementation
2022-07-07 17:31:49 -04:00
Fernando S
6850e6142a
Merge pull request #8492 from german77/no_more_errors
...
service: hid: Correct some mistakes and add more validations
2022-07-07 08:29:34 +02:00
Morph
2d813d7256
Merge pull request #8522 from lat9nq/consolidate-settings
...
settings: Consolidate RangedSetting's with regular ones
2022-07-07 01:22:01 -04:00
Marshall Mohror
cbadd75878
guard against div-by-zero
2022-07-06 13:00:00 -05:00
Marshall Mohror
b37f669584
common/x64: Use TSC clock rate from CPUID when available
...
The current method used to estimate the TSC is fairly accurate - within a few kHz - but the exact value can be extracted from CPUID if available.
2022-07-06 12:42:01 -05:00
Morph
16213b1dee
gpu_thread: Use the previous MPSCQueue implementation
...
The bounded MPSCQueue implementation causes crashes in Fire Emblem Three Houses, use the previous implementation for now.
2022-07-06 01:33:17 -04:00
Morph
6cfb255d69
qt_web_browser: Fix button inputs with QtWebEngine
...
Button inputs were broken as button was assumed to be the bit position of NpadButton prior to the input rewrite. Since this was changed to use NpadButton directly, we should count the number of trailing zeros to determine the bit position.
2022-07-05 20:34:10 -04:00
Morph
3cd5e47ee3
renderer_(gl/vk): Implement ASTC_10x6_UNORM
...
- Used by Monster Hunter Rise Update 10.0.2
2022-07-05 20:33:43 -04:00
Morph
bbc368882c
Merge pull request #8486 from liushuyu/github-actions-verify
...
CI: Use GitHub Actions to validate pull requests
2022-07-05 20:30:38 -04:00
liamwhite
786963fac7
Merge pull request #8532 from liamwhite/fiber-supplements
...
common/fiber: make fibers easier to use
2022-07-05 18:20:39 -04:00
Morph
da82213c60
Merge pull request #8477 from Docteh/less_global
...
tweak API usage in qt_web_browser.cpp
2022-07-05 05:57:26 -04:00
liushuyu
dd009ddf84
CI: fix caching
2022-07-04 21:21:56 -06:00
Morph
7efb17f51a
Merge pull request #8521 from lat9nq/gdbstub-in-bounds
...
gdbstub_arch: Directly access SP register
2022-07-04 21:27:12 -04:00
Fernando Sahmkow
95cb99b186
Core timing: use only one thread.
2022-07-02 23:02:16 +02:00
Liam
e551960935
common/fiber: make fibers easier to use
2022-07-02 12:33:49 -04:00
Fernando S
e41dd008c8
Merge pull request #8523 from liamwhite/sc-oopsie
...
cpu_manager: properly check idle on return from preemption
2022-07-01 22:40:02 +02:00
Morph
f64cc85d4b
Merge pull request #8490 from liamwhite/read-code-stop
...
dynarmic: Stop ReadCode callbacks to unmapped addresses
2022-06-30 20:57:39 -07:00
Liam
61ef65ab25
cpu_manager: properly check idle on return from preemption
2022-06-30 16:54:05 -04:00
lat9nq
f1ca3b7ff3
gdbstub_arch: Directly access SP register
...
Currently to access the SP register, RegRead and RegWrite rely on a
out-of-bounds array access to reach the next element in a struct. As
of writing only git versions of GCC catch this error.
Specify the SP register when we want to access it in these functions.
2022-06-30 12:47:40 -04:00
lat9nq
6e65bb6f83
settings: Consolidate RangedSetting's with regular ones
...
The latest git version of GCC has issues with my diamond inheritance
shenanigans. Since that's now two compilers that don't like it I thought
it'd be best to just axe all of it and just have the two templates like
before.
This rolls the features of BasicRangedSetting into BasicSetting, and
likewise RangedSetting into Setting. It also renames them from
BasicSetting and Setting to Setting and SwitchableSetting respectively.
Now longer name corresponds to more complex thing.
2022-06-30 12:39:48 -04:00
Fernando S
ee5d112e19
Merge pull request #7454 from FernandoS27/new-core-timing
...
Core: Remake Core Timing
2022-06-30 12:38:50 +02:00
Fernando Sahmkow
3adeb694b0
Adress Feedback.
2022-06-30 10:18:56 +02:00
lat9nq
973290ff56
Revert "vulkan_device: Block AMDVLK's VK_KHR_push_descriptor"
2022-06-29 16:35:06 -04:00
german77
e687bfbe7d
service: nifm: Stub GetInternetConnectionStatus
2022-06-28 19:22:46 -05:00
german77
2bad788ead
service: ptm: Rewrite PSM and add TS
2022-06-28 19:22:46 -05:00
german77
93cbaeb605
input_common: sdl: lower vibration frequency and use it's own unique thread
2022-06-28 19:22:16 -05:00
Narr the Reg
63ae2ffac1
service: hid: Correct some mistakes and add more validations
2022-06-28 19:14:55 -05:00
Morph
d3da378c46
Merge pull request #8512 from german77/nnResult
...
Replace multiple names with a better name
2022-06-28 16:59:33 -07:00
Fernando Sahmkow
7f4debb936
Native clock: Use atomic ops as before.
2022-06-28 22:42:00 +02:00
Fernando Sahmkow
eadcaab9bd
Native Clock: remove inaccuracy mask.
2022-06-28 01:47:00 +02:00
Fernando Sahmkow
2d838d8ec9
Address feedback.
2022-06-28 01:19:30 +02:00
Fernando Sahmkow
0043292951
Core: Protect each event from race conditions within it.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
d3becee4c0
Core: Fix tests.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
396cb575c9
Core: add missing include.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
1541f198eb
Core/Common: Corrections to core timing and add critical priority.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
ca686b6d07
Core: Reimplement Core Timing.
2022-06-28 01:10:50 +02:00
Fernando Sahmkow
6b03abbbad
Common: improve native clock.
2022-06-28 01:06:48 +02:00
bunnei
74ebab21ce
Merge pull request #8504 from comex/mesosphere-current-process
...
Support `InfoType_MesosphereCurrentProcess`
2022-06-27 13:05:07 -07:00
german77
c0b4082192
video_core: Replace VKUpdateDescriptorQueue with UpdateDescriptorQueue
2022-06-26 20:21:45 -05:00
german77
1d54e70cdd
video_core: Replace VKSwapchain with Swapchain
2022-06-26 20:21:45 -05:00
german77
8944399d57
video_core: Replace VKQueryCache with QueryCache
2022-06-26 20:21:45 -05:00
german77
d7b293b022
video_core: Replace VKScheduler with Scheduler
2022-06-26 20:21:45 -05:00
german77
3003462a0f
video_core: Replace VKBlitScreen with BlitScreen
2022-06-26 20:21:45 -05:00
german77
c13b99f357
video_core: Replace VKFenceManager with FenceManager
2022-06-26 20:21:45 -05:00
german77
093680269b
core: kernel: Replace instances of KPageLinkedList with KPageGroup
2022-06-26 20:21:45 -05:00
german77
c7890ebccc
core: Replace all instances of ResultCode with Result
2022-06-26 20:21:37 -05:00
bunnei
8e9a9b18c6
Merge pull request #8475 from liamwhite/x18
...
kernel: make current thread pointer thread local
2022-06-26 11:38:48 -07:00
comex
0c3a934b6e
Re-add missing `case` and braces, and trim whitespace
2022-06-25 18:01:56 -07:00
comex
593f978ad2
Update src/core/hle/kernel/svc.cpp
...
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2022-06-25 18:00:29 -07:00
comex
9decdbabab
Support InfoType_MesosphereCurrentProcess
2022-06-25 16:23:23 -07:00
Liam
f70a3ada00
kernel: clean up waiting implementation
2022-06-25 13:36:14 -04:00
Liam
416a71804b
core/arm: better support for backtrace generation
2022-06-25 12:54:24 -04:00
Liam
2e78c2fdb9
gdbstub: fix register pokes
2022-06-25 12:07:20 -04:00
Liam
83f1ecb73b
kernel: make current thread pointer thread local
2022-06-23 00:28:00 -04:00
bunnei
4548e74d3f
Merge pull request #8491 from Morph1984/extra-assert
...
KPageTable: Remove extraneous assert
2022-06-22 14:47:07 -07:00
bunnei
3f3f5aa93b
Merge pull request #8483 from liamwhite/fire-emblem-three-semaphores
...
kernel: wait for threads to stop on pause
2022-06-22 14:46:33 -07:00
Morph
72b78f9c32
KPageTable: Remove extraneous assert
...
Since start is always 0 and VAddr is unsigned, we can safely remove this assert.
2022-06-21 21:28:54 -04:00
Kyle Kienapfel
ef1aa7baf9
tweak API usage in qt_web_browser.cpp
...
In testing future versions of Qt I forgot to compile with `YUZU_USE_QT_WEB_ENGINE`, so with that flag enabled there are two issues that cropped up.
1. yuzu currently uses setRequestInterceptor, added in Qt 5.6, deprecated in 5.13 with this explaination at https://doc.qt.io/qt-5/qwebengineprofile-obsolete.html
Interceptors installed with this method will call QWebEngineUrlRequestInterceptor::interceptRequest on the I/O thread. Therefore the user has to provide thread-safe interaction with the other user classes. For a duration of this call ui thread is blocked. Use setUrlRequestInterceptor instead.
2. QWebEngineSettings::globalSettings() pointer no longer exists in later versions of Qt
From what I can tell, QtNXWebEngineView doesn't need to set these globally,
when we make changes to settings(), QtWebEngineView::page() creates the page
object if it doesn't exist yet. I don't see the page object being destroyed
or otherwise replaced, except via destroying the QtNXWebEngineView object.
The globalSettings() make sense if Pages or Views objects are being
created outside of yuzu's control.
To test this I've compared what BrowseNX and Odyssey's Action guide do in mainline 1049 and this PR.
For now we're going to go up the chain to QWebEngineProfile::defaultProfile()->settings()
2022-06-21 17:48:17 -07:00
Liam
97edc7c0df
core/arm: increase minimum_run_cycles
2022-06-21 20:37:16 -04:00
merry
8151f68522
core/arm: re-enable cycle counting
2022-06-21 20:36:24 -04:00
Liam
0d04631c1f
dynarmic: Stop ReadCode callbacks to unmapped addresses
2022-06-21 20:01:43 -04:00
bunnei
f4201ec44e
Merge pull request #8432 from liamwhite/watchpoint
...
core/debugger: memory breakpoint support
2022-06-21 16:04:57 -07:00
bunnei
d1d50f28c8
Merge pull request #8468 from liamwhite/dispatch-tracking
...
kernel: fix some uses of disable_count
2022-06-21 15:30:27 -07:00
Narr the Reg
341d5b9463
service: am: Stub PerformSystemButtonPressingIfInFocus
...
Used by Ring Fit Adventure
2022-06-20 12:35:58 -05:00
Liam
808ad9eb9f
kernel: wait for threads to stop on pause
2022-06-18 16:54:33 -04:00
Liam
91beb87df0
core: fix initialization in single core, sync GPU mode
2022-06-16 23:43:35 -04:00
Morph
3206752e00
Merge pull request #8472 from german77/tace
...
common: param_package: Demote DEBUG to TRACE for getters
2022-06-16 16:43:32 -04:00
Nikita Strygin
3d63ebf6c9
Make yuzu-cmd respect log_filter setting
...
Because logging infrastructure initializes before the loading of the
config, it reads the default setting for log_filter and ignores the one
set in config. To change log_filter after logging initialization some
additional calls need to be made.
2022-06-16 23:39:50 +03:00
Nikita Strygin
5f5739ea2c
Implement ExitProcess svc
...
Currently this just stops all the emulation
This works under assumption that only application will try to use
ExitProcess, with services not touching it
If application exits - it quite makes sense to end the emulation
2022-06-16 21:35:34 +03:00
Liam
8d2abc710c
core/debugger: memory breakpoint support
2022-06-16 13:18:07 -04:00
Narr the Reg
94877ec9c6
common: param_package: Demote DEBUG to TRACE for getters
2022-06-16 10:27:59 -05:00
Liam
6d5cc6b2a2
kernel: fix some uses of disable_count
2022-06-15 20:53:49 -04:00
Fernando S
1d8e860c47
Merge pull request #8457 from liamwhite/kprocess-suspend
...
kernel: implement KProcess suspension
2022-06-16 02:41:12 +02:00
liamwhite
1d18c8d3d9
Merge pull request #8460 from Morph1984/bounded-q
...
bounded_threadsafe_queue: Use constexpr capacity and mask
2022-06-15 19:39:22 -04:00
Morph
3417e4ca5f
bounded_threadsafe_queue: Use constexpr capacity and mask
...
While this is the primary change, we also:
- Remove the mpsc namespace and rename Queue to MPSCQueue
- Make Slot a private struct within MPSCQueue
- Remove the AlignedAllocator template argument, as we use std::allocator
- Replace instances of mask + 1 with capacity, and mask + 2 with capacity + 1
2022-06-15 16:59:13 -04:00
bunnei
d2cc6a69a2
Merge pull request #8317 from german77/notifa
...
service: notifa: Implement most part of this service
2022-06-15 09:53:50 -07:00
Mai
8894ac44d2
Merge pull request #8464 from liamwhite/break-debug
...
kernel: notify debugger on break SVC
2022-06-15 11:55:54 -04:00
Morph
ddc17d2088
vk_compute_pass: Explicitly cast to VkAccessFlags
...
According to the standard, a narrowing conversion is an implicit conversion from an integer or unscoped enumeration type to an integer type that cannot represent all the values of the original type, except when the value is a literal or constant expression.
MSVC, unlike GCC or Clang, determines this to be a narrowing conversion despite the enumeration exclusively containing values that fit within the range of a 32 bit integer, emitting a warning since designated initializers prohibit narrowing conversions.
To solve this, explicitly cast to the type we are initializing.
2022-06-15 07:12:16 -04:00
Mai
bb0a6faa0a
Merge pull request #8383 from Morph1984/shadow-of-the-past
...
yuzu: Make variable shadowing a compile-time error
2022-06-14 21:08:58 -04:00
Liam
0755b274fa
kernel: notify debugger on break SVC
2022-06-14 21:06:23 -04:00
Liam
a6c1036ddc
core: centralize profile scope for Dynarmic
2022-06-14 18:19:04 -04:00
Morph
2ccc2d0258
main: Eliminate variable shadowing
2022-06-14 14:09:51 -04:00
Liam
59a6d88625
kernel: implement KProcess suspension
2022-06-14 10:04:11 -04:00
Morph
c1c931d97e
Merge pull request #8461 from Morph1984/msvc-narrow-conv
...
vk_compute_pass: Use VK_ACCESS_NONE
2022-06-14 09:28:45 -04:00
Morph
3743f6f9fd
Merge pull request #8434 from german77/uuid
...
input_common: Replace usage of string guid to common uuid
2022-06-14 09:28:32 -04:00
Morph
5c72801730
vk_compute_pass: Use VK_ACCESS_NONE
...
This enumeration was introduced in Vulkan 1.3, prefer using this instead of defaulting the enum.
Also resolves a narrowing conversion warning on MSVC.
2022-06-14 09:14:13 -04:00
Mai
ce98a3e5d7
Merge pull request #8439 from liamwhite/monkey-compiler
...
general: fix compilation on GCC 12
2022-06-14 08:34:16 -04:00
Morph
69cd83d3ac
wait_tree: Eliminate variable shadowing
2022-06-14 08:30:09 -04:00
Morph
050426b55a
configure_ringcon: Eliminate variable shadowing
2022-06-14 08:30:09 -04:00
Morph
a884ca9b8d
configure_touch_from_button: Eliminate variable shadowing
2022-06-14 08:30:09 -04:00
Morph
9eadb6286d
configure_per_game: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
e1e6c62dd9
configure_input_player: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
30dc4a1d78
configure_dialog: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
6134852675
bootmanager: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
7e75b94e3b
game_list: Eliminate variable shadowing
2022-06-14 08:30:07 -04:00
Morph
b3d8533ad9
vk_compute_pass: Silence Wextra warning
...
Silences a warning about using enumerated and non-enumerated types in a conditional expression.
2022-06-14 05:29:57 -04:00
Liam
f91e2f2742
kernel: fix passthrough of local captures in lambda
2022-06-13 20:09:32 -04:00
Liam
846f266199
common/assert: rework ASSERT handling to avoid std::function usage
2022-06-13 20:09:32 -04:00
Liam
79bf4bc3ff
general: fix compilation on MinGW GCC 12
2022-06-13 20:09:32 -04:00
Liam
855928b782
common/assert: add unlikely
2022-06-13 20:09:32 -04:00
Liam
f3fd1038bb
general: fix compilation on GCC 12
2022-06-13 20:09:30 -04:00
Liam
72abaf896f
kernel: ensure class token lambda exit is unreachable
2022-06-13 20:09:00 -04:00
Liam
32ba68cf0e
kernel: fix inconsistency in AutoObjectTraits macro definitions
2022-06-13 20:09:00 -04:00
Liam
d2af4f8142
common: Don't test ASSERT conditions inline
2022-06-13 20:09:00 -04:00
Liam
c1771c98f3
common: Change semantics of UNREACHABLE to unconditionally crash
2022-06-13 20:09:00 -04:00
liamwhite
063d8354a7
Merge pull request #8458 from lat9nq/no-constexpr-flow-block
...
structured_control_flow: Remove constexpr Flow::Block
2022-06-13 20:06:38 -04:00
lat9nq
e8fc40baa1
structured_control_flow: Remove constexpr Flow::Block
...
This seems to be unsupported in newer libstdc++ versions due to
Flow::Block's base class being a non-literal type. It's not clear to me
why this was permitted in earlier versions.
2022-06-13 19:18:20 -04:00
bunnei
9cd39d1880
Merge pull request #8388 from liamwhite/simpler-pause
...
CpuManager: simplify pausing
2022-06-13 15:48:03 -07:00
Morph
6cbe898149
yuzu_cmd: Eliminate variable shadowing
2022-06-13 18:19:23 -04:00
Morph
6e1f9fa7b8
audio_core: Remove -Werror=unused-parameter
...
Removing this as we don't enforce unused parameter warnings elsewhere in the project, and explicitly specify -Wno-unused-parameter in the main CMakeLists.
2022-06-13 18:19:23 -04:00
Morph
e647661b76
CMakeLists: Make variable shadowing a compile-time error
...
Now that the entire project is free of variable shadowing, we can enforce this as a compile time error to prevent any further introduction of this logic bug.
2022-06-13 18:19:23 -04:00
Morph
716cced399
common: Eliminate variable shadowing
...
GCC/Clang treats variables within lambdas as potentially shadowing those outside the lambda, despite them not being captured inside the lambda's capture list.
2022-06-13 18:19:22 -04:00
Morph
911eae6283
yuzu: Eliminate variable shadowing
2022-06-13 18:19:22 -04:00
Morph
56114589a6
web_service: Eliminate variable shadowing
2022-06-13 18:19:22 -04:00
Morph
9f2fca7cde
Merge pull request #8446 from liamwhite/cmd-gdb
...
core/debugger: support operation in yuzu-cmd
2022-06-13 14:38:37 -04:00
Morph
a9fd06479a
Merge pull request #8454 from liamwhite/inaddr-any
...
core/debugger: allow remote connections
2022-06-13 14:38:20 -04:00
bunnei
0cba34825d
Merge pull request #8443 from liamwhite/code-mem
...
kernel: fix KCodeMemory initialization
2022-06-13 11:32:27 -07:00
Liam
2328945c5a
core/debugger: allow remote connections
2022-06-12 11:50:50 -04:00
Lioncash
d3d5f85f98
gdbstub_arch: Add missing virtual destructor
...
The class is used polymorphically, so it's undefined behavior to delete
instances of GDBStubA64 and GDBStubA32 from the base class pointer.
2022-06-11 18:23:22 -04:00
Mai M
3f1dcac212
Merge pull request #8353 from Docteh/msvc_report_runtime
...
log the MSVC runtime version when running on MSVC build
2022-06-11 13:21:23 -04:00
Mai M
8144911772
Merge pull request #8427 from Docteh/deprecate_qdesktop
...
deprecate usage of QDesktopWidget for going fullscreen
2022-06-11 13:20:36 -04:00
Mai M
005547429c
Merge pull request #8449 from Docteh/translate_placeholder
...
retranslate the game list placeholder
2022-06-11 13:19:18 -04:00
bunnei
90c076df6b
Merge pull request #8413 from behunin/bounded-queue
...
gpu_thread: Move to bounded queue
2022-06-11 00:07:18 -07:00
bunnei
d52485dd46
Merge pull request #8393 from lat9nq/default-vulkan
...
general: Set renderer_backend's default to Vulkan
2022-06-11 00:06:59 -07:00
Kyle Kienapfel
6f191a97f5
log the MSVC runtime version when running on MSVC build
...
This might be useful information, not 100% sure.
[ 0.958068] Frontend <Info> yuzu\main.cpp:GMainWindow:275: yuzu Version: yuzu Development Build | master-6f622de3a-dirty
[ 0.958095] Frontend <Info> yuzu\main.cpp:LogRuntimes:220: MSVC Compiler: 1931 Runtime: 14.32.31326.0
2022-06-10 20:37:47 -07:00
Kyle Kienapfel
7a2ebd7de5
UI: retranslate the game list placeholder
...
This is the "Double-click to add a new folder to the game list" message
that shows up when users first launch yuzu and is most likely never seen
again. Previously this message was not re-translated.
2022-06-10 20:15:52 -07:00
Mai M
677177a0e1
Merge pull request #8405 from Docteh/dock_undock
...
ui: Status bars dock button becomes DOCKED/HANDHELD button
2022-06-10 23:11:29 -04:00
Mai M
56a0a3082d
Merge pull request #8333 from Docteh/translate_hotkeys
...
UI: Translate hotkey labels in configuration
2022-06-10 23:10:28 -04:00
Mai M
05ff801f8c
Merge pull request #8318 from Docteh/cmake-qt56-entry
...
Update some files with Qt 5.15.2 best practices in mind
2022-06-10 23:09:49 -04:00
Narr the Reg
1226a99d1f
service: hid: Fix gesture regression
2022-06-10 13:14:31 -05:00
Liam
57679dbf51
yuzu-cmd: ignore bogus timeous from SDL
2022-06-10 12:49:18 -04:00
Liam
c14f683322
core/debugger: fix a number of shutdown deadlocks
2022-06-10 09:17:12 -04:00
Liam
b09ff19f31
core/debugger: support operation in yuzu-cmd
2022-06-10 09:11:02 -04:00
Liam
524737d29b
kernel: fix KCodeMemory initialization
2022-06-09 12:33:28 -04:00
Liam
5772327b39
CpuManager: simplify pausing
2022-06-08 21:47:29 -04:00
bunnei
3941e5db4d
Merge pull request #8428 from bunnei/nvflinger-fix-timing
...
Follow-up fixes for NVFlinger rewrite (Part 3)
2022-06-08 11:20:05 -07:00
Liam
fca1ce699a
core/debugger: fix asio write usage
2022-06-06 23:50:56 -04:00
Liam
92f60fbce1
core/debugger: fix crash due to incorrect lambda capture
2022-06-06 23:39:48 -04:00
Narr the Reg
d061038994
input_common: Replace usage of string guid to common uuid
2022-06-06 19:56:37 -05:00
Kyle Kienapfel
d9152be180
deprecate usage of QDesktopWidget for going fullscreen
...
Idea works as follows, while going fullscreen we compare the current window geometry with
available screens and ask for an intersection rectangle, we go fullscreen where most of
the window is located
GuessCurrentScreen could also potentially be used to see which screen
the window is on for dynamic DPI handling
2022-06-05 20:18:27 -07:00
bunnei
56f3bd72d6
Merge pull request #8367 from Docteh/say_win11
...
Logging: Report Post Windows 10 2004 versions, like Windows 11
2022-06-05 18:44:48 -07:00
bunnei
d436871e36
Merge pull request #8426 from liamwhite/elf
...
common: consolidate ELF structure definitions
2022-06-05 16:52:06 -07:00
bunnei
8ecb80f54d
hle: service: nvflinger: buffer_queue_consumer: Always free released buffers.
2022-06-05 16:06:06 -07:00
Mai M
b931457542
Merge pull request #8419 from liamwhite/library-list
...
gdbstub: add missing library list query
2022-06-05 18:23:29 -04:00
Liam
8f979d453d
common: consolidate ELF structure definitions
2022-06-05 09:42:05 -04:00
bunnei
b9a145a459
Merge pull request #8395 from german77/ir_stub
...
service: hid: Improve stub of IRS
2022-06-04 01:26:08 -07:00
lat9nq
d801be7c1a
configure_graphics: Remove unused include
2022-06-04 04:18:21 -04:00
Liam
67d1c62135
gdbstub: add missing library list command
2022-06-03 20:42:13 -04:00
Levi Behunin
9d5dc3c9b9
gpu_thread: Move to bounded queue
2022-06-02 19:37:46 -06:00
Billy Laws
a1216cfeee
Maxwell3D: Fix 3D semaphore counter type 0 handling
...
Counter type 0 actually releases the semaphore payload rather than a constant zero as was previously thought. This is required by Skyrim.
2022-06-02 21:46:38 +01:00
Mai M
19114dbd3a
Merge pull request #8410 from liamwhite/thread-names
...
gdbstub: Support reading guest thread names
2022-06-02 16:34:41 -04:00
Liam
b3dce90004
core/debugger: Support reading guest thread names
2022-06-01 21:25:32 -04:00
Mai M
c4d0f9d4df
Merge pull request #8409 from liamwhite/tdesc-fix
...
gdbstub: fix target descriptions
2022-06-01 21:16:33 -04:00
Morph
a08c0ca9c3
Merge pull request #8402 from liamwhite/better-step
...
core/debugger: Improved stepping mechanism and misc fixes
2022-06-01 20:46:10 -04:00
Liam
89993f89cf
gdbstub: fix target descriptions
2022-06-01 20:31:24 -04:00
Kyle Kienapfel
d21e73e88a
ui: Status bars dock button becomes dock/undock button
...
For people not used to the Yuzu UI it's not always clear if the emulated
console is docked or not. The other items update their text when clicked,
this PR brings the DOCK button in line with this.
DOCK -> DOCKED or HANDHELD
2022-06-01 17:22:53 -07:00
bunnei
79fa280adc
Merge pull request #8400 from Docteh/fullscreen_glitch
...
fix UI opening fullscreen after certain crashes
2022-06-01 10:26:24 -07:00
liamwhite
c4ee8ced98
Merge pull request #8404 from Morph1984/virtual
...
core/debugger: Define defaulted virtual destructors
2022-06-01 12:30:47 -04:00
Morph
e1d7a3b33a
core/debugger: Define defaulted virtual destructors
...
Resolves an MSVC warning where a virtual destructor is not defined in the base class with virtual functions.
2022-06-01 02:28:34 -04:00
Liam
da50e98e3a
core/debugger: Improved stepping mechanism and misc fixes
2022-06-01 02:15:15 -04:00
Morph
0767bdd486
gdbstub: Explicitly cast return type to u8
...
Otherwise, the addition promotes the returned value to an int instead of keeping it as a u8.
2022-06-01 01:40:18 -04:00
Kyle Kienapfel
1148d8e958
fix UI opening fullscreen after certain crashes
...
Sometimes when yuzu crashes, it restarts with the games list in fullscreen,
which would be fine, except there isn't an easy way to exit this.
It also doesn't occur often enough for qt-config.ini files to be in good supply.
UILayout\geometry value in qt-config.ini is the culprit,
at least for the one provided.
Proposed fix is to simply check isFullScreen when yuzu is starting up,
and take it out of full screen immediately
2022-05-31 21:24:31 -07:00
Liam
2ee161a0bf
core/debugger: Implement new GDB stub debugger
2022-06-01 00:01:25 -04:00
Narr the Reg
92efa9ddbb
service: hid: Improve stub of IRS
2022-05-31 10:26:13 -05:00
bunnei
7f1bf5c7a7
Merge pull request #8368 from german77/seventimes
...
Service: hid: Several improvements and implementations
2022-05-30 10:44:36 -07:00
lat9nq
c54f470bb9
main: Insert warning text on broken Vulkan
...
Co-authored-by: Schplee <24275329+Schplee@users.noreply.github.com>
2022-05-30 10:58:19 -04:00
lat9nq
b2dd2c6a45
main: Save config on broken Vulkan detect
...
Prevents possible issues if someone were to open yuzu repeatedly over
and over again.
2022-05-30 10:58:19 -04:00
lat9nq
b527556c38
yuzu-qt: Make has_broken_vulkan only for crashes
...
Being able to catch and handle a Vulkan exception is not what this is
for.
2022-05-30 10:58:18 -04:00
lat9nq
e7882e4bcb
vulkan_library: Add debug logging
2022-05-30 10:57:59 -04:00
lat9nq
7506b68555
yuzu-qt: Attempt to workaround broken Vulkan installations
...
This does a few things in order to make the default setting Vulkan
workable.
- When yuzu boots, it just opens the Vulkan library.
- If it works, all good and we continue with Vulkan as the default.
- If something breaks, a new file in the config directory will be left
behind (this is deleted normally).
- If Vulkan is not working, has_broken_vulkan is set to true.
- The first time this happens, a warning is displayed to notify the
user.
- This forces use of OpenGL, and Vulkan cannot be selected.
- The Shader Backend selector is made accessible for use in custom
configurations.
- To disable has_broken_vulkan, the user needs to press a button in
Graphics Configuration to manually run the Vulkan device
enumeration.
2022-05-30 10:57:59 -04:00
lat9nq
e8514aa441
default_ini: Reflect new renderer backend default setting
2022-05-29 21:38:36 -04:00
lat9nq
9e96b749ca
settings: Set Vulkan to the default renderer backend
2022-05-29 21:38:36 -04:00
Kyle K
0c16589562
motion touch ui: move remaining connection out of .ui file
...
Two reasons for this:
1. Out of 7 connections, 6 are in ConfigureMotionTouch::ConnectEvents,
this is the outlier.
2. Qt6 doesn't moc the connection properly
2022-05-29 18:37:38 -07:00
Kyle K
50ea1827aa
Update some files with Qt 5.15.2 best practices in mind
...
There was some discussion about updating to Qt6 and I figured I would
work on some smaller parts. For Windows platform the WinMain function has moved
from the Qt5::WinMain to a new one called Qt6::EntryPointPrivate
Also Qt5 supports versionless CMake targets
https://www.qt.io/blog/versionless-cmake-targets-qt-5.15
These other changes in this commit are to support Qt6, but in ways that don't mess with Qt5.
src/yuzu/bootmanager.cpp: Qt6 complains about not being able to know to use QPoint or QPointF, picking QPoint
src/yuzu/bootmanager.h: Qt6 prefers that QStringList.h be included rather than an empty class definition
src/yuzu/configuration/configure_system.cpp: toULongLong intends to return unsigned 64 bit integer, but
Settings::values.rng_seed is only 32 bits wide
src/yuzu/game_list.cpp: Qt6 returns a different datatype for QStringList.length than Qt5,
it used to be int, but in Qt6 its now qsizetype
src/yuzu/loading_screen.cpp: Qt5's for QStyleOption.init say to switch to initFrom.
The QStyleOption.init doesn't exist in Qt6
src/yuzu/main.cpp: Another QPointer and QStringList.size, lets standardize on size()
2022-05-29 09:21:52 -07:00
bunnei
9f7b9ffc9f
Merge pull request #8332 from Morph1984/reduce_exec_size
...
general: Use smaller array types where applicable
2022-05-29 02:33:24 -07:00
bunnei
64da7b4afd
Merge pull request #8339 from Docteh/about_icon
...
about dialog: Fix yuzu icon
2022-05-29 02:32:40 -07:00
Kyle K
6b7a8af157
Logging: Report Post Windows 10 2004 versions, like Windows 11
...
Qt5 and Qt6 don't really do a good job of reporting Windows versions past the 2004 version.
Current: Windows 10 Version 2009
This Patch: Windows 10 Version 21H1 (Build 19043.1706)
Also: Windows 11 Version 21H2 (Build 22000.675)
Fixes : #8362
2022-05-28 20:48:19 -07:00
Mai M
078f86e1c4
Merge pull request #8385 from lat9nq/just-subsys-win
...
yuzu-qt: Call -Wl,--subsystem,windows directly
2022-05-28 14:30:15 -04:00
lat9nq
178196cd1d
yuzu-qt: Call -Wl,--subsystem,windows directly
...
-mwindows doesn't work with Clang. tpoechtrager/wclang resolves this by
just using MinGW-GCC to link the executable, however this prevents us
from using LLVM-exclusive tools when building yuzu.
Solution is to send the linker argument we need from -mwindows directly
to the linker.
From https://gcc-help.gcc.gnu.narkive.com/FogklN5J/gcc-wl-subsystem-windows-mwindows-options
2022-05-28 04:07:46 -04:00
bunnei
e135944c4d
Merge pull request #8374 from german77/asnycvibrations
...
input_common: Make vibration request async
2022-05-28 00:55:53 -07:00
bunnei
d1016268b3
Merge pull request #8372 from german77/touch
...
input_common: touch: Rewrite touch driver to support multiple touch points
2022-05-27 12:16:03 -07:00
german77
7d3544bf8d
service: hid: Implement ResetIsSixAxisSensorDeviceNewlyAssigned
...
Needed by Nintendo Switch Sports
2022-05-27 10:22:37 -05:00
german77
b644fc33fb
service: hid: Implement LoadSixAxisSensorCalibrationParameter and GetSixAxisSensorIcInformation
...
Needed by Nintendo Switch Sports
2022-05-27 10:22:36 -05:00
german77
0687a3b8c6
service: hid: Implement EnableSixAxisSensorUnalteredPassthrough and IsSixAxisSensorUnalteredPassthroughEnabled
...
Needed by Nintendo Switch Sports
2022-05-27 10:21:10 -05:00
german77
3909772840
service: hid: Add error handling to sixaxis functions
2022-05-27 10:21:10 -05:00
german77
2f5cb49476
service: hid: Refractor sixaxis functions
2022-05-27 10:21:10 -05:00
german77
7d1d9c8a6b
service: hid: Implement MergeSingleJoyAsDualJoy according to RE
2022-05-27 10:21:09 -05:00
german77
2b5c5a3817
service: hid: Add error handling to setNpadAssignment and variants
2022-05-27 10:21:09 -05:00
german77
0741919697
service: hid: Quick RE fixes and comments
2022-05-27 10:21:08 -05:00
lat9nq
b73aaea0c1
path_util: Resolve `-Wpointer-bool-conversion` warning
...
Clang (rightfully) warns that we are checking for the existence of
pointer to something just allocated on the stack, which is always true.
Instead, check whether GetModuleFileNameW failed.
Co-authored-by: Mai M <mathew1800@gmail.com>
2022-05-26 19:01:26 -04:00
bunnei
6c88f50725
Merge pull request #8379 from lat9nq/amd-push-desc-workaround
...
vulkan_device: Block AMDVLK's VK_KHR_push_descriptor
2022-05-25 13:07:39 -07:00
bunnei
441a98b984
Merge pull request #8369 from lat9nq/amd-wmel-workaround
...
vulkan_device: Workaround extension bug
2022-05-25 13:07:28 -07:00
lat9nq
adfd64ba59
vulkan_device: Workaround extension bug
...
A bug occurs in yuzu when VK_KHR_workgroup_memory_explicit_layout is
available but 16-bit integers are not supported in the host driver.
Disable usage of the extension when this case arises.
2022-05-25 01:22:15 -04:00
lat9nq
3f2a89bb9d
vulkan_device: Block AMDVLK's VK_KHR_push_descriptor
...
Recent AMD Vulkan drivers (22.5.2 or 2.0.226 for specifically Vulkan)
have a broken VK_KHR_push_descriptor implementation that causes a crash
in yuzu. Disable it for the time being.
2022-05-25 01:17:48 -04:00
bunnei
beef5d531f
Merge pull request #8311 from asLody/fix-stencil-faces
...
vk_rasterizer: fix stencil test when two faces are disabled
2022-05-24 18:37:31 -07:00
Narr the Reg
3cd7b067e0
input_common: Make vibration request async
2022-05-23 12:25:02 -05:00
german77
b6d3a7d8cf
input_common: touch: Rewrite touch driver to support multiple touch points
2022-05-23 11:01:14 -05:00
liamwhite
6c08d6ce1c
Merge pull request #8342 from lat9nq/clang-latest-stdc++
...
general: Use Common::U16StringFromBuffer in place of QString::toStdU16String
2022-05-20 23:35:10 -04:00
Kyle K
cf791911df
UI: Translate hotkey labels in configuration
...
Another request from GillianMC.
The translated strings have been placed in a separate "Hotkeys" context as an alternative
to having to add the tr function to the Config class, or adding them to ConfigureHotkeys
context which is quite long. The English strings get attached to the items in the Action
column as "data", and are used for RetranslateUI and saving the hotkey configuration.
2022-05-18 22:05:19 -07:00
Alexandre Bouvier
a766e7d663
video_core: Support new VkResult
2022-05-17 17:37:10 +02:00
lat9nq
bb9dc5098d
qt_software_keyboard: Address review feedback
...
Use auto and a more descriptive variable name.
Secondly, fix some C++ misconceptions or constructing too many objects.
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
Co-authored-by: Lioncash <mathew1800@gmail.com>
2022-05-16 14:44:01 -04:00
Kyle K
0bf20eeb9a
about dialog: Fix the logo in a multiplatform way
...
The Icon was renamed in #8283 for Linux builds, and the fix proposed in #8312 would in turn break
the icon for Windows users.
I've decided to fix the aboutdialog.ui file via qtcreator.
I'm not sure its important to have the yuzu icon inside the About dialog grabbed from the local Qt theme,
but I've reword how the code works for that, and we can just delete those lines.
I've also thrown the yuzu.png through pngcrush to remove this warning
libpng warning: iCCP: known incorrect sRGB profile
Credit to abouvier for bringing bug up.
2022-05-16 05:42:38 -07:00
lat9nq
12c90d26c9
main: Use Common::U16StringFromBuffer
...
See bef52745b
2022-05-15 18:09:19 -04:00
lat9nq
9843438669
qt_software_keyboard: Use Common::U16StringFromBuffer
...
See bef52745b
2022-05-15 18:08:08 -04:00
lat9nq
bef52745b1
string_util: Add U16StringFromBuffer
...
Qt's QString::toStdU16String doesn't work when compiling against the
latest libstdc++, at least when using Clang. This function effectively
does the same thing as the aforementioned one.
2022-05-15 18:06:33 -04:00
Lioncash
9272114d86
general: Avoid ambiguous format_to compilation errors
...
Ensures that we're using the fmt version of format_to.
These are also the only three outliers. All of the other formatters we
have are properly qualified.
2022-05-14 16:48:34 -04:00
Morph
be2fb77675
time_zone_manager: Use s8 for month length tables
...
Using this smaller type saves 512 bytes in the compiled executable.
2022-05-13 00:51:11 -04:00
Morph
23aeada691
video_core/surface: Use u8 for PixelFormat block tables
...
Using this smaller type saves 33280 bytes in the compiled executable.
2022-05-13 00:51:11 -04:00
Morph
6780806c59
codecs/vp9: Use u8 for norm and map luts
...
Using this smaller type saves 1536 bytes in the compiled executable.
2022-05-13 00:51:05 -04:00
Morph
a687a98cb1
command_generator: Use u8 for tap index lut
...
Using this smaller type saves 1024 bytes in the compiled executable.
2022-05-13 00:50:58 -04:00
Morph
6f622de3a8
Merge pull request #8308 from german77/disablesix
...
service: hid: Disable correctly motion input
2022-05-11 17:51:54 -04:00
Morph
ba42a57a62
Merge pull request #8314 from liamwhite/gl-flip-2
...
OpenGL: interpret face flips according to GL NDC
2022-05-11 17:51:18 -04:00
Morph
5c166806ee
Merge pull request #8313 from liamwhite/dma-bpp
...
maxwell_dma: fix bytes_per_pixel
2022-05-11 17:51:02 -04:00
Liam
d20d4060e9
maxwell_dma: use fallback if remapping is enabled
2022-05-10 19:26:48 -04:00
Liam
fa2047970e
video_core/macro: clear code on upload address assignment
2022-05-10 17:07:21 -04:00
german77
5740fc0f91
service: notifa: Implement most part of this service
...
Implements partially RegisterAlarmSetting, UpdateAlarmSetting, LoadApplicationParameter, DeleteAlarmSetting.
Needed for Fitness `Boxing 2: Rhythm & Exercise` and `Ring Fit Adventure`.
2022-05-09 10:28:04 -05:00
Fernando Sahmkow
df5dd2fd82
VideoCore: Add option to dump the macros.
...
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2022-05-08 21:37:34 -04:00
Liam
bf91c63d70
video_core/macro_jit_x64: warn on invalid parameter access
2022-05-08 02:48:03 -04:00
Liam
455ea63f4a
OpenGL: implement face flips according to NDC
2022-05-06 20:05:21 -04:00
Liam
b6ed3289df
maxwell_dma: fix bytes per pixel
2022-05-06 18:18:00 -04:00
Narr the Reg
f9315745f8
service: hid: Fix motion refresh rate
2022-05-06 11:13:49 -05:00
german77
b229605f32
service: hid: Disable correctly motion input
2022-05-06 11:13:48 -05:00
Lody
83f13c62e8
vk_rasterizer: fix stencil test when two faces are disabled
2022-05-06 14:47:55 +08:00
Morph
dfb800c76b
hle/result: Update std::expected replacement message
...
std::expected is included in C++23
2022-05-03 17:44:30 -04:00
Morph
67accc405f
hle/result: Add ResultRange overload in ResultVal
...
Also marks the implicit conversion operator as constexpr instead of consteval as the constructor is not constant evaluated.
2022-05-03 17:44:30 -04:00
bunnei
08fc849458
Merge pull request #8272 from german77/stick_range
...
yuzu: config: Improve analog stick mapping
2022-05-03 14:36:39 -07:00
Morph
5631c95c10
hle/result: Implement ResultRange
...
A ResultRange defines an inclusive range of error descriptions within an error module.
This can be used to check whether the description of a given ResultCode falls within the range.
The conversion function returns a ResultCode with its description set to description_start.
2022-05-02 18:17:39 -04:00
Kyle K
8b270cfd42
ui: retranslate the network tab
...
Looks like it was just missed when it was added, as currently the Network Tab only has one item
RetranslateUI is used more commonly throughout the project
2022-05-01 21:39:39 -07:00
Kyle K
5f157b76c7
ui: let system locale control format of Custom RTC
...
The Custom RTC widget is under the influence of the computers System Locale.
The format strings are not necessarily related. As a small example, setting the Windows Language to Dansk, and then trying to use yuzu in English the requested AM/PM indicator is simply not shown
The display format for the Custom RTC field needs to be removed from src/yuzu/configuration/configure_system.ui
modifying the display format needs to be moved to src/yuzu/configuration/configure_system.cpp
2022-04-30 17:29:49 -07:00
Morph
e8d4250bb7
Merge pull request #8274 from german77/firmware
...
service: hid: Stub IsFirmwareUpdateNeededForNotification
2022-04-29 04:08:34 -04:00
Mai M
a533c4c26b
Merge pull request #8280 from Tachi107/spdx-fixup
...
chore: add missing SPDX tags
2022-04-28 23:28:42 -04:00
Mai M
bffece2295
Merge pull request #8282 from liamwhite/gcc-12
...
GCC 12 fixes
2022-04-28 23:28:07 -04:00
Liam
ee4d63cee5
GCC 12 fixes
2022-04-28 16:50:34 -04:00
Andrea Pappacoda
b2eb103829
chore: add missing SPDX tags
...
Follow-up to 2b87305d31
2022-04-28 18:24:11 +02:00
bunnei
a0ed010ac1
Merge pull request #8267 from Morph1984/swapbuffers
...
renderer_vulkan: Update screen info if the framebuffer size has changed
2022-04-27 22:21:15 -07:00
Mai M
4aaa07847f
Merge pull request #8236 from Docteh/sort_translations
...
Changes to language order in General -> UI -> Interface Language
2022-04-27 21:47:39 -04:00
bunnei
2b77a9fd0c
Merge pull request #8229 from german77/reinterpret2
...
service: hid: Access shared memory directly
2022-04-27 12:31:27 -07:00
Kyle K
0a30e78bbb
Changes to language order in General -> UI -> Interface Language
...
Language List is from Dolphin, specifically https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/DolphinQt/Settings/InterfacePane.cpp#L30
Any languages that are compiled in, but not in the list will be at the end.
2022-04-27 02:33:16 -07:00
german77
bcaf1a7bb2
service: hid: Stub IsFirmwareUpdateNeededForNotification
...
Used in Fitness Boxing 2: Rhythm & Exercise (0100073011382000)
2022-04-27 00:06:30 -05:00
Narr the Reg
ec8fa22768
yuzu: Config allow to delete single axis directions when buttons are mapped to a stick
2022-04-26 19:03:54 -05:00
Narr the Reg
d0bdbb9afb
yuzu: config: Set default range to 95%
2022-04-26 19:03:54 -05:00
Morph
1f621032e5
renderer_vulkan: Update screen info if the framebuffer size has changed
2022-04-26 02:48:40 -04:00
Mai M
d2c22fcc96
Merge pull request #8261 from liamwhite/jit-cleanup
...
service: jit: document and clean up
2022-04-24 22:03:39 -04:00
Liam
1d0ae7c257
service: jit: document and clean up
2022-04-24 20:25:42 -04:00
Mai M
5e44c82cb7
Merge pull request #8260 from Morph1984/c4146
...
kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
2022-04-24 18:25:00 -04:00
Morph
88052d8c09
kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
...
Resolves the C4146 compiler warning on MSVC.
2022-04-24 17:40:47 -04:00
Merry
71b0b6274e
Remove unused PrepareReschedule function
2022-04-24 12:10:16 +01:00
Narr the Reg
db349d78c3
service: hid: Ensure all structs are initialized
2022-04-23 17:11:43 -05:00
Narr the Reg
879f936920
service: hid: Access shared memory directly
2022-04-23 15:41:42 -05:00
Morph
f48bf899e7
Merge pull request #8249 from german77/queued
...
hotkeys: Trigger actions on a separate thread
2022-04-23 16:21:23 -04:00
Narr the Reg
1d1e94336e
hotkeys: Trigger actions on a separate thread
2022-04-23 14:24:28 -05:00
Morph
2b87305d31
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
bunnei
401095f021
Merge pull request #7976 from BytesGalore/master
...
loader: log the type of mismatching file-extension
2022-04-22 23:55:07 -07:00
bunnei
e72179e9fd
Merge pull request #7978 from german77/sideway
...
input_common: Map sticks correctly when mapped sideways
2022-04-21 22:21:59 -07:00
bunnei
c0f328e7d4
Merge pull request #8222 from german77/sixaxis_test
...
service: hid: Improve accuracy of sixaxis functions
2022-04-21 21:25:47 -07:00
Mai M
f5c13df6c5
Merge pull request #8192 from german77/screenshot
...
bootmanager: Don't create another screenshot request if previous one is not done yet
2022-04-21 04:20:57 -04:00
Mai M
6ef7858118
Merge pull request #8232 from liamwhite/backtrace
...
core/arm: separate backtrace collection
2022-04-21 02:51:03 -04:00
Liam
80afee83ba
core/arm: separate backtrace collection
2022-04-20 21:39:42 -04:00
Mai M
2243a93a92
Merge pull request #8231 from german77/warning
...
input_common: Ignore boost uninitialized local variable
2022-04-20 20:48:40 -04:00
Narr the Reg
bd648a74df
input_common: Ignore boost uninitialized local variable
2022-04-20 18:28:24 -05:00
bunnei
2d31a75287
Merge pull request #8224 from Docteh/hihi1
...
ui: translate hat directions
2022-04-20 12:32:22 -07:00
Purple
eace69e929
Prevent the mouse cursor from leaving the window when mouse panning is enabled
2022-04-19 16:22:51 -04:00
Kyle K
4d92678a6a
ui: translate hat directions
...
QObject ends up being its own translation context. But this works in our
favor. GetButtonName and GetDirectionName will share one translation the
directions such as "Left" "Right" and the ConfigureInputPlayer context
will contain translations that show up in the form, in places that aren't
those buttons.
2022-04-19 04:24:39 -07:00
Narr the Reg
d64fe5a63a
service: hid: Improve accuracy of sixaxis functions
2022-04-18 15:02:47 -05:00
Andrea Pappacoda
3c0d634dbb
yuzu: mention GPLv3.0+ in about dialog
...
Follow-up to f75d609545
Fixes #8218
2022-04-18 20:23:57 +02:00
german77
e14b4ca537
bootmanager: Don't create another screenshot request if previous one is not done yet
2022-04-18 01:00:48 -05:00
Mai M
094cc7486b
Merge pull request #8204 from Docteh/translate_gameslist
...
ui: Fix Game Compatibility list translations
2022-04-17 05:45:30 -04:00
Kyle K
2920554c20
ui: Fix Game Compatibility list translations
...
Reported by GillianMC on Discord. Looks to be a small quirk in the QT API.
setText(QObject::tr(status.text));
bringing up QObject breaks the link with the GameListItemCompat
2022-04-16 16:30:45 -07:00
Fernando S
dbb137d0a0
Merge pull request #6558 from german77/ringcon2
...
hidbus: Implement hidbus and ringcon
2022-04-16 15:51:14 +02:00
bunnei
cc53f4b48d
Merge pull request #8188 from merryhime/jit-race-page-table-changed
...
dynarmic: Fix race when switching page tables
2022-04-16 00:24:53 -07:00
Narr the Reg
d70524b074
yuzu: Call ignore event after ensuring it's initialized
2022-04-16 00:49:26 -05:00
german77
25c46f82c5
yuzu: Add custom ringcon configuration
2022-04-16 00:49:26 -05:00
german77
0a05a333e2
hidbus: Implement hidbus and ringcon
2022-04-16 00:49:21 -05:00
Fernando S
9c8fa421f4
Merge pull request #8205 from liamwhite/n64-misc
...
Fixes for Mario 64
2022-04-16 00:05:49 +02:00
Fernando S
4e0c4e9929
Merge pull request #8172 from bunnei/kernel-mutex
...
hle: kernel: Use std::mutex instead of spin locks for most kernel locking.
2022-04-16 00:05:04 +02:00
Fernando Sahmkow
ba73142ce0
video_core: implement formats for N64 emulation
2022-04-14 11:06:27 -04:00
Liam
2d4f844b1b
buffer_cache: cap vertex buffer sizes
2022-04-14 10:46:48 -04:00
Liam
3bffb0464b
maxwell3d: add small_index_2 register
2022-04-14 09:57:06 -04:00
bunnei
dadffca1b8
Merge pull request #8190 from Docteh/palswap
...
ui: Set Link Color when setting theme
2022-04-13 22:15:31 -07:00
bunnei
ac9467fa6c
Merge pull request #8027 from lat9nq/cmd-fullscreen-size
...
emu_window_sdl2: Set window size to display dimensions for exclusive fullscreen
2022-04-13 18:43:47 -07:00
Fernando S
1491acfc53
Merge pull request #8202 from merryhime/fix-single-core
...
dynarmic: Fix single core mode
2022-04-13 23:21:11 +02:00
merry
0b947e0341
dynarmic: Fix single core mode
...
Regression introduced in ac87509300 . Closes #8201 .
2022-04-13 20:40:12 +01:00
Liam
751903c633
service: jit: Implement the JIT service
2022-04-13 08:41:27 -04:00
bunnei
cd12d87e5b
Merge pull request #8165 from bunnei/ensure-session-port-cleanup
...
Kernel: Track open references to KServerPort and KServerSession.
2022-04-12 14:01:40 -07:00
Kyle K
feb462c654
ui: Touching QPalette::Text broke dark -> light UI. don't do
2022-04-12 12:50:56 -07:00
bunnei
4d4a17ef6f
Merge pull request #8178 from tech-ticks/skyline-icache-fix
...
hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory (fixes #8174 )
2022-04-12 11:23:20 -07:00
bunnei
03f8a16869
core: hle: kernel: k_thread: Rework dummy thread waiting.
2022-04-11 21:15:38 -07:00
bunnei
74c36ad85f
core: hle: service: Allocate a service thread.
2022-04-11 21:13:40 -07:00
bunnei
13b1ee7679
hle: kernel: k_spin_lock: Remove unused ThreadPause.
2022-04-11 21:13:40 -07:00
bunnei
e1b3368c18
hle: kernel: Use std::mutex instead of spin locks for most kernel locking.
2022-04-11 21:13:40 -07:00
bunnei
203b812a83
Merge pull request #8157 from lat9nq/kernel-races
...
kernel: Fix some data races
2022-04-11 21:13:01 -07:00
Jan Beich
a17a828115
service: sfdnsres: add missing includes for some BSDs after 5becdcea0b
...
src/core/hle/service/sockets/sfdnsres.cpp: In function 'Service::Sockets::NetDbError Service::Sockets::AddrInfoErrorToNetDbError(s32)':
src/core/hle/service/sockets/sfdnsres.cpp:66:10: error: 'EAI_NODATA' was not declared in this scope; did you mean 'EAI_NONAME'?
66 | case EAI_NODATA:
| ^~~~~~~~~~
| EAI_NONAME
src/core/hle/service/sockets/sfdnsres.cpp: In function 'std::vector<unsigned char> Service::Sockets::SerializeAddrInfo(const addrinfo*, s32, std::string_view)':
src/core/hle/service/sockets/sfdnsres.cpp:127:53: error: 'sockaddr_in' does not name a type; did you mean 'SockAddrIn'?
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^~~~~~~~~~~
| SockAddrIn
src/core/hle/service/sockets/sfdnsres.cpp:127:64: error: expected '>' before '*' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:127:64: error: expected '(' before '*' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
| (
src/core/hle/service/sockets/sfdnsres.cpp:127:65: error: expected primary-expression before '>' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:127:84: error: expected ')' before ';' token
127 | const auto addr = *reinterpret_cast<sockaddr_in*>(current->ai_addr);
| ^
| )
src/core/hle/service/sockets/sfdnsres.cpp:148:53: error: 'sockaddr_in6' does not name a type; did you mean 'SockAddrIn6'?
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^~~~~~~~~~~~
| SockAddrIn6
src/core/hle/service/sockets/sfdnsres.cpp:148:65: error: expected '>' before '*' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:148:65: error: expected '(' before '*' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
| (
src/core/hle/service/sockets/sfdnsres.cpp:148:66: error: expected primary-expression before '>' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
src/core/hle/service/sockets/sfdnsres.cpp:148:85: error: expected ')' before ';' token
148 | const auto addr = *reinterpret_cast<sockaddr_in6*>(current->ai_addr);
| ^
| )
2022-04-11 22:26:37 +00:00
Fernando S
e4e9181566
Merge pull request #8180 from liamwhite/symbols
...
core: extract symbol reading
2022-04-11 18:40:34 +02:00
Kyle K
790bad80eb
ui: Set Link Color when setting theme
...
Long story short, QT doesn't allow the link colors to be set via their stylesheets.
There are two ways to work with this, specify the color manually for every link (See the About dialog) The other way is to change the default palette.
IsDarkTheme is copy/pasted from src/yuzu/debugger/wait_tree.cpp
2022-04-11 00:00:29 -07:00
Fernando S
5c7b2870ce
Merge pull request #8171 from tech-ticks/skyline-improvements
...
Improvements for game modding with Skyline, DNS resolution
2022-04-10 23:40:54 +02:00
merry
396a1dc9b0
dynarmic: Fix race when switching page tables
2022-04-10 15:46:29 +01:00
tech-ticks
53f7a78e9e
hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory ( fixes #8174 )
2022-04-09 13:29:19 +02:00
bunnei
68b5568576
Merge pull request #8149 from liamwhite/front-face
...
OpenGL: flip front faces if Z scale is inverted
2022-04-09 01:39:39 -07:00
Liam
28fb3e8240
core: extract symbol reading
2022-04-09 02:16:34 -04:00
bunnei
2588188273
Merge pull request #8138 from german77/data-no-race
...
core: hid: Reduce the amount of data races
2022-04-08 14:14:53 -07:00
bunnei
11febb02d6
hle: kernel: Unify and integrate reference tracking for KServerPort/KServerSession.
...
- These are not managed elsewhere, and need to be tracked and closed on emulation shutdown.
2022-04-08 14:13:22 -07:00
bunnei
5a3c38e133
hle: kernel: k_server_port: Release ref-counted host emulation members on Destroy.
2022-04-08 14:11:40 -07:00
bunnei
45da07576f
hle: kernel: k_auto_object: Move unregister with kernel to after Destroy.
...
- Destructor is no longer invoked, so our object counting was off.
2022-04-08 14:11:40 -07:00
bunnei
2ffc21449d
hle: service: sm: Remove manual tracking of KServerPorts.
2022-04-08 14:11:39 -07:00
bunnei
2878df391c
hle: kernel: hle_ipc: HasSessionRequestHandler: Check if domain handler is expired rather than locking.
2022-04-08 14:11:39 -07:00
bunnei
27e7b14429
Merge pull request #8169 from merryhime/scoped_lock
...
Replace lock_guard with scoped_lock
2022-04-08 14:01:42 -07:00
tech-ticks
5becdcea0b
service: sfdnsres: Implement DNS address resolution
2022-04-08 21:28:03 +02:00
Morph
b17993ecd3
CMakeLists: Enforce C4505 and C5245
...
These are similar to Wunused-function on gcc/clang
2022-04-07 23:00:04 -04:00
Narr the Reg
b12a44a5ea
core: hid: Fix double lock on softlock and forced updates
2022-04-07 17:08:01 -05:00
merry
7fcb711b4e
Merge pull request #8167 from Tachi107/patch-1
...
fix: remove #pragma once in .cpp file
2022-04-07 22:47:43 +01:00
tech-ticks
cdc7fc731d
service: bsd: Add keepalive socket option
2022-04-07 23:30:23 +02:00
tech-ticks
de955ddc9d
patch_manager: Apply layered exefs patches from 'atmosphere' SD directory
2022-04-07 23:02:44 +02:00
Narr the Reg
c5b3ff2238
core: hid: Replace lock_guard with scoped_lock
2022-04-07 13:52:51 -05:00
Merry
9144a342ca
core/hle: Standardize scoped_lock initializers
2022-04-07 19:44:07 +01:00
Merry
833b9e5fb8
yuzu/util: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
41af59a6cb
web_service: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
e8a60754e9
video_core: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
b02d74d113
input_common: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
2ee92efb8e
core: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
de61c0897c
core/hle: Replace lock_guard with scoped_lock
2022-04-07 19:44:07 +01:00
Merry
ae642bbff2
common: Replace lock_guard with scoped_lock
2022-04-07 19:30:55 +01:00
german77
48ac3b1b60
core: hid: Reduce the amount of dataraces
2022-04-07 13:18:03 -05:00
Fernando S
a426c9e941
Merge pull request #8161 from liamwhite/gl-s8d24
...
OpenGL: fix S8D24 to ABGR8 conversions
2022-04-07 16:59:41 +02:00
Fernando S
55841eb669
Merge pull request #8152 from liamwhite/gl-crop
...
OpenGL: fix cropping
2022-04-07 16:58:59 +02:00
Fernando S
a319d0d16c
Merge pull request #8150 from liamwhite/vk-crop
...
Vulkan: crop to screen dimensions if crop not explicitly requested
2022-04-07 16:58:29 +02:00
Fernando S
0bb26a7794
Merge pull request #8148 from merryhime/interrupts
...
dynarmic: Better interrupts
2022-04-07 16:21:41 +02:00
Fernando S
62d668fc79
Merge pull request #8143 from merryhime/rdtsc
...
native_clock: Use lfence with rdtsc
2022-04-07 16:17:45 +02:00
Fernando S
9660780346
Merge pull request #8133 from liamwhite/gl-spv-cbuf
...
shader_recompiler: support const buffer indirect addressing on OpenGL
2022-04-07 12:40:59 +02:00
Andrea Pappacoda
4d8afbf2eb
fix: remove #pragma once in .cpp file
2022-04-07 12:03:47 +02:00
bunnei
2e67caa7ec
Merge pull request #8164 from liamwhite/jit-stub
...
service: jit: stub JIT service
2022-04-06 18:34:45 -07:00
Liam
d414904aef
service: jit: stub JIT service
2022-04-06 20:07:01 -04:00
Liam
1027ffa911
OpenGL: fix S8D24 to ABGR8 conversions
2022-04-06 19:44:33 -04:00
bunnei
078e0f7cba
Merge pull request #8122 from bunnei/improve-thread-usage
...
Improve usage of service host threads
2022-04-06 12:25:25 -07:00
german77
d6493d42fd
service: hid: Partially revert #8123
2022-04-05 22:35:38 -05:00
bunnei
b3e6670709
Merge pull request #8137 from bunnei/improve-nvflinger-2
...
Follow-up fixes for NVFlinger rewrite (Part 2)
2022-04-05 19:11:28 -07:00
bunnei
4e3136128e
Merge pull request #8100 from Morph1984/registered-crash
...
registered_cache: Prevent nullptr dereference when accumulating files
2022-04-05 18:18:41 -07:00
lat9nq
b64f4230b3
k_system_control: Fix data race
...
`return distribution(gen)` is a data race between a read and a write in
two threads, reported by TSan. Remove static random number generators so
they aren't using the same generator.
2022-04-05 19:55:56 -04:00
Mai M
2992924e84
Merge pull request #8159 from merryhime/pst
...
dynarmic: Print stack trace on unrecognised instruction or other exception
2022-04-05 17:18:31 -04:00
merry
8bcfa4046f
dynarmic: Print stack trace on unrecognised instruction or other exception
2022-04-05 20:40:20 +01:00
Andrea Pappacoda
4490ee8c0a
build: remove -fconcepts
...
It was needed on GCC versions not supporting `-std=c++20`, but GCC 10 and newer (required to compile yuzu) don't need it anymore
2022-04-05 20:52:11 +02:00
bunnei
dcb17246d9
Revert "texture_cache/util: Remove unneeded ReadBlockUnsafe"
2022-04-04 16:26:53 -07:00
Liam
bf53c6ebee
shader_recompiler: Decrease indirect cbuf limit to match hardware
2022-04-04 16:44:01 -04:00
ameerj
ef60f353a8
texture_cache/util: Remove unneeded ReadBlockUnsafe
...
This call was reading GPU memory into the dst buffer, which is then overwritten by the SwizzleTexture call.
2022-04-04 15:57:54 -04:00
bunnei
18017f7adf
Merge pull request #8089 from merryhime/paranoia
...
configuration: Add Paranoid CPU accuracy level
2022-04-04 11:07:38 -07:00
Liam
27116accd9
OpenGL: fix cropping
2022-04-04 12:51:09 -04:00
Liam
b49aaadc87
Vulkan: crop to screen dimensions if crop not explicitly requested
2022-04-04 11:45:15 -04:00
Liam
a9d9b29461
OpenGL: propagate face flip condition
2022-04-04 10:32:14 -04:00
Liam
6c926f3cac
OpenGL: flip front faces if Z scale is inverted
2022-04-04 10:19:40 -04:00
lat9nq
bda62c0837
k_auto_object: Fix data race
...
Change the memory order to acqure-release when we decrement the
reference count. Prevents a race with line 89 reported by TSan.
2022-04-03 21:47:58 -04:00
lat9nq
831f022536
k_thread: Fix data race
...
TSan reports a data race between writing at cpp:1162 and reading at
h:262. Make the thread_state atomic to prevent this.
2022-04-03 21:47:58 -04:00
lat9nq
0f347eaf52
k_process: Fix data race
...
TSan reported a race between thread 36 and thread 34, a read at :225 and
a write at :225 respectively. Make total_proces_running_time_ticks
atomic to avoid this race.
2022-04-03 21:47:57 -04:00
lat9nq
53d3082dd4
kernel: Fix current_process race
...
TSan reported a race at :258 and :803, so make current_process an atomic
pointer.
2022-04-03 21:47:57 -04:00
lat9nq
039ce14442
k_scheduler_lock: Fix data race
...
TSan reports a race between the main thread and T37 during
IsLockedByCurrentThread and when it's set at the end of Lock(),
respectively. Set owner_thread to an atomic pointer to fix it.
Co-authored-by: bunnei <bunneidev@gmail.com>
2022-04-03 21:47:57 -04:00
Merry
42d6a01039
native_clock: Internal linkage for FencedRDTSC
...
__forceinline required on MSVC for function to be inlined
2022-04-03 22:38:12 +01:00
merry
b8d8677ed1
native_clock: Use lfence with rdtsc
2022-04-03 22:38:10 +01:00
bunnei
a7f7fb72d6
Merge pull request #8105 from merryhime/atomicload128
...
native_clock: Use AtomicLoad128
2022-04-03 14:26:28 -07:00
merry
ac87509300
arm_dynarmic: Use HaltReason for svc calls and reschedules
2022-04-03 18:20:11 +01:00
merry
f54345590b
dynarmic: Better interrupts
2022-04-03 16:39:48 +01:00
bunnei
f35176e94b
Merge pull request #8135 from Morph1984/websession-hack
...
applets/web: Keep foreground (websession) web applet open
2022-04-02 20:49:51 -07:00
bunnei
3a540a5f8a
Merge pull request #8123 from german77/bombslinger
...
service: hid: Remove inaccurate behavior on initialization
2022-04-02 20:12:45 -07:00
german77
c4bf041235
service: npad: Default initialize shared memory
2022-04-02 19:43:49 -06:00
merry
7470fdd77c
native_clock: Use writeback from CAS to avoid double-loading
2022-04-02 22:22:48 +01:00
merry
eeca2f2df9
atomic_ops: Implement AtomicCompareAndSwap with writeback
2022-04-02 22:22:48 +01:00
Merry
18ecb3053b
native_clock: Use AtomicLoad128
2022-04-02 20:55:36 +01:00
Merry
14df27ff04
atomic_ops: Implement AtomicLoad128
2022-04-02 20:55:36 +01:00
merry
d739a9a85e
Merge pull request #8134 from Tachi107/remove-time-stretcher
...
audio_core: remove time stretcher
2022-04-02 20:49:21 +01:00
Morph
e6ccc57b62
Merge pull request #8141 from merryhime/configure-hotkeys-columns
...
configure_hotkeys: Make first column stretch and not last column
2022-04-02 15:35:31 -04:00
Morph
c49d144301
Merge pull request #8140 from merryhime/per-game-addon-columns
...
configure_per_game_addons: Stretch first column and not last
2022-04-02 15:35:26 -04:00
merry
9b28edea4f
configure_per_game_addons: Set tree view minimum section size to 150px
2022-04-02 17:19:25 +01:00
merry
d20d8b9214
configure_hotkeys: Make first column stretch and not last column
...
Also configure minimum width of columns to be 150px.
2022-04-02 17:17:13 +01:00
Andrea Pappacoda
d9044f00e1
fix: typos
2022-04-02 16:34:07 +02:00
merry
5d7dffaa0e
configure_per_game_addons: Stretch first column and not last
...
This provides more sensible column widths.
2022-04-02 13:46:16 +01:00
bunnei
a00e1de7ce
hle: service: nvflinger: buffer_queue_producer: Cleanup & fixes.
2022-04-01 22:59:35 -07:00
bunnei
7054ba2ed8
hle: service: nvflinger: consumer_base: Cleanup & fixes.
2022-04-01 22:58:40 -07:00
bunnei
2123fc0a50
hle: service: nvflinger: buffer_queue_producer: Cleanup & add GetReleasedBuffers.
2022-04-01 22:58:02 -07:00
bunnei
63094fb176
hle: service: nvflinger: buffer_queue_core: Cleanup & fixes.
2022-04-01 22:56:32 -07:00
bunnei
ad78e63274
hle: service: nvflinger: Use correct logger namespace.
2022-04-01 22:55:44 -07:00
Morph
d2b4f8f974
hle: service: nvdrv: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
b3f4b41cc1
hle: service: vi: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
f432c730cb
hle: service: bsd: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
4a99bcfb95
hle: service: filesystem: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
c91b912a07
hle: service: audio: Create a service thread where appropriate.
2022-04-02 01:24:30 -04:00
bunnei
75e39568a0
hle: service: Add option for service interfaces to create or use the default thread.
2022-04-02 01:24:30 -04:00
bunnei
60f2fe3b48
hle: kernel: Create a default thread for services that do not need their own host thread.
2022-04-02 01:24:30 -04:00
Morph
4a960b6945
applets/web: Keep foreground (websession) web applet open
...
This is a hack to keep the foreground (websession) web applet open in games using these such as Super Mario 3D All-Stars.
2022-04-01 22:50:01 -04:00
Liam
146f1f5ac6
shader_compiler: support const buffer indirect addressing in GLSL
2022-04-01 17:08:40 -04:00
Andrea Pappacoda
04380c99e8
audio_core: remove time stretcher
...
Also drop the SoundTouch dependency
2022-04-01 19:54:58 +02:00
Fernando S
922f189a59
Merge pull request #8128 from FernandoS27/gc-fixes
...
GPU Garbage Collection: Fix regressions.
2022-04-01 17:19:55 +02:00
Liam
528cba63b6
shader_recompiler: support const buffer indirect addressing on OpenGL SPIR-V
2022-04-01 11:17:54 -04:00
Mai M
9a503410f4
Merge pull request #8079 from lat9nq/applet-typo
...
configure_debug: Fix typo
2022-04-01 11:15:15 -04:00
Mai M
6a0a4bfe47
Merge pull request #8097 from Tachi107/build-cleanup-install
...
build: cleanup installation of yuzu and yuzu-cmd
2022-04-01 11:14:39 -04:00
Fernando S
f83a76084e
Merge pull request #8066 from ameerj/gpu-decode-fixes
...
codec: Fix GPU decoder detection on Windows and a memory leak
2022-04-01 01:37:22 +02:00
Fernando Sahmkow
29660bc55e
GPU Garbage Collection: Fix regressions.
2022-04-01 01:36:24 +02:00
Fernando S
c5beddca49
Merge pull request #8116 from ameerj/nvhost_ctrl_bad_param
...
nvhost_ctrl: Only mark EventState::Busy as BadParameter
2022-04-01 01:29:46 +02:00
german77
a2cc3b6098
service: hid: Remove inaccurate behavior on initialization
2022-03-31 12:35:57 -06:00
bunnei
871454ec54
Merge pull request #8076 from ameerj/nv-vk-msaa-scale
...
Vulkan: Use 3D helpers for MSAA scaling on NV drivers 510+
2022-03-30 23:00:44 -07:00
bunnei
245ba64d08
Merge pull request #8120 from german77/signal
...
service: hid: Signal event on AcquireNpadStyleSetUpdateEventHandle
2022-03-30 22:45:40 -07:00
bunnei
2fb74be647
Merge pull request #8090 from bunnei/fix-skyline
...
Kernel Memory Updates (Part 7): Various fixes to code memory (Skyline support)
2022-03-30 18:23:37 -07:00
Narr the Reg
0b8c1af0ed
service: hid: Signal event on AcquireNpadStyleSetUpdateEventHandle
2022-03-30 17:09:28 -06:00
bunnei
e0f76f9eb9
Merge pull request #8107 from german77/fullscreen
...
yuzu: Only override fullscreen setting if gamepath or argument is provided
2022-03-29 17:43:10 -07:00
ameerj
2a58f15111
nvhost_ctrl: Only mark EventState::Busy as BadParameter
...
Fixes an svc break in Kirby and the Forgotten Land with async GPU enabled.
2022-03-29 15:13:30 -04:00
Morph
5786f3ea5b
Merge pull request #8109 from lat9nq/god-why
...
yuzu_cmd: Start the logging backend
2022-03-29 03:52:50 -04:00
lat9nq
09dc77a19f
yuzu_cmd: Start the logging backend
2022-03-28 23:14:42 -04:00
german77
aff2d62926
yuzu: Only override fullscreen setting if gamepath or argument is provided
2022-03-28 18:52:27 -06:00
ameerj
ddafe40dc1
gl_rasterizer: Avoid scenario locking already owned mutex
...
gpu.TickWork() may lock the texture_cache and buffer_cache mutexes, which are owned by the thread prior to invoking TickWork().
Defer invoking gpu.TickWork() until the scope ends, where the owned mutexes are released.
2022-03-28 20:35:15 -04:00
bunnei
99fbd2057b
Merge pull request #8098 from merryhime/ic-ivau
...
dynarmic: Invalidate CPU cache on all cores
2022-03-28 15:45:52 -07:00
Morph
e144d064af
registered_cache: Prevent nullptr dereference when accumulating files
...
For whatever reason, nca_file/dir can be nullptr in the list of files/dirs. I have not determined the cause of this yet, so add a nullptr check for these prior to dereferencing them.
2022-03-27 17:06:27 -04:00
Mai M
4ea04b5b56
Merge pull request #8095 from bylaws/master
...
shader_recompiler: Include <bit> header when std::count{r,l}_zero is used
2022-03-27 12:36:19 -04:00
merry
5a37246da6
arm_dynarmic_64: Invalidate on all cores
2022-03-27 15:37:19 +01:00
Andrea Pappacoda
6f16891f43
build: cleanup installation of yuzu and yuzu-cmd
...
Explicitly specifying an install destination is not needed anymore since
CMake 3.14.
By removing the hardcoded ${CMAKE_INSTALL_PREFIX}/bin it is also now
possible to override the install destination via the command line. For
example, you can now install yuzu to /usr/games with
-DCMAKE_INSTALL_BINDIR=games
2022-03-27 15:10:24 +02:00
Fernando S
64222c5f34
Merge pull request #8088 from bunnei/fixup-nvflinger
...
Follow-up fixes for NVFlinger rewrite
2022-03-27 13:09:59 +02:00
bunnei
b149526098
Revert "Memory GPU <-> CPU: reduce infighting in the texture cache by adding CPU Cached memory."
2022-03-26 12:38:30 -07:00
merry
dbbe297904
configure_cpu: More descriptive text for Paranoid option
2022-03-26 08:56:23 +00:00
bunnei
533ff8b1a9
hle: kernel: k_page_table: Fix implementations of LockForCodeMemory & UnlockForCodeMemory.
2022-03-26 01:49:34 -07:00
bunnei
003d5761e1
hle: kernel: k_page_table: Implement LockMemoryAndOpen & UnlockMemory.
2022-03-26 01:46:41 -07:00
merry
e752529c4c
configuration: Add Paranoid CPU accuracy level
...
Disables most optimizations for the paranoid.
2022-03-26 08:46:25 +00:00
bunnei
3beb4d4273
hle: kernel: svc: MapProcessMemory: Fix usage of KPageLinkedList to use physical address space.
2022-03-26 01:35:37 -07:00
bunnei
f84511eb4f
hle: kernel: svc: CreateCodeMemory: Remove log of 'out' host pointer.
...
- This does not seem terribly useful and is inconsistent with other usage.
2022-03-26 01:34:29 -07:00
bunnei
7e6a6bb505
hle: kernel: k_code_memory: Fix usage of KPageLinkedList to use physical address space.
2022-03-26 01:33:16 -07:00
bunnei
506961d8cc
hle: kernel: k_page_table: Implement MakeAndOpenPageGroup & MakePageGroup.
2022-03-26 01:25:52 -07:00
bunnei
416944c501
hle: kernel: k_page_table: Add IsHeapPhysicalAddress method.
2022-03-26 01:23:43 -07:00
bunnei
f5415480de
hle: kernel: k_page_linked_list: Add Empty method.
2022-03-26 01:02:42 -07:00
bunnei
58a4c17e98
hle: kernel: svc: UnmapProcessCodeMemory: Fix inverted alignment check.
2022-03-26 01:01:55 -07:00
bunnei
94f381d789
Merge pull request #8041 from Morph1984/inline-swkbd
...
applets/swkbd: Add support for an updated inline software keyboard
2022-03-25 23:19:11 -07:00
bunnei
25e4089d54
hle: service: nvflinger: buffer_queue: Remove AutoLock and fix free buffer tracking.
2022-03-25 23:01:03 -07:00
bunnei
8da842dd90
hle: service: nvflinger: buffer_queue_consumer: Use scoped_lock instead of unique_lock.
2022-03-25 22:59:06 -07:00
bunnei
a2ad35b9ec
hle: service: nvflinger: consumer_base: Use scoped_lock instead of unique_lock.
2022-03-25 22:58:52 -07:00
bunnei
a841fd8034
hle: service: nvflinger: Remove unused BufferQueue.
2022-03-25 22:58:23 -07:00
Fernando Sahmkow
6e2cfc4310
Memory: Don't protect reads on Normal accuracy.
2022-03-25 04:24:25 +01:00
Fernando Sahmkow
bcee5061e7
Texture Cache: Add Cached CPU system.
2022-03-25 04:24:05 +01:00
bunnei
c989676dc5
Merge pull request #7720 from FernandoS27/yfc-gc
...
First Nugget: Reworked Garbage Collection to be smarter [originally from Project YFC]
2022-03-24 20:16:11 -07:00
Fernando S
8af33585c1
Merge pull request #8050 from bunnei/nvflinger-rewrite
...
Rewrite of the NVFlinger implementation
2022-03-25 03:36:55 +01:00
Fernando S
b085c25e6a
Merge pull request #8068 from ameerj/shader-if-false
...
shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass
2022-03-25 03:21:27 +01:00
Fernando Sahmkow
392612a2d3
GC: Address Feedback.
2022-03-25 03:05:56 +01:00
bunnei
f6bcf6c7e2
hle: nvflinger: ConsumerBase: Mark ctor as explicit.
2022-03-24 18:13:34 -07:00
bunnei
fa9f75819a
hle: vi: NativeWindow: Fix trivially copyable issues.
2022-03-24 18:13:34 -07:00
bunnei
4fce11872d
hle: nvdrv: nvdata: buffer_queue_producer: Minor cleanup.
2022-03-24 18:13:34 -07:00
bunnei
f496aa102d
hle: nvdrv: nvdata: Cleanup NvFence static assert.
2022-03-24 18:13:34 -07:00
bunnei
1299876ebe
hle: nvflinger: Remove unused unordered_map include.
2022-03-24 18:13:34 -07:00
bunnei
21d554f464
hle: nvflinger: buffer_queue_consumer: AcquireBuffer: Fix typo.
2022-03-24 18:13:34 -07:00
bunnei
0b6b398bd4
hle: nvflinger: Merge Rect with Common::Rectangle.
2022-03-24 18:13:33 -07:00
bunnei
ea2045efdf
hle: nvflinger: buffer_queue_core: Declare default dtor.
2022-03-24 18:13:33 -07:00
bunnei
2d84848c24
hle: nvflinger: buffer_queue_producer: DequeueBuffer: Remove unnecessary lock.
2022-03-24 18:13:33 -07:00
bunnei
6828db705e
hle: nvflinger: consumer_base: StillTracking: Should be const.
2022-03-24 18:13:33 -07:00
bunnei
e7304f6bd2
hle: nvflinger: graphic_buffer_producer: Remove unnecessary pragma pack.
2022-03-24 18:13:33 -07:00
bunnei
a08c906878
hle: nvflinger: parcel: Reserve token size.
2022-03-24 18:13:33 -07:00
bunnei
e941573bb7
hle: nvflinger: buffer_queue_core: StillTracking: Take const reference.
2022-03-24 18:13:33 -07:00
bunnei
411a53eaf3
hle: nvflinger: buffer_queue_core: Cleanup locking.
2022-03-24 18:13:33 -07:00
bunnei
d89257ddea
hle: nvflinger: Use std::chrono for present_ns.
2022-03-24 18:13:33 -07:00
bunnei
1f6dcd3784
hle: nvflinger: Migrate android namespace -> Service::android.
2022-03-24 18:13:33 -07:00
bunnei
a7f407ab22
hle: nvflinger: BufferQueueProducer: Handle SetPreallocatedBuffer with empty buffer.
...
- Used by Naruto Ultimate Ninja Storm.
2022-03-24 18:13:33 -07:00
bunnei
f1a91e0397
hle: vi: Integrate new NVFlinger and HosBinderDriverServer service.
2022-03-24 18:13:33 -07:00
bunnei
13c1932008
hle: nvflinger: Add implementation for HosBinderDriverServer service.
2022-03-24 18:13:33 -07:00
bunnei
072445a74f
hle: nvflinger: Add implementation for BufferQueueProducer class.
2022-03-24 18:13:33 -07:00
bunnei
12304ee7b6
hle: nvflinger: Add implementation for BufferQueueCore class.
2022-03-24 18:13:33 -07:00
bunnei
3693b78a28
hle: nvflinger: Add implementation for BufferQueueConsumer class.
2022-03-24 18:13:32 -07:00
bunnei
398f63e321
hle: nvflinger: Add implementation for QueueBufferInput and QueueBufferOutput structs.
2022-03-24 18:13:32 -07:00
bunnei
0de0899357
hle: nvflinger: Add implementation for BufferItemConsumer class.
2022-03-24 18:13:32 -07:00
bunnei
1955deb602
hle: nvflinger: Add implementation for ConsumerBase class.
2022-03-24 18:13:32 -07:00
bunnei
e5f998f631
hle: nvflinger: Add implementation for BufferSlot class.
2022-03-24 18:13:32 -07:00
bunnei
a5f9fbabfd
hle: nvflinger: Add implementation for BufferItem class.
2022-03-24 18:13:32 -07:00
bunnei
c1eed4083a
hle: nvflinger: Move implementation for Parcel to its own header.
2022-03-24 18:13:32 -07:00
bunnei
466b74b507
hle: nvflinger: Add android buffer queue definitions to its own header.
2022-03-24 18:13:32 -07:00
bunnei
2112b078a2
hle: nvflinger: Add IBinder interface.
2022-03-24 18:13:32 -07:00
bunnei
753377ebe8
hle: nvflinger: Add IConsumerListener interface.
2022-03-24 18:13:32 -07:00
bunnei
3fdb53d4d5
hle: nvflinger: Add ProducerListener interface.
2022-03-24 18:13:32 -07:00
bunnei
36937d8f31
hle: nvflinger: Add android window enumerations to its own header.
2022-03-24 18:13:32 -07:00
bunnei
6ec03eded9
hle: nvflinger: Add android Status flags to its own header.
2022-03-24 18:13:32 -07:00
bunnei
476f456d2f
hle: nvflinger: Move BufferTransformFlags to its own header.
2022-03-24 18:13:32 -07:00
bunnei
a8ff414423
hle: nvdrv: Rename Fence to NvFence to avoid naming conflicts.
2022-03-24 18:13:32 -07:00
bunnei
3396730b85
hle: nvflinger: Move PixelFormat to its own header.
2022-03-24 18:13:32 -07:00
bunnei
7c04c18560
hle: nvflinger: Add implementation for GraphicBuffer class.
2022-03-24 18:13:32 -07:00
bunnei
d5d04d5684
hle: nvflinger: Add implementation for Fence class.
2022-03-24 18:13:32 -07:00
bunnei
fbd0e594ba
hle: nvflinger: Add implementation for Rect class.
2022-03-24 18:13:32 -07:00
bunnei
e3ee327a30
common: logging: Add a logger for NVFlinger.
2022-03-24 18:13:32 -07:00
Fernando Sahmkow
2bd91a6f84
Garbage Collection: Final tuning.
2022-03-25 01:51:52 +01:00
Fernando Sahmkow
35675b986e
Buffer Cache: Tune to the levels of the new GC.
2022-03-25 01:51:51 +01:00
Fernando Sahmkow
7ea1f39bd0
Garbage Collection: Redesign the algorithm to do a better use of memory.
2022-03-25 01:51:51 +01:00
lat9nq
4f688d9a58
configure_debug: Fix typo
...
I thought I removed the double-asterisks in
07c908f27e but I am apparently mistaken.
This corrects that.
While we're at it, capitalize `All` in the previous setting.
2022-03-24 17:20:19 -04:00
Fernando S
0ea0322512
Merge pull request #8074 from liamwhite/cached-words
...
buffer_cache: reset cached write bits after flushing invalidations
2022-03-24 17:13:46 +01:00
bunnei
ff090284b2
Merge pull request #8035 from lat9nq/disable-web-applet
...
yuzu qt: Disable the web applet by default
2022-03-23 21:08:20 -07:00
ameerj
9b1322ef20
Vulkan: Use 3D helpers for MSAA scaling on NV drivers 510+
...
Nvidia Vulkan drivers 510+ crash when blitting MSAA images. Fall-back to 3D scale helpers for MSAA image scaling.
2022-03-23 23:30:17 -04:00
Liam
c6b7c191ea
buffer_cache: reset cached write bits after flushing invalidations
2022-03-23 20:59:01 -04:00
ameerj
6091af472a
dead_code_elimination_pass: Remove unreachable Phi arguments
2022-03-23 17:57:22 -04:00
Shoegzer
24a303f89f
Add include to fix compiling
2022-03-23 16:18:48 -04:00
bunnei
853746deb2
Merge pull request #8031 from Morph1984/cleanup-mii-please
...
applets: Cleanup MiiEdit applet implementation
2022-03-22 21:56:42 -07:00
bunnei
89a97915a8
Revert "dynarmic: Reduce size of code caches"
2022-03-22 18:32:54 -07:00
Billy Laws
ef9b177ecb
Include <bit> header when std::count{r,l}_zero is used
...
Needed for compilation with older libc++ releases
2022-03-22 21:11:24 +00:00
ameerj
09128c9106
shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass
...
This adds a pass to eliminate if(false) branches within the shader code
2022-03-22 02:39:31 -04:00
Morph
f7d582a655
applets/swkbd: Split software keyboard initialization
...
Since the CalcArg struct has been updated with a new size and fields, we have to split the initialization of the keyboard into multiple functions.
This also adds support for parsing the new CalcArg struct used by updated versions of Monster Hunter Rise.
2022-03-21 23:58:50 -04:00
Morph
07954ef117
applets/swkbd: Add new inline software keyboard types
...
These were added in newer firmware versions.
2022-03-21 23:58:50 -04:00
Morph
3b6c02f774
applets/mii: Remove unused include
2022-03-21 23:57:31 -04:00
Morph
94be8a907d
applets/mii: Remove frontend parameters
...
These are unused for now as we do not support a frontend implementation.
2022-03-21 23:57:31 -04:00
Morph
67bdfcb7ff
applets/mii: Cleanup MiiEdit applet implementation
...
This also enables proper support for MiiEdit applets which are used in games with firmware versions prior to 10.2.0 by handling the 2 different versions of applet inputs and outputs.
2022-03-21 23:57:31 -04:00
Morph
d91788fe38
applets/mii: Cleanup MiiEdit applet types
2022-03-21 23:57:31 -04:00
Morph
061eceaf0d
applets/mii: Move MiiEdit applet types into its own file
2022-03-21 23:57:31 -04:00
Morph
6e2ff19bc7
service: Move mii enums and structs into its own file
...
Moves these into types.h, since other files also make use of these types.
2022-03-21 23:57:31 -04:00
Morph
a8663c9f5c
applets: Rename Mii to MiiEdit
2022-03-21 23:57:31 -04:00
ameerj
98a4a74a63
qt_web_browser: Add missing includes
2022-03-21 22:42:14 -04:00
Narr the Reg
f27e097244
input_common: Map sticks correctly when mapped sideways
2022-03-21 19:39:33 -06:00
Ameer J
3b77361456
Merge pull request #8038 from liamwhite/exit-register-detection
...
shader_recompiler/EXIT: increment output register on failed enable test
2022-03-21 21:24:07 -04:00
bunnei
c9ffc287bf
Merge pull request #8048 from ameerj/include-purge
...
general: Reduce unused includes across the project
2022-03-21 18:03:54 -07:00
ameerj
59cea3d34d
codec: Plug GPU decoder memory leak
2022-03-21 20:22:52 -04:00
ameerj
cd9aebaec0
codec: Disable HW_FRAMES method check on Windows
...
It was reported that this method causes crashes on certain Linux decoding backends, hence the check to avoid it.
This subsequently caused Windows GPU decoders to never be selected and always fall back to CPU decoding, disable the check on Windows for now.
2022-03-21 20:21:09 -04:00
bunnei
516853d8a3
Merge pull request #7812 from FernandoS27/made-straight-from-the-nut
...
BufferCache: Find direction of the stream buffer increase.
2022-03-20 15:23:53 -07:00
Fernando Sahmkow
6182828ec5
BufferCache: Find direction of the stream buffer increase.
2022-03-20 21:37:23 +01:00
Fernando S
2e9974228e
Merge pull request #8036 from ameerj/starbit-nv
...
vk_texture_cache: Do not reinterpret DepthStencil source images
2022-03-20 13:35:59 +01:00
bunnei
d7a39fa3a1
Merge pull request #7840 from lioncash/bitor
...
texture_cache: Amend unintended bitwise OR in SynchronizeAliases
2022-03-20 02:19:30 -07:00
ameerj
f9709bb9e9
general: Fix clang/gcc build errors
2022-03-20 02:25:09 -04:00
ameerj
000b3197c6
yuzu_cmd: Reduce unused includes
2022-03-20 02:25:09 -04:00
ameerj
012963c513
yuzu: Reduce unused includes
2022-03-20 02:25:09 -04:00
ameerj
b51d9c043a
web_service: Reduce unused includes
2022-03-20 02:25:09 -04:00
ameerj
e7bb6ec32e
input_common: Reduce unused includes
2022-03-20 02:25:09 -04:00
ameerj
0df188787a
shader_recompiler: Reduce unused includes
2022-03-20 02:25:08 -04:00
bunnei
15dca3345c
Merge pull request #8040 from Morph1984/handle-table
...
KHandleTable: Optimize table entry layout
2022-03-19 23:17:37 -07:00
ameerj
e70b4f3fc5
common: Reduce unused includes
2022-03-19 15:01:31 -04:00
ameerj
b837219423
video_core: Reduce unused includes
2022-03-19 15:01:31 -04:00
bunnei
4e856fadc7
Merge pull request #8025 from lat9nq/cmd-specify-config
...
yuzu_cmd: Allow user to specify config file location
2022-03-19 01:33:50 -07:00
ameerj
582332d13f
common: Reduce unused includes
2022-03-19 02:23:33 -04:00
ameerj
22e01068e1
core: Reduce unused includes
2022-03-19 02:23:32 -04:00
bunnei
4fb93cbb3f
Merge pull request #8028 from v1993/patch-9
...
bsd: Allow inexact match for address length in AcceptImpl
2022-03-18 18:06:13 -07:00
Liam
35e3d7bef0
Address review comments
2022-03-18 15:55:46 -04:00
Liam
da3be7513b
shader_recompiler/EXIT: skip render targets with no outputs
2022-03-18 09:26:25 -04:00
ameerj
1967757627
general: Reduce core.h includes
2022-03-18 02:13:02 -04:00
Morph
c2a970b67d
KHandleTable: Optimize table entry layout
...
Since the handle type is not being used, we can reduce the amount of space each entry takes up by 4 bytes.
2022-03-18 00:28:25 -04:00
Liam
9809829a6e
shader_recompiler/EXIT: increment output register on failed enable test
2022-03-17 22:09:31 -04:00
ameerj
8281bfa93d
vk_texture_cache: Do not reinterpret DepthStencil source images
...
Fixes star pointer interactions in Super Mario Galaxy on some drivers, notably Nvidia.
Co-Authored-By: Fernando S. <1731197+fernandos27@users.noreply.github.com>
2022-03-17 20:55:05 -04:00
Fernando S
a409125765
Merge pull request #8024 from liamwhite/const-indexing
...
Add shader support for const buffer indirect addressing
2022-03-18 00:36:31 +01:00
Fernando S
16d882b843
Merge pull request #8030 from liamwhite/s8d24-conversion
...
Vulkan: convert S8D24 <-> ABGR8
2022-03-18 00:36:06 +01:00
lat9nq
07c908f27e
yuzu qt: Save disable_web_applet setting
...
The web applet causes multiple issues with the rest of the application.
Disable it by default and add a debug option to re-enable it until a
proper solution can be found.
2022-03-17 19:20:15 -04:00
lat9nq
d9fcecde0d
main: Update Disable Web Applet warning
2022-03-17 18:14:27 -04:00
lat9nq
7aaeb29b82
configure_debug: Add option to set disable_web_applet
...
Allow the user to configure the web applet usage ahead of booting the
application.
2022-03-17 18:03:13 -04:00
lat9nq
b78d281f75
yuzu: Move disable_web_applet to UISettings
2022-03-17 16:55:30 -04:00
Liam
83b1c9de37
Address review comments
2022-03-17 14:48:18 -04:00
Liam
95b9f62686
shader_recompiler: Use functions for indirect const buffer accesses
2022-03-17 13:30:21 -04:00
Liam
f3382e6339
Address review comments
2022-03-17 09:30:41 -04:00
bunnei
fdac72a864
Merge pull request #7964 from german77/miiii
...
applet: mii: Simple implementation of mii applet
2022-03-16 21:37:53 -07:00
Liam
9277c9c297
Address review comments
2022-03-16 18:00:42 -04:00
Liam
63cc9a9ceb
shader_recompiler: Implement LDC.IS address mode
2022-03-16 11:05:04 -04:00
Fernando S
35798baf47
Merge pull request #8013 from bunnei/kernel-slab-rework-v2
...
Kernel Memory Updates (Part 6): Use guest memory for slab heaps & update TLS.
2022-03-16 12:15:33 +01:00
Fernando S
387c4c4dee
Merge pull request #8023 from ameerj/kirby-pop-in
...
maxwell_3d: Implement a safer CB data upload
2022-03-16 12:14:08 +01:00
Liam
aea505f83d
Vulkan: convert S8D24 <-> ABGR8
2022-03-15 20:05:21 -04:00
Valeri
bbf69903e9
bsd: Allow inexact match for address length in AcceptImpl
...
Minecraft passes in zero for length, but this should account for all possible cases
2022-03-15 14:06:34 +03:00
lat9nq
22d08c5505
emu_window_sdl2: Set window size to display dimensions for exclusive fullscreen
...
Since SDL2 does not automatically resize the canvas when entering
fullscreen mode, resize the window to desktop display dimensions.
2022-03-15 04:33:08 -04:00
lat9nq
0b10017932
yuzu_cmd: Allow user to specify config file location
...
Adds an option `-c` or `--config` with one required argument that allows
the user to specify to where the config file is located. Useful for
scripts that run specific games with different preferences for settings.
2022-03-15 03:48:40 -04:00
lat9nq
bc89e1b457
default_ini: List use_extended_memory_layout in default config file
2022-03-15 03:13:55 -04:00
bunnei
1494a66aa3
core: hle: kernel: init_slab_setup: Move CalculateSlabHeapGapSize to global namespace.
2022-03-14 18:14:54 -07:00
bunnei
8b109f8a69
core: hle: kernel: Allocate dummy threads on host thread storage.
...
- Fixes a crash where on subsequent boots, long-lived host threads would have their dummy threads freed.
2022-03-14 18:14:54 -07:00
bunnei
18baef2ec9
core: hle: kernel: Downgrade dangling objects warning to debug.
...
- It is not impossible to leak kernel objects, so this is not really any issue anymore (albeit, still interesting).
2022-03-14 18:14:54 -07:00
bunnei
58b39c8ad8
core: hle: kernel: Make object list container global and ensure it is reset on each emulation session.
2022-03-14 18:14:54 -07:00
bunnei
29924a999e
core: hle: kernel: Remove server session tracking.
...
- These are now allocated/managed by emulated memory, so we do not need to track and free them on shutdown.
2022-03-14 18:14:54 -07:00
bunnei
b7535cd853
core: hle: kernel: k_process: Remove handle table finalize, reset page table.
2022-03-14 18:14:54 -07:00
bunnei
2b881f4ccc
core: hle: kernel: k_process: Implement thread local storage accurately.
2022-03-14 18:14:54 -07:00
bunnei
c8dba7c578
core: hle: kernel: k_page_table: Add implementations of MapPages, UnmapPages, and FindFreeArea for TLS.
2022-03-14 18:14:54 -07:00
bunnei
cb294300ea
core: hle: kernel: k_slab_heap: Refresh to use guest allocations.
2022-03-14 18:14:54 -07:00
bunnei
4b022badf0
core: hle: kernel: Update init_slab_heap, use device memory, and add KThreadLocalPage and KPageBuffer.
...
- Refreshes our slab initialization code to latest known behavior.
- Moves all guest kernel slabs into emulated device memory.
- Adds KThreadLocalPage and KPageBuffer, which we will use for accurate TLS management.
2022-03-14 18:14:54 -07:00
bunnei
8e8d8724a2
core: hle: kernel: k_page_buffer: Add KThreadLocalPage primitive.
2022-03-14 18:14:53 -07:00
bunnei
f92568936a
core: hle: kernel: k_page_buffer: Add KPageBuffer primitive.
2022-03-14 18:14:53 -07:00
bunnei
84ced13966
core: hle: kernel: k_thread: Ensure host Fiber is freed.
2022-03-14 18:14:53 -07:00
bunnei
4aa9e8543d
core: hle: kernel: k_server_session: Ensure SessionRequestManager is freed.
2022-03-14 18:14:53 -07:00
bunnei
dfbf03438f
core: hle: service: kernel_helpers: Use system resource limit.
2022-03-14 18:14:53 -07:00
bunnei
c0a2ae3186
core: hle: service: sm: Fix KPort reference count.
2022-03-14 18:14:53 -07:00
bunnei
c5516b1800
core: hle: kernel: k_thread: Update to reflect tree changes.
2022-03-14 18:14:53 -07:00
bunnei
8421193857
core: hle: kernel: Use weak_ptr where possible for SessionRequestHandler and SessionRequestManager.
2022-03-14 18:14:53 -07:00
bunnei
cbf7c2eb40
core: hle: kernel: k_memory_layout: Update kernel slab memory sizes.
2022-03-14 18:14:53 -07:00
bunnei
33c5eca64c
core: hle: kernel: svc_types: Add ThreadLocalRegionSize.
2022-03-14 18:14:53 -07:00
bunnei
bb2c956cf9
core: hle: kernel: k_condition_variable: Update to reflect tree changes.
2022-03-14 18:14:53 -07:00
bunnei
075ae485b1
core: hle: kernel: k_address_arbiter: Update to reflect tree changes.
2022-03-14 18:14:53 -07:00
bunnei
492b983af4
common: tree: Various updates.
2022-03-14 18:14:53 -07:00
bunnei
3a7ac3cb72
common: intrusive_red_black_tree: Various updates.
2022-03-14 18:14:53 -07:00
Liam
8515dba789
shader: add support for const buffer indirect addressing
2022-03-14 19:43:32 -04:00
ameerj
fc50392101
maxwell_3d: Implement a safer CB data upload
...
This makes constant buffer uploads safer and more accurate by updating the GPU memory as soon as the CB Data method is invoked. The previous implementation was deferring the updates until a different maxwell 3d method was detected, then writing all CB data at once.
2022-03-14 19:18:36 -04:00
Fernando S
1077f95f7c
Merge pull request #8008 from ameerj/rescale-offsets-array
...
rescaling_pass: Fix rescaling Color2DArray ImageFetch offsets
2022-03-15 00:08:22 +01:00
Fernando S
ad660f91ed
Merge pull request #8000 from liamwhite/hagi
...
Initial support for Wii Hagi emulator
2022-03-15 00:08:05 +01:00
bunnei
52db7331df
Merge pull request #8015 from FernandoS27/fix-global-mem
...
Shader decompiler: Fix storage tracking in deko3d.
2022-03-14 16:03:23 -07:00
byte[]
7c081ca937
Maxwell3D: Link to override constant definition in nouveau
2022-03-14 11:06:25 -04:00
Fernando S
756fbb7ad7
Merge pull request #8016 from merryhime/kill-mem-use
...
dynarmic: Reduce size of code caches
2022-03-14 16:04:46 +01:00
byte[]
2f745c6c00
Maxwell3D: restore original topology when topology overrides are disabled
2022-03-14 11:00:08 -04:00
Liam
6202688c91
Maxwell3D: Use override constants from nouveau
...
This fixes some incorrect rendering in Sunshine
2022-03-14 10:11:58 -04:00
Merry
eb30b2382a
dynarmic: Reduce size of code caches
2022-03-13 22:17:14 +00:00
Fernando Sahmkow
05054d1dc2
Shader decompiler: do constant propgation before texture pass.
2022-03-13 21:49:40 +01:00
Fernando Sahmkow
fc8251e043
Shader decompiler: Fix storage tracking in deko3d.
2022-03-13 17:41:16 +01:00
bunnei
c7c318b73a
Merge pull request #8007 from ameerj/vs-2022-errors
...
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
2022-03-13 03:43:06 -07:00
ameerj
4a525deb87
config: Write dynarmic exclusive memory configs
...
Ensures the configs are written and saved between boots
2022-03-12 03:42:50 -05:00
ameerj
1888b552e3
rescaling_pass: Fix rescaling Color2DArray ImageFetch offsets
...
ImageFetch offsets for 2D array coordinates have a different composite size than the coordinates. The rescaling pass was not taking this into account.
Fixes broken shaders when scaling is enabled in Astral Chain, and likely other titles.
2022-03-12 03:31:56 -05:00
ameerj
048522e98b
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
2022-03-12 02:54:33 -05:00
Liam
db6b7f70b7
Maxwell3D: Restrict topology override effect to after the register is set
2022-03-11 19:42:12 -05:00
Wunkolo
c802f8fbd2
cpu_detect: Add additional x86 flags and telemetry
...
Adds detection of additional CPU flags to cpu_detect and additions to telemetry output.
This is not exhaustive but guided by features that [dynarmic utilizes](bcfe377aaa/src/dynarmic/backend/x64/host_feature.h (L12-L33) ) as well as features that are currently utilized but not reported to telemetry(invariant_tsc). This is intended to guide future optimizations.
AVX512 in particular is broken up into its individual subsets and some other processor features such as [sha](https://en.wikipedia.org/wiki/Intel_SHA_extensions ) and [gfni](https://en.wikipedia.org/wiki/AVX-512#GFNI ) are added to have some forward-facing data-points.
What used to be a single `CPU_Extension_x64_AVX512` telemetry field
is also broken up into individual `CPU_Extension_x64_AVX512{F,VL,CD,...}` fields.
2022-03-11 10:27:00 -08:00
Wunkolo
21ccb35705
common/telemetry: Update `AddField` name type to `string_view`
...
Non-owning `string_view` is flexable and
avoids some of the many redundant copies made over `std::string`
2022-03-11 10:26:59 -08:00
Liam
61e810ba10
Maxwell3D: mark index buffers as dirty after updating counts
2022-03-11 08:51:22 -05:00
Liam
0a1d21d82e
TextureCacheRuntime: allow converting D24S8 to ABGR8
...
I can't see how this would be useful, but Galaxy uses it.
2022-03-10 20:25:34 -05:00
Liam
de42319556
Maxwell3D: read small-index draw and primitive topology override registers
...
This allows Galaxy and Sunshine to render for the first time.
2022-03-10 19:21:04 -05:00
Merry
a993e93abd
backend: Ensure backend_thread is destructed before message_queue
...
Ensures that stop_token signals that stop has been requested before destruction of conditional_variable
2022-03-10 10:49:15 +00:00
Wunkolo
7cb99ccf23
cpu_detect: Revert `__cpuid{ex}` array-type argument
...
Restores compatibility with MSVC's `__cpuid` intrinsic.
2022-03-09 19:50:01 -08:00
Wunkolo
b603adb6ac
cpu_detect: Add missing `lzcnt` detection
2022-03-09 13:57:47 -08:00
Wunkolo
4aa5b5779b
cpu_detect: Refactor cpu/manufacturer identification
...
Set the zero-enum value to Unknown
Move the Manufacterer enum into the CPUCaps structure namespace
Add "ParseManufacturer" utility-function
Fix cpu/brand string buffer sizes(!)
2022-03-09 13:57:47 -08:00
Wunkolo
14618c0e98
cpu_detect: Update array-types to `span` and `array`
...
Update some uses of `int` into some more explicitly sized types as well
2022-03-09 13:57:47 -08:00
Wunkolo
609c64196b
cpu_detect: Utilize `Bit<N>` utility function
2022-03-09 13:57:47 -08:00
Wunkolo
31f8d6f0cf
cpu_detect: Compact capability fields
...
As this structure gets more explicit, bools can be bitfields and
small enums can use smaller types for their span of values.
2022-03-09 13:57:47 -08:00
Wunkolo
fbf00e7fbc
bit_util: Add `bit` utility function
...
Extracts a singular bit, as a bool, from the specified compile-time index.
2022-03-09 13:57:47 -08:00
bunnei
86eaedbf19
hle: service: ldr: Use deterministic addresses when mapping NROs.
...
- Instead of randomization, choose in-order addresses for where to map NROs into memory.
- This results in predictable behavior when debugging and consistent behavior when reproducing issues.
2022-03-08 17:38:20 -08:00
bunnei
d1aae938a9
Merge pull request #7986 from lat9nq/vk-callback
...
core, video_core: Fix two crashes when failing to create the emulated GPU instance
2022-03-08 12:36:57 -08:00
Markus Wick
062d95753f
shader_recompiler/LOP3: Use brute force python results within switch/case.
...
Thanks to @asLody for optimizing this function. This raised the focus that this function should be optimized more.
The current table assumes that the host GPU is able to invert for free, so only AND,OR,XOR are accumulated in the performance metrik.
Performance results:
Instructions
0: 8
1: 30
2: 114
3: 80
4: 24
Latency
0: 8
1: 30
2: 194
3: 24
2022-03-08 09:44:28 +01:00
bunnei
9dd48f8f89
hle: kernel: KPageTable: Improve implementations of MapCodeMemory and UnmapCodeMemory.
...
- This makes these functions more accurate to the real HOS implementations.
- Fixes memory access issues in Super Smash Bros. Ultimate that occur when un/mapping NROs.
2022-03-07 17:18:20 -08:00
lat9nq
173ddc9e6b
video_core: Cancel Scoped's exit call on GPU failure
...
When CreateRenderer fails, the GraphicsContext that was std::move'd into
it is destroyed before the Scoped that was created to manage its
currency. In that case, the GraphicsContext::Scoped will still call its
destructor at the ending of the function. And because the context is
destroyed, the Scoped will cause a crash as it attempts to call a
destroyed object's DoneCurrent function.
Since we know when the call would be invalid, call the Scoped's Cancel
method. This prevents it from calling a method on a destroyed object.
2022-03-07 18:21:56 -05:00
lat9nq
e3f8340bec
emu_window: Create a way to Cancel the exit of a Scoped
...
If a GraphicsContext is destroyed before its Scoped is destroyed, this
causes a crash as the Scoped tries to call a method in the destroyed
context on exit.
Add a way to Cancel the call when we know that calling the
GraphicsContext will not work.
2022-03-07 18:21:56 -05:00
Fernando S
3e2bc9e813
Merge pull request #7930 from asLody/dma-semaphore
...
MaxwellDMA: Implement semaphore operations
2022-03-07 21:53:38 +01:00
lat9nq
7df809b8b1
core: Don't shutdown a null GPU
...
When CreateGPU fails, yuzu would try and shutdown the GPU instance
regardless of whether any instance was actually created.
Check for nullptr before calling its methods to prevent a crash.
2022-03-07 15:25:20 -05:00
Lody
3ec2e46e15
MaxwellDMA: Implement semaphore operations
2022-03-07 13:46:18 +08:00
Ameer J
7d636e10d7
gl_graphics_pipeline: Improve shader builder synchronization using fences ( #7969 )
...
* gl_graphics_pipeline: Improve shader builder synchronization
Make use of GLsync objects to ensure better synchronization between shader builder threads and the main context
* gl_graphics_pipeline: Make built_fence access threadsafe
* gl_graphics_pipeline: Use GLsync objects only when building in parallel
* gl_graphics_pipeline: Replace GetSync calls with non-blocking waits
The spec states that a ClientWait on a Fence object ensures the changes propagate to the calling context
2022-03-06 16:46:49 +01:00
BytesGalore
d97faa768c
Merge branch 'yuzu-emu:master' into master
2022-03-06 11:38:18 +01:00
Fernando S
bc96f67ce1
Merge pull request #7973 from Morph1984/debug-crash
...
host_memory: Fix fastmem crashes in debug builds
2022-03-06 04:49:27 +01:00
BytesGalore
8f530cbb09
loader: log the type of mismatching file-extension
2022-03-03 06:45:13 +01:00
bunnei
9d25f5409d
Merge pull request #7935 from Wunkolo/logging-join-fix
...
logging: Convert `backend_thread` into an `std::jthread`
2022-03-02 19:09:26 -08:00
bunnei
ae301a650e
Merge pull request #7956 from bunnei/improve-mem-manager
...
Kernel Memory Updates (Part 4): Revamp KMemoryManager & other fixes
2022-03-02 17:55:51 -08:00
Morph
5ea520a149
host_memory: Fix fastmem crashes in debug builds
...
It is possible for virtual_offset to not be 0 when the iterator is at the beginning, and thus, std::prev(it) may be evaluated, leading to a crash in debug mode.
Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com>
2022-03-02 18:36:59 -05:00
Fernando S
a4a6aa4b33
Merge pull request #7959 from merryhime/cmpxchg
...
dynarmic: Inline exclusive memory accesses
2022-03-01 22:50:52 +01:00
german77
9188dfafc4
applet: mii: Simple implementation of mii applet
2022-02-28 18:53:41 -06:00
bunnei
82ca8230ad
hle: kernel: Re-create memory layout at initialization.
...
- As this can only be derived once.
2022-02-27 18:00:09 -08:00
bunnei
41c9c93736
hle: kernel: Remove unused pool locals.
2022-02-27 18:00:09 -08:00
bunnei
939707cf75
hle: kernel: k_memory_manager: Rework for latest kernel behavior.
...
- Updates the KMemoryManager implementation against latest documentation.
- Reworks KMemoryLayout to be accessed throughout the kernel.
- Fixes an issue with pool sizes being incorrectly reported.
2022-02-27 18:00:09 -08:00
Wunkolo
8da42d8235
logging: Convert `backend_thread` into an `std::jthread`
...
Was getting an unhandled `invalid_argument` [exception](https://en.cppreference.com/w/cpp/thread/thread/join ) during
shutdown on my linux machine. This removes the need for a `StopBackendThread` function entirely since `jthread`
[automatically handles both checking if the thread is joinable and stopping the token before attempting to join](https://en.cppreference.com/w/cpp/thread/jthread/~jthread ) in the case that `StartBackendThread` was never called.
2022-02-27 16:23:52 -08:00
ameerj
51d9a43dad
gl_fence_manager: Minor optimization to signal querying
...
Per the spec, bufSize is the number of integers that will be written, in this case, 1.
Also, the length argument is optional if the information of the number of elements written is not needed.
2022-02-27 17:57:33 -05:00
merry
3fe2c2d40d
dynarmic: Inline exclusive memory accesses
...
Inlines implementation of exclusive instructions into JITted code,
improving performance of applications relying heavily on these
instructions.
We also fastmem these instructions for additional speed, with
support for appropriate recompilation on fastmem failure.
An unsafe optimization to disable the intercore global_monitor is also
provided, should one wish to rely solely on cmpxchg semantics for
safety.
See also: merryhime/dynarmic#664
2022-02-27 19:40:05 +00:00
bunnei
d780096c3c
hle: kernel: k_page_heap: GetPhysicalAddr can be const.
2022-02-27 10:34:02 -08:00
bunnei
00d395c330
hle: kernel: k_page_heap: Remove superfluous consexpr.
2022-02-27 10:34:02 -08:00
bunnei
3f129b2700
hle: kernel: k_page_heap: Various updates and improvements.
...
- KPageHeap tracks physical addresses, not virtual addresses.
- Various updates and improvements to match latest documentation for this type.
2022-02-27 10:34:02 -08:00
bunnei
8ef7b10f92
hle: kernel: Add initial_process.h header.
2022-02-27 10:34:02 -08:00
bunnei
75b111b6de
hle: kernel: board: nx: Add k_memory_layout.h header.
2022-02-27 10:34:02 -08:00
bunnei
99acfba11f
hle: kernel: k_system_control: Add GetRealMemorySize and update GetKernelPhysicalBaseAddress.
2022-02-27 10:34:02 -08:00
bunnei
f562f3780e
hle: kernel: k_memory_layout: Add GetPhysicalLinearRegion.
2022-02-27 10:34:02 -08:00
bunnei
a48d756692
hle: kernel: k_memory_region_types: Update for new regions.
2022-02-27 10:34:02 -08:00
bunnei
2bbcc3d1c4
Merge pull request #7932 from bunnei/extended-mem-layout
...
Add extended memory layout (6GB) support and improve KResourceLimit management
2022-02-26 01:41:08 -08:00
bunnei
254c8f1736
Merge pull request #7953 from ameerj/radv-rdna2-crash
...
vulkan_device: Blacklist RADV on RDNA2 from VK_EXT_vertex_input_dynamic_state
2022-02-26 01:19:13 -08:00
Mai M
18ea863757
Merge pull request #7948 from Morph1984/11-11-10-float
...
maxwell_to_(gl/vk): Add 11_11_10 float vertex format
2022-02-26 00:09:44 -05:00
Ameer J
f4c97f7410
vulkan_device: Blacklist RADV on RDNA2 from VK_EXT_vertex_input_dynamic_state
...
RDNA2 devices running under the RADV driver were crashing when VK_EXT_vertex_input_dynamic_state was enabled.
Blacklisting these devices until a proper fix is established.
2022-02-25 23:09:03 -05:00
Morph
77514a45a6
maxwell_to_(gl/vk): Add 11_11_10 float vertex format
...
- Used by パワプロクンポケットR
2022-02-25 17:11:17 -05:00
bunnei
2e31f86cd6
Merge pull request #7939 from asLody/fb-format-gbra8
...
vk_blit_screen: Add missing framebuffer format
2022-02-25 00:58:28 -08:00
bunnei
41c3c5fb86
Merge pull request #7927 from german77/amiibo
...
yuzu: Disconnect amiibos on drag and drop
2022-02-24 23:13:32 -08:00
bunnei
8c3f50e6bc
Merge pull request #7859 from german77/battery_again
...
input_common: Remove battery duplicated struct and update every button press
2022-02-24 11:42:51 -08:00
Lody
d2369dc3a3
vk_blit_screen: Add missing format bgra8
2022-02-24 19:25:39 +08:00
Narr the Reg
273b9b5772
service: am: Update enum names to match documentation
2022-02-21 18:00:50 -06:00
bunnei
005debed1e
Merge pull request #7913 from voidanix/anv-fix
...
vulkan_device: fix missing format in ANV
2022-02-21 14:34:27 -07:00
bunnei
d3198bb960
hle: kernel: KSystemControl: Use 6GB memory layout when "use_extended_memory_layout" setting is enabled.
...
- This uses a larger 6GB DRAM memory layout, which is useful for some mods that require more memory.
2022-02-21 13:07:19 -08:00
bunnei
b928936457
core: device_memory: Use memory size reported by KSystemControl.
...
- That way, we can consolidate the memory layout to one place.
2022-02-21 13:07:19 -08:00
bunnei
5dc4c92dc2
settings: Add a new "use_extended_memory_layout" setting.
...
- This will be used to enable emulation of a larger memory arrangement.
2022-02-21 13:07:19 -08:00
bunnei
f2cc07cc2c
core: hle: kernel: Remove resource limit hack for PhysicalMemory.
...
- With prior changes, we now report the correct amount of physical memory available to the emulated process.
2022-02-21 12:41:31 -08:00
bunnei
09adf10025
core: hle: kernel: KProcess: Pass in KResourceLimit on process creation.
...
- This allows us to have a resource limit per process, rather than use the global system resource limit.
2022-02-21 12:41:31 -08:00
bunnei
64ae76bff6
core: hle: kernel: KEvent: Pass in owner KProcess on event creation.
...
- This is necessary to ensure resource limits are freed from the right process.
2022-02-21 12:41:06 -08:00
bunnei
fe48c772e9
core: hle: kernel: KResourceLimit: Add a helper function for creating a KResourceLimit for a process.
2022-02-21 12:40:09 -08:00
bunnei
0e50d2914a
Merge pull request #7919 from bunnei/phys-mem-updates
...
core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
2022-02-21 13:39:05 -07:00
bunnei
0b8e6347ee
Merge pull request #7920 from bunnei/fix-unmap-pages
...
core: hle: kernel: KPageTable: Fix UnmapPages.
2022-02-21 13:38:52 -07:00
voidanix
9891701985
vulkan_device: fix missing format in ANV
...
Currently Mesa's ANV driver does not support
VK_FORMAT_B5G6R5_UNORM_PACK16, implement an alternative for it.
2022-02-21 09:21:41 +01:00
german77
bd81e74f2a
yuzu: Remove amiibos on drag and drop
2022-02-20 14:28:21 -06:00
bunnei
e1af26d5b3
fixup! core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
2022-02-19 00:14:27 -08:00
bunnei
5e81f38950
Merge pull request #7867 from german77/amiibo
...
nfp: Improve amiibo support
2022-02-19 00:57:47 -07:00
bunnei
eb65836f69
core: hle: kernel: KPageTable: Fix UnmapPages.
...
- Fixes a logic bug in KPageTable::UnmapPages.
2022-02-18 23:48:16 -08:00
bunnei
6075031e99
core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
...
- Improves the implementations of MapPhysicalMemory and UnmapPhysicalMemory to more closely reflect latest HOS.
2022-02-18 23:42:27 -08:00
bunnei
c792b21b68
Merge pull request #7900 from german77/enter
...
yuzu: config: Fix mapping issues with the enter key
2022-02-18 15:47:34 -07:00
Wunkolo
fe8b240a39
common: Add NullVisitor default constructor
...
Addresses https://github.com/yuzu-emu/yuzu/issues/7881 to fix linux
builds.
`YUZU_NON_COPYABLE` deletes the `T(const T&)` constructor which will
cause the implicitly defined default ctor/dtor to no-longer generate.
2022-02-17 06:28:19 -08:00
Mai M
53f6a61ff8
Merge pull request #7866 from xerpi/svc-OutputDebugString32-CreateCodeMemory32-ControlCodeMemory32
...
kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32
2022-02-16 22:49:56 -05:00
bunnei
3f85da2231
Merge pull request #7878 from german77/mnpp
...
service/mnpp: Stub mnpp_app
2022-02-16 18:42:49 -07:00
Morph
754fde3c90
Merge pull request #7899 from Kelebek1/test
...
file_sys: Dump patched exefs rather than base
2022-02-16 16:37:09 -05:00
bunnei
7859ee2811
Merge pull request #7877 from lat9nq/upd_rev
...
audio_core: Update current process revision
2022-02-15 13:08:40 -07:00
bunnei
472d4fe033
Merge pull request #7891 from Morph1984/buffer_to_string_view
...
common: fs_util: Add buffer to string view utility functions
2022-02-15 12:02:23 -07:00
Narr the Reg
10a0790ce5
yuzu: config: Fix mapping issues with the enter key
2022-02-15 11:08:11 -06:00
Kelebek1
9ae0aaed6a
Dump patched exefs rather than base
2022-02-15 04:52:28 +00:00
Sergi Granell
dbfe017c9f
kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32
...
Very straightforward, they are just wrappers to the 64-bit version of
the SVC.
2022-02-15 00:45:19 +01:00
bunnei
7cecfa8369
Merge pull request #7871 from german77/svc2
...
svc: Set unique names for function tables
2022-02-14 16:32:54 -07:00
Morph
0d71098873
common: fs_util: Add buffer to string view utility functions
...
These functions allow to construct a string view from an input buffer, avoiding the copy done by the non string view counterparts. However, callers must be cognizant of the viewed buffer's lifetime to avoid a use-after-free.
2022-02-13 18:53:21 -05:00
Morph
c1a3ce985f
debugger: console: Set console output codepage to UTF-8
...
This allows the console to display multi-byte encoded characters.
2022-02-13 18:18:05 -05:00
german77
c2942fa5c3
nfp: Allow files without password data
2022-02-13 13:52:34 -06:00
lat9nq
558fef2464
program_metadata: Unpack FileAccessHeader and FileAccessControl
...
Avoids a reference binding to a misaligned addresses. Unpacking one
requires unpacking the other, otherwise there'll be a misaligned address
on the leftover one.
2022-02-13 02:20:56 -05:00
lat9nq
94dec8e568
hid: Stub IsUsbFullKeyControllerEnabled
...
Used by Splatoon 2, when opening the inventory from a LAN battle lobby.
Reference: https://switchbrew.org/wiki/HID_services
2022-02-12 15:42:50 -05:00
lat9nq
022e1edd24
audio_core: Update current process revision
...
Update CURRENT_PROCESS_REVISION from REV9 to REVA.
Used by Nintendo Entertainment System - Nintendo Switch Online 6.0.0 and
Super Nintendo Entertainment System - Nintendo Switch Online 3.0.0.
2022-02-11 00:56:13 -05:00
bunnei
fa8505dfbb
Merge pull request #7852 from Morph1984/new-uuid
...
common: Revise and fix the UUID implementation
2022-02-10 21:52:13 -07:00
Narr the Reg
4eef3a0cde
service/mnpp: Stub mnpp_app
...
Used in Super Nintendo Entertainment System™ - Nintendo Switch Online
2022-02-10 21:55:28 -06:00
Morph
9429bb6222
common: uuid: Use sizeof(u64) instead of 8 in Hash()
2022-02-10 15:03:49 -05:00
bunnei
7c3ca94abd
Merge pull request #7861 from german77/user_features
...
yuzu: New hotkeys and mute audio on background
2022-02-10 10:06:58 -07:00
Narr the Reg
11680706a7
nfp: Separate nfc tag from amiibo data
2022-02-10 10:58:37 -06:00
bunnei
63427e11c8
Merge pull request #7860 from german77/no-more-drift
...
yuzu: Add auto center on right click
2022-02-09 17:52:39 -07:00
Narr the Reg
d5873beb51
svc: Set unique names for function tables
2022-02-08 21:03:31 -06:00
bunnei
c40b56b554
hle: kernel: KCodeMemory: Remove unused QueryMemory.
2022-02-08 18:49:41 -08:00
bunnei
9ab27ece86
hle: kernel: KCodeMemory: Correct m_page_group number of pages.
...
Credits to @xerpi for finding this issue and pointing it out on #7519 .
2022-02-08 18:47:11 -08:00
german77
f2b6837fb7
nfp: Address compiler issues
2022-02-08 18:52:44 -06:00
Narr the Reg
bb831fae3a
nfp: Validate amiibo files
2022-02-08 14:09:30 -06:00
german77
5fced43199
yuzu: Allow to open and remove the amiibo
2022-02-08 10:08:04 -06:00
german77
68ed8e2388
nfp: Improve implementation
2022-02-08 10:08:04 -06:00
german77
78aa2441d8
nfp: Move IUser class to header and add missing enum and structs
2022-02-07 09:18:22 -06:00
german77
2dba88f9fd
nfp: Sort functions by command number
2022-02-07 09:18:22 -06:00
german77
eb34318ded
yuzu: Mute audio when in background
2022-02-06 20:46:58 -06:00
german77
2e45a555b4
yuzu: Add docked, GPU accuracy and adapting filter hotkeys
2022-02-06 20:46:58 -06:00
german77
2ea4a2b74e
yuzu: Add auto center on right click
2022-02-06 19:56:03 -06:00
german77
75d96d5462
input_common: Remove battery duplicated struct and update every button press
2022-02-06 18:33:55 -06:00
Morph
58df24fdde
Merge pull request #7847 from tech-ticks/master
...
service: pm: Implement AtmosphereGetProcessInfo
2022-02-05 19:22:45 -05:00
Morph
7b50355561
Merge pull request #7851 from lat9nq/cmd-add-motion
...
yuzu-cmd: config: Support motion inputs
2022-02-05 19:22:18 -05:00
bunnei
ec3bd6ab14
Merge pull request #7849 from Morph1984/qt-frameless-window
...
main: Always remove the frameless window flag when restoring UI state
2022-02-05 15:18:48 -07:00
Morph
2d8d60bf9b
common: uuid: Return an invalid UUID if conversion from string fails
...
The string constructor of UUID states:
Should the input string not meet the above requirements, an assert will be triggered and an invalid UUID is set instead.
2022-02-05 13:56:21 -05:00
Morph
e47b5e6a26
general: Rename NewUUID to UUID, and remove the previous UUID impl
...
This completes the removal of the old UUID implementation.
2022-02-05 13:56:21 -05:00
Morph
26f74468c4
profile: Migrate to the new UUID implementation
2022-02-05 13:56:21 -05:00
Morph
ad33e58c2d
common: uuid: Add AsU128()
...
This copies the internal bytes of the UUID into a u128 for backwards compatibility. This should not be used.
2022-02-05 13:56:21 -05:00
Morph
4c1b4cc486
hle: ipc_helpers: Ignore -Wclass-memaccess
...
This warning is triggered by GCC when copying into non-trivially default constructible types, as it uses the more restrictive std::is_trivial (which includes std::is_trivially_default_constructible) to determine whether memcpy is safe instead of std::is_trivially_copyable.
2022-02-05 13:56:20 -05:00
Morph
da3c2dc90c
service: Migrate to the new UUID implementation
2022-02-05 13:18:46 -05:00
Morph
51c445f7e8
input/hid: Migrate to the new UUID implementation
2022-02-05 13:18:41 -05:00
Morph
77bc383079
common: Implement NewUUID
...
This is a fixed and revised implementation of UUID that uses an array of bytes as its internal representation of a UUID instead of a u128 (which was an array of 2 u64s).
In addition to this, the generation of RFC 4122 Version 4 compliant UUIDs is also implemented.
2022-02-05 13:18:31 -05:00
bunnei
ed18e4ecb3
Merge pull request #7842 from german77/vibration_test
...
yuzu: config: Vibrate the controller while configuring vibration strength
2022-02-05 02:57:26 -07:00
lat9nq
a4ad597ae2
config: Support motion inputs
...
Motion inputs were not being read in by the config when yuzu-cmd boots
up. This adds support for those.
While we're at it, make a reference to the current player controls to
improve readability. Also updates the if statements in the Analog and
Button loops with curly braces to keep the style consistent.
2022-02-05 02:31:55 -05:00
bunnei
5e4fcf041e
Merge pull request #7839 from german77/battery
...
yuzu: ui: Improve battery symbols
2022-02-04 18:23:35 -07:00
Morph
6015bce1e9
main: Always remove the frameless window flag when restoring UI state
...
For unknown reasons, this flag may persist after the application has been closed.
Removing this flag when restoring the UI state ensures that a frameless window will not be shown on startup.
2022-02-03 23:12:49 -05:00
Morph
3d13bb3105
input_common: Remove unused core include
2022-02-03 22:44:28 -05:00
tech-ticks
be026c6b6d
service: pm: Implement AtmosphereGetProcessInfo
2022-02-04 01:41:36 +01:00
bunnei
470b977171
Merge pull request #7811 from german77/analog-mod
...
input_common: Use attributes for analog range modifiers
2022-02-03 12:21:11 -07:00
bunnei
5bc49156c0
Merge pull request #7814 from FernandoS27/another-bug-in-my-schedule
...
Vulkan: Fix Scheduler Chunks when their FuncType is 0.
2022-02-02 19:15:06 -07:00
bunnei
d1c4e9be9b
Merge pull request #7835 from bunnei/page-table-lock
...
hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
2022-02-02 17:58:55 -07:00
Morph
c955ee1a30
Merge pull request #7838 from lioncash/noncopy
...
common_types: Remove NonCopyable struct
2022-02-02 16:04:26 -05:00
Narr the Reg
6b132458dc
yuzu: config: Vibrate the controller while configuring vibration strength
2022-02-02 14:54:24 -06:00
bunnei
d12eb9515f
Merge pull request #7834 from german77/repeat
...
yuzu: Disable auto repeat on hotkeys again
2022-02-02 13:20:18 -07:00
Lioncash
fd12153c52
texture_cache: Ensure has_blacklisted is always initialized
...
Resolves a -Wmaybe_uninitialized warning
2022-02-02 14:37:27 -05:00
Lioncash
6419acdd76
texture_cache: Remove dead code within SynchronizeAliases
...
Since these were being copied by value, none of the changes applied in
the loop would be reflected.
However, from the looks of it, this would already be applied within
CopyImage() anyways, so this can be removed.
2022-02-02 14:37:22 -05:00
Lioncash
1f4cc88d2a
texture_cache: Amend unintended bitwise OR in SynchronizeAliases
2022-02-02 14:20:58 -05:00
Narr the Reg
2198237e42
yuzu: ui: Improve battery symbols
2022-02-02 13:18:06 -06:00
Lioncash
45fd47ef0a
common_types: Remove NonCopyable struct
...
Now that we're moved over to the YUZU_ defines, we can get rid of this
struct.
2022-02-02 13:19:01 -05:00
Lioncash
8a509e5a2c
general: Replace NonCopyable struct with equivalents
2022-02-02 13:17:12 -05:00
bunnei
2452d02a56
Merge pull request #7806 from ameerj/atomic64-fallbacks
...
shaders: Implement U32x2 atomic fallbacks when device does not support int64
2022-02-02 10:57:22 -07:00
Lioncash
2c2e08df02
general: Move deleted copy/move constructor/assignment operators to public interface
...
This allows for better compiler errors, where the compiler will state a
copy or move couldn't occur due to the relevant function being deleted.
Previously a compiler would warn about the relevant function not being
accessible (which, while true, isn't as informative as it could be).
2022-02-02 12:17:08 -05:00
bunnei
32f861dd49
Merge pull request #7807 from german77/moar-buttons
...
input_common: Add home and hard touch press buttons to UDP controllers
2022-02-01 22:37:13 -07:00
bunnei
1552c524ad
hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
...
- More accurately reflects real kernel behavior by using guest locks.
2022-02-01 19:34:24 -08:00
Morph
c597d37bbf
Merge pull request #7833 from lioncash/file-sys
...
configure_filesystem: Add missing changeEvent() override
2022-02-01 22:15:37 -05:00
bunnei
05178d2498
Merge pull request #7792 from german77/translate
...
hotkeys: Don't translate hotkey buttons
2022-02-01 20:07:52 -07:00
Lioncash
1c24f14e58
configure_filesystem: Add missing changeEvent() override
...
This allows the dialog to be retranslated during runtime if the language
is changed.
2022-02-01 22:03:12 -05:00
Lioncash
54f3cb8186
configure_filesystem: Normalize member function casing
...
All other dialog types we have use CamelCase naming.
2022-02-01 22:01:22 -05:00
Narr the Reg
44c0ce539e
yuzu: Disable auto repeat on hotkeys again
2022-02-01 21:00:37 -06:00
bunnei
049cb89563
Merge pull request #7809 from Morph1984/clock-constants
...
common: wall_clock: Utilize constants for ms, us, and ns ratios
2022-02-01 18:34:31 -07:00
Morph
617bfe52cd
Merge pull request #7831 from lioncash/motion
...
configure_motion_touch: Use functor versions of invokeMethod
2022-02-01 14:48:52 -05:00
Lioncash
951785a17e
configure_motion_touch: Use functor versions of invokeMethod
...
Same behavior, but ensures that the functions we're calling exist, since
they can be checked at compile-time.
2022-02-01 13:22:42 -05:00
Lioncash
b4a7e150c7
configure_input_player: Eliminate variable shadowing
2022-02-01 12:54:00 -05:00
Lioncash
76c9d3318f
configure_input_player: std::move input setters in HandleClick
2022-02-01 12:51:03 -05:00
Lioncash
3379694d32
configure_input_player: Avoid unnecessary ParamPackage copies
...
Avoids churning allocations.
2022-02-01 12:20:23 -05:00
Lioncash
b68dc14188
yuzu/game_list: Use non-deprecated version of QString's split() function
...
The previous overload of split() was deprecated in 5.14.
2022-02-01 11:41:31 -05:00
Morph
4a668e6690
Merge pull request #7825 from lioncash/nodisc2
...
common/file: Remove [[nodiscard]] from Open()
2022-02-01 02:29:36 -05:00
Lioncash
765762c3a7
common/file: Remove [[nodiscard]] from Open()
...
Since this has a void return value, there's nothing that can actually be
used.
2022-02-01 02:19:21 -05:00
Morph
50e856cd48
Merge pull request #7824 from lioncash/scache
...
video_core/shader_cache: Take std::span in RemoveShadersFromStorage()
2022-02-01 01:58:38 -05:00
Lioncash
6f2a095c9f
video_core/shader_cache: Remove unused algorithm include
2022-02-01 01:41:05 -05:00
Lioncash
274babc929
video_core/shader_cache: Take std::span in RemoveShadersFromStorage()
...
Same behavior, but without the need to move into the function to avoid
an allocation.
2022-02-01 01:40:41 -05:00
bunnei
1f6b27e6f6
Merge pull request #7821 from german77/espada_aguda
...
svc: Add 32 bit SynchronizePreemptionState
2022-01-31 19:13:46 -07:00
Narr the Reg
33594225c7
svc: Add 32 bit SynchronizePreemptionState
...
Used by Espgaluda II
2022-01-31 19:02:41 -06:00
Fernando Sahmkow
9ebf1c00bd
Rasterizer: Refactor inlineToMemory.
2022-02-01 01:47:28 +01:00
Fernando Sahmkow
5df6c71472
Vulkan: Fix Scheduler Chunks when their FuncType is 0.
2022-01-31 17:08:08 +01:00
german77
e19f0654f9
input_common: Use attributes for analog range modifiers
2022-01-30 22:42:40 -06:00
Morph
3605b6f579
common: wall_clock: Check precision against the emulated CPU and CNTFRQ
...
In addition to requiring nanosecond precision, using the native clock requires that the hardware TSC has a precision greater than the emulated CPU and its clock counter.
2022-01-30 12:57:23 -05:00
Morph
fe2ff6b8a1
common: wall_clock: Utilize constants for ms, us, and ns ratios
2022-01-30 12:36:56 -05:00
german77
a2fe5dffa9
input_common: Add home and hard touch press buttons to UDP controllers
2022-01-30 09:17:22 -06:00
ameerj
092771e9c8
emit_glsl_atomic: Implement 32x2 fallback atomic ops
2022-01-29 19:56:03 -05:00
ameerj
94b86a8ada
lower_int64_to_int32: Add 64-bit atomic fallbacks
2022-01-29 19:56:02 -05:00
ameerj
0c5e641757
shaders: Add U64->U32x2 Atomic fallback functions
2022-01-29 19:55:53 -05:00
Fernando Sahmkow
d14f1c9d42
GPU: Improve syncing.
2022-01-29 23:02:04 +01:00
Fernando Sahmkow
19270ae4e6
Rasterizer: Implement Inline2Memory Acceleration.
2022-01-29 22:53:27 +01:00
Fernando Sahmkow
4a3a7673b7
Inline2Memory: Flush before writting buffer.
2022-01-29 17:42:28 +01:00
Morph
b7d23543b4
Merge pull request #7791 from german77/wall_clock
...
wall_clock: Use standard wall clock if rtsc frequency is too low
2022-01-28 20:04:24 -05:00
ameerj
c3d768426c
spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomics
...
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used.
Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus
2022-01-28 19:00:04 -05:00
Morph
5865d6f406
Merge pull request #7784 from german77/ds5
...
input_common: Add DS5 to HD rumble list
2022-01-28 18:36:28 -05:00
Morph
d45b236672
Merge pull request #7787 from bunnei/scheduler-deadlock-fix
...
hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock that has migrated.
2022-01-28 18:30:29 -05:00
Morph
c2e7d819b0
Merge pull request #7788 from ameerj/stream-buffer-begin
...
buffer_cache: Reduce stream buffer allocations when expanding from the left
2022-01-28 18:30:01 -05:00
Morph
693d982a0f
Merge pull request #7786 from ameerj/vmnmx-sel
...
video_minimum_maximum: Implement src operand selectors
2022-01-28 18:24:56 -05:00
ameerj
712b7883be
emit_spirv: Add Xfb execution mode when transform feedback is used
...
Fixes Transform Feedback on Vulkan AMD drivers.
2022-01-28 16:32:48 -05:00
bunnei
584eb04402
Merge pull request #7770 from german77/motion-threshold
...
input_common: Add option to configure gyro threshold
2022-01-27 15:44:04 -08:00
german77
f0b67c3ebb
hotkeys: Don't translate hotkey buttons
2022-01-27 17:32:48 -06:00
german77
c092488c53
wall_clock: use standard wall clock if rtsc frequency is too low
2022-01-27 17:07:52 -06:00
ameerj
9bffee169b
buffer_cache: Reduce stream buffer allocations when expanding from the left
...
The existing stream buffer optimization accounts for size increases at the end of the allocated buffer.
This adds the same optimization, increasing the size from the beginning of the buffer as well to reduce buffer allocations when expanding the same buffer from the left.
2022-01-27 15:31:43 -05:00
bunnei
1b8ed3a76d
hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock that has migrated.
...
- Previously, it was possible for a thread migration to occur from core A to core B.
- Next, core B waits on a guest lock that must be released by a thread queued for core A.
- Meanwhile, core A is still waiting on the core B's current thread lock - resulting in a deadlock.
- Fix this by try-locking the thread lock.
- Fixes softlocks in FF8 and Pokemon Legends Arceus.
2022-01-27 12:17:14 -08:00
ameerj
4ee80ce807
video_minimum_maximum: Implement src operand selectors
...
Used by Pokemon Legends: Arceus
2022-01-27 14:55:08 -05:00
Morph
6c0cc7303f
Merge pull request #7783 from lioncash/abi-cexpr
...
common/xbyak_api: Make BuildRegSet() constexpr
2022-01-27 10:29:34 -05:00
Narr the Reg
9ea465d958
input_common: Add DS5 to HD rumble list
2022-01-26 21:49:32 -06:00
bunnei
f73ced739a
Merge pull request #7762 from bunnei/un-map-improve
...
Kernel Memory Updates (Part 4): Improve Un/MapPages, and more.
2022-01-26 17:54:20 -08:00
Lioncash
1d5b635601
common/xbyak_api: Make BuildRegSet() constexpr
...
This allows us to eliminate any static constructors that would have been
emitted due to the function not being constexpr.
2022-01-26 16:29:15 -05:00
bunnei
aac2862552
Merge pull request #7780 from lioncash/macro
...
video_core/macro: Move impl classes into their cpp files
2022-01-26 12:39:59 -08:00
bunnei
e97a229325
Merge pull request #7769 from german77/no-control
...
yuzu: Add setting to disable controller navigation
2022-01-25 20:24:42 -08:00
bunnei
6f447d92e0
Merge pull request #7768 from Moonlacer/fsr-1.0.2
...
Update AMD FidelityFX Super Resolution™ to 1.0.2
2022-01-25 17:32:44 -08:00
Morph
73ce1de0fb
Merge pull request #7777 from lioncash/nodisc
...
shader_recompiler: Remove unnecessary [[nodiscard]] specifier
2022-01-25 16:16:20 -05:00
Morph
5c4f443aea
Merge pull request #7779 from lioncash/gpu-iface
...
gpu: Remove obsoleted CDmaPusher() accessors
2022-01-25 16:16:04 -05:00
Morph
1d2dd3256d
Merge pull request #7778 from lioncash/comma
...
vk_fsr: Replace comma operator with semicolon
2022-01-25 16:15:53 -05:00
Morph
6cf076534e
Merge pull request #7774 from lioncash/mapping
...
input_common/main: Pass MappingData by const reference in callbacks
2022-01-25 16:15:45 -05:00
Morph
af60a8be97
Merge pull request #7773 from lioncash/udp-deprecated
...
input_common/udp_client: Replace deprecated from_string()/to_ulong() functions
2022-01-25 16:15:27 -05:00
Morph
c2fd2c56e9
Merge pull request #7771 from lioncash/assert
...
kernel/k_affinity_mask: Remove duplicated assert
2022-01-25 16:15:18 -05:00
Lioncash
ebc41b3af6
video_core/macro: Add missing <cstring> header
...
Necessary since memcpy is used.
2022-01-25 14:10:02 -05:00
Lioncash
e7242491a4
video_core/macro_interpreter: Move impl class to the cpp file
...
Keeps the implementation hidden from the intended API and lessens the
header dependencies on the interpreter's header.
2022-01-25 14:03:48 -05:00
Lioncash
6950d969aa
video_core/macro_hle: Return unique_ptr directly from GetHLEProgram()
...
Same behavior, but less code and header dependencies.
2022-01-25 13:50:14 -05:00
Lioncash
65e617754f
video_core/macro: Remove unused parameter from Execute()
...
Simplifies the function interface.
2022-01-25 13:41:38 -05:00
Lioncash
791b988d07
video_core/macro_jit_x64: Remove unused impl class member
...
Reduces the size of the impl class a tiny bit.
2022-01-25 13:33:09 -05:00
Lioncash
9a802c7a09
video_core/macro_jit_x64: Decouple PersistentCallerSavedRegs() from impl
...
This doesn't depend on class state and can just be a regular function.
2022-01-25 13:31:54 -05:00
Lioncash
0b91a77ccc
video_core/macro_jit_x64: Move impl class into cpp file
...
Keeps the implementation internalized and also reduces API-facing header
dependencies.
Notably, this fully internalizes all of the xbyak externals.
2022-01-25 13:31:46 -05:00
Lioncash
e3025b8fb9
video_core/macro_hle: Move impl class into cpp file
...
Given it's intended to be an internal implementation class, we can move
it into the cpp file to ensure that.
This also lets us move some header dependencies into the cpp file as
well.
2022-01-25 13:15:48 -05:00
Lioncash
4d8010eee3
gpu: Tidy up forward declarations
...
Over time a few forward declarations became unnecessary, so we can
remove these to tidy up the header a little bit.
2022-01-25 13:05:39 -05:00
Lioncash
4c5c860587
gpu: Remove obsoleted CDMAPusher() accessors
...
These were obsoleted in 10cc89bfdf but
were accidentally overlooked.
2022-01-25 12:53:56 -05:00
Lioncash
4272d239b6
vk_fsr: Replace comma operator with semicolon
...
Generally, we should be ending statements with a semicolon not a comma
Resolves a clang diagnostic.
2022-01-25 12:42:27 -05:00
Lioncash
4ea21f074d
shader_recompiler: Remove unnecessary [[nodiscard]]
...
Since ConvertLegacyToGeneric has a void return value, there's nothing
that is actually returned by the function.
2022-01-25 12:16:09 -05:00
bunnei
c0fc95af47
Merge pull request #7765 from bunnei/update-thread-count
...
hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.
2022-01-24 18:58:48 -08:00
bunnei
387aa20884
Merge pull request #7760 from german77/inverted_keyboard
...
yuzu: Add modifiers for keyboard
2022-01-24 15:41:49 -08:00
Lioncash
18c2bd5c12
input_common/input_engine: Ensure PadIdentifier UUIDs have a valid initial state
...
The default constructor of a UUID instance doesn't initialize the
underlying array.
2022-01-24 11:57:48 -05:00
Lioncash
f02a9e4d81
input_common/input_mapping: Simplify UUID validity checks
...
Makes the checks a little more intuitive to read and doesn't construct
an extra UUID instance
2022-01-24 11:49:52 -05:00
Lioncash
04a33bc652
input_common/input_mapping: Add missing includes
...
Ensures that the class always sees the types it needs.
2022-01-24 11:49:31 -05:00
Lioncash
cec9e4ec77
input_common/input_mapping: Remove const from return value
...
Top-level const on a return by value can inhibit move semantics, and is
unnecessary.
2022-01-24 11:39:20 -05:00
Lioncash
5f80c764b0
input_common/input_mapping: Default constructor
2022-01-24 11:37:48 -05:00
Lioncash
1bd76dcb77
input_common/main: Pass MappingData by const reference in callbacks
...
Avoids creating unnecessary 168 byte copies per callback invocation.
2022-01-24 11:31:43 -05:00
Lioncash
feb5b56356
input_common/udp_client: Replace deprecated from_string()/to_ulong() functions
...
These are deprecated and make_address variants and to_uint() should be used instead.
2022-01-24 11:14:30 -05:00
Lioncash
de967b3967
input_common/udp_client: Prevent unnecessary string copies
...
We can also remove some redundant const on the return values, since
these don't do anything
2022-01-24 10:58:25 -05:00
Lioncash
1e57fbe71d
kernel/k_affinity_mask: Remove duplicated assert
...
This is already checked inside GetCoreBit()
2022-01-24 10:35:22 -05:00
german77
1fca7203d3
input_common: Add option to configure gyro threshold
2022-01-23 21:54:33 -06:00
german77
47ca44ad1d
yuzu: Add setting to disable controller navigation
2022-01-23 21:08:49 -06:00
Moonlacer
71ae167f3a
Update FSR to 1.0.2
...
Updates yuzu's FSR implementation to 1.0.2
2022-01-23 14:38:48 -06:00
bunnei
a2731424a6
hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.
...
- Previously implementation was incorrect, and would occasionally underflow.
2022-01-22 21:09:45 -08:00
bunnei
912b6b9ef4
core: hle: kernel: KPageTable: Various improvements to MapPages and UnmapPages.
2022-01-22 20:51:34 -08:00
bunnei
c46f07a62a
core: hle: kernel: KPageTable: MapProcessCode: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
4f848b6f68
core: hle: kernel: KPageTable: ReserveTransferMemory: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
bf904afa0f
core: hle: kernel: KPageTable: ResetTransferMemory: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
1b3dd42de4
core: hle: kernel: KPageTable: SetMemoryAttribute: Various cleanup.
2022-01-22 20:51:34 -08:00
bunnei
329741aaf6
Merge pull request #7716 from german77/volume
...
yuzu: Add volume hotkeys
2022-01-22 02:25:59 -08:00
bunnei
05918a20c3
core: hle: kernel: KPageTable: Assert valid address on GetPhysicalAddr.
2022-01-22 01:33:26 -08:00
bunnei
a8476d9db0
core: hle: kernel: KPageTable: Operate: Assert lock ownership.
2022-01-22 01:33:26 -08:00
bunnei
8f3c7cb89b
core: hle: kernel: KPageTable: SetHeapSize: Cleanup & take physical memory lock.
2022-01-22 01:33:26 -08:00
bunnei
24efadee60
core: hle: kernel: Refactor Un/MapPhysicalMemory to remove unnecessary methods.
2022-01-22 01:33:26 -08:00
bunnei
ebb9ec197e
core: hle: kernel: Rename Un/Map to Un/MapMeory.
2022-01-22 01:33:26 -08:00
bunnei
3ac7342b48
Merge pull request #7735 from german77/udp_battery
...
input_common: Report battery for UDP controllers
2022-01-22 01:28:14 -08:00
bunnei
7240568f00
Merge pull request #7737 from bunnei/fix-dummy-thread-leak
...
Various fixes to HLE service thread management
2022-01-21 22:34:47 -08:00
Narr the Reg
0a75c32ab8
yuzu: Add modifiers for keyboard
2022-01-21 20:41:50 -06:00
bunnei
606e643378
Merge pull request #7752 from Morph1984/SetCpuOverclockEnabled
...
service: apm: Stub ISession SetCpuOverclockEnabled
2022-01-21 17:13:52 -08:00
bunnei
b3f8d2491d
hle: kernel: KThread: Ensure host (dummy) threads block on locking.
...
- But do not enter the priority queue, as otherwise they will be scheduled.
- Allows dummy threads to use guest synchronization primitives.
2022-01-21 17:12:06 -08:00
Lioncash
46d9dc557c
service/wlan: Update function tables
2022-01-21 16:35:51 -05:00
Lioncash
3599c5f7c8
service/usb: Update function tables
2022-01-21 16:31:57 -05:00
Lioncash
50af00640b
service/set: Update function tables
2022-01-21 16:26:12 -05:00
Lioncash
114ce2ae13
service/ns: Update function tables
2022-01-21 16:21:35 -05:00
Lioncash
41f1cceefe
service/nim: Update unknown function table entries
2022-01-21 16:17:40 -05:00
Lioncash
cc5f02e0a5
service/friend: Update unknown function table entries
2022-01-21 16:08:46 -05:00
Lioncash
ee4adcada2
service/filsystem: Update fsp-srv function table
2022-01-21 16:07:01 -05:00
Lioncash
2495e8d6e1
service/btm: Update function tables
2022-01-21 15:59:41 -05:00
Lioncash
74a98a01de
service/audio: Update audctl unknown function names
2022-01-21 15:50:38 -05:00
Lioncash
aa0d0e91a0
service/am: Update omm function tables
2022-01-21 15:40:08 -05:00
Lioncash
1a50cb9468
service/acc: Update unknown function names
...
Switchbrew has the function names now.
2022-01-21 15:33:22 -05:00
bunnei
daa1ccd057
Merge pull request #7755 from v1993/someone-in-here-lacks-system-wide-theming
...
Use Default Colorful theme by default outside of Windows
2022-01-21 11:51:29 -08:00
bunnei
0bec1ea476
Merge pull request #7731 from v1993/xfb-varying-check-fix
...
shader_recompiler: fix potential OOB access
2022-01-21 10:45:56 -08:00
v1993
8117685e56
Use Default Colorful theme by default outside of Windows
...
On OSes with system-wide theming this allows yuzu to follow system style, regardless of its exact coloration, working well with both light and dark system themes. Dark /Colorful, on the other hand, forces dark theme regardless of user preferences set in system settings, making for a poor default.
Use Colorful variation to keep in line with icon style of patron-voted Dark Colorful.
2022-01-21 20:57:00 +03:00
Morph
00dc684fb0
service: apm: Stub ISession SetCpuOverclockEnabled
...
Since we don't currently support CPU overclocking within the emulated system, this can be stubbed for now, like APM IsCpuOverclockEnabled.
- Used by Gravity Rider Zero
2022-01-20 21:07:26 -05:00
bunnei
c6038643e0
Merge pull request #7695 from Morph1984/is-pow2
...
common: bit_util: Add IsPow2 helper function
2022-01-20 18:06:11 -08:00
bunnei
8f2630de0a
hle: kernel: Remove redundant tracking of dummy threads.
...
- These are already tracked by kernel's registered_objects member.
2022-01-20 17:08:00 -08:00
bunnei
f2e870d6b6
hle: kernel: KThread: DummyThread can be waited, ensure wait_queue is not nullptr.
2022-01-20 17:08:00 -08:00
bunnei
668af26696
hle: kernel: KThread: Decrease DummyThread priority to ensure it is never scheduled.
2022-01-20 17:08:00 -08:00
bunnei
db3c11506b
hle: kernel: service_thread: Ensure dummy thread is closed & destroyed on thread exit.
2022-01-20 17:08:00 -08:00
bunnei
e885b0ab0d
hle: kernel: KServerSession: Remove hack for CompleteSyncRequest.
...
- This does not appear to be necessary anymore.
2022-01-20 17:08:00 -08:00
bunnei
af11abed3f
hle: kernel: KServerSession: Simplify CompleteSyncRequest EndWait.
...
- Considering is_thread_waiting is never set, so we can remove IsThreadWaiting.
- KThread::EndWait will take the scheduler lock, so we can remove the redundant lock.
2022-01-20 17:08:00 -08:00
bunnei
247a7e2205
hle: kernel: KThread: Ensure dummy threads never call EndWait.
...
- These are only used by host threads for locking and will never have a wait_queue.
2022-01-20 17:08:00 -08:00
bunnei
f1e06f984d
hle: kernel: KScheduler: Ensure dummy threads are never scheduled.
...
- These are only used by host threads for locking.
2022-01-20 17:08:00 -08:00
bunnei
cc4cbff1ca
hle: kernel: KThread: Rename thread_type_for_debugging -> thread_type.
...
- This will be used to ensure that we do not schedule dummy threads.
2022-01-20 17:08:00 -08:00
bunnei
015c2dbd68
Merge pull request #7710 from german77/just-shake-it
...
core/hid: Increment shake force
2022-01-20 16:53:22 -08:00
Jan Beich
c2338f2f04
video_core: constify AVCodec for ffmpeg >= 5.0
...
src/video_core/command_classes/codecs/codec.cpp:177:16: error: assigning to 'AVCodec *' from 'const AVCodec *' discards qualifiers
av_codec = avcodec_find_decoder(codec);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
2022-01-20 11:09:21 +00:00
Morph
ac59980bd0
Merge pull request #7726 from german77/clamp
...
service/hid: Initialize applet_resource on SetNpadAnalogStickUseCenterClamp
2022-01-19 14:31:15 -08:00
german77
d678dfda6e
service/hid: Initialize applet_resource on SetNpadAnalogStickUseCenterClamp
2022-01-19 14:20:31 -06:00
Georg Lehmann
feb8a473ed
vulkan_device: Fix sType for VkPhysicalDeviceShaderAtomicInt64Features
2022-01-19 19:48:46 +01:00
bunnei
70b2b91f71
Merge pull request #7701 from bunnei/clear-mem-pages
...
Kernel Memory Updates (Part 3): Clear KMemoryManager pages & other fixes
2022-01-18 21:20:42 -08:00
bunnei
fd18ae4979
Merge pull request #7715 from gidoly/patch-4
...
Xbox controller default name nit pick
2022-01-18 21:14:30 -08:00
bunnei
94d7a0de6f
Merge pull request #7725 from german77/mouse_in_motion
...
input_common: Reintroduce motion from mouse and use button names
2022-01-18 18:16:27 -08:00
bunnei
74407b1348
Merge pull request #7712 from bunnei/fix-thread-exit
...
Accurately implement thread exit
2022-01-17 18:08:24 -08:00
bunnei
a361325864
Merge pull request #7724 from ameerj/astc_new_nv
...
astc_decoder: Combine FastReplicate functions to work around new NV driver bug
2022-01-17 16:48:04 -08:00
bunnei
4e3c9cdde6
Merge pull request #7732 from v1993/patch-7
...
kernel: remove no-op code
2022-01-17 15:37:16 -08:00
Narr the Reg
527a74f48b
input_common: Report battery for UDP controllers
2022-01-17 13:30:15 -06:00
v1993
970b362ca1
shader_recompiler: fix potential OOB access
...
Found by static analysis with PVS-Studio. Original check wasn't actually checking for OOB and would segfault in case of it.
2022-01-17 21:50:51 +03:00
Mai M
d3066b30ea
Merge pull request #7730 from v1993/patch-6
...
input_common: nitpick about SetHatButton usage
2022-01-17 13:43:34 -05:00
Mai M
624bb8bf26
Merge pull request #7729 from v1993/patch-5
...
input_common: fix copy-paste error
2022-01-17 13:43:21 -05:00
Mai M
2567283d86
Merge pull request #7728 from v1993/patch-4
...
hid: fix std::transform call
2022-01-17 13:43:11 -05:00
Mai M
5d84c5a2a9
Merge pull request #7727 from v1993/patch-3
...
hid: Correct assignment source for rotations
2022-01-17 13:42:57 -05:00
Valeri
01852ee857
hle: remove no-op code
...
Found by static analysis with PVS-Studio. Nobody seems to really know what was it doing there.
2022-01-17 13:51:12 +03:00
Valeri
ffc1f4df39
input_common: nitpick about SetHatButton usage
2022-01-17 12:04:38 +03:00
Valeri
e3ee079aa4
input_common: fix copy-paste error
...
Found by static analysis with PVS-Studio.
2022-01-17 11:31:38 +03:00
Valeri
8b3ea1258c
hid: fix std::transform call
...
Found by static analysis with PVS-Studio.
2022-01-17 10:47:38 +03:00
Morph
7721ca7ee7
uisettings: Add enumeration type for themes
...
Eliminates the usage of a magic number to indicate the default index of the themes array,
2022-01-17 02:46:30 -05:00
gidoly
f83f55b337
config: Change default theme to Dark Colorful
2022-01-17 02:41:53 -05:00
Valeri
347574b398
Correct assignment source for rotations
...
Found by static analysis with PVS-Studio
2022-01-17 10:40:41 +03:00
german77
991460cd98
input_common: Reintroduce motion from mouse and use button names
2022-01-16 20:37:34 -06:00
ameerj
09dc136a39
astc_decoder: Combine FastReplicate functions to work around new NV driver bug
...
The new Nvidia drivers have a bug where the FastReplicateTo6 function produces a lookup into the REPLICATE_TO_8 table rather than the REPLICATE_TO_6 table.
This seems to be an optimization gone wrong. Combining the logic of the FastReplicate functions seems to address the bug.
2022-01-16 16:13:20 -05:00
german77
c8364449df
audio/stream: Adjust volume scale factor
2022-01-15 20:28:37 -06:00
german77
a31c663398
yuzu: Add volume up/down hotkeys
2022-01-15 20:28:37 -06:00
gidoly
3465aa5d57
Xbox controller default name nit pick
...
Discord User moon lacer pointed us that official name is 'Xbox' not 'XBox'
2022-01-16 05:59:31 +09:00
german77
c5665f7289
yuzu: Remove speed limit hotkeys
2022-01-15 13:44:45 -06:00
bunnei
0e12a27299
Merge pull request #7713 from gidoly/patch-3
...
Change default name for playstation controllers
2022-01-15 02:39:58 -08:00
bunnei
d3702fe297
Merge pull request #7711 from bunnei/fix-service-thread-race-v2
...
hle: kernel: Fix service_threads access to be thread safe V2.
2022-01-14 22:22:39 -08:00
bunnei
4148fde355
hle: kernel: k_memory_manager: Clear pages on allocation & free.
...
- Heap pages should be zero'd.
- Also explicitly passed along heap allocation option.
2022-01-14 21:16:33 -08:00
gidoly
ede1976820
Change default name for ps controllers
...
Minor nitpick
Code is from narr
2022-01-15 10:29:42 +09:00
bunnei
d87fc832f4
Merge pull request #7707 from german77/slow-update
...
service/hid: Decrease motion update rate
2022-01-14 17:13:30 -08:00
bunnei
b52516263d
core: hle: kernel: KThread: Integrate with KWorkerTask and implement DoWorkerTaskImpl.
...
- This is used to terminate a thread asynchronously after it has been exited.
- This fixes a crash that can occur in Pokemon Sword/Shield because a thread is incorrectly closed on svcExitThread, then, the thread is destroyed on svcCloseHandle while it is still scheduled.
- Instead, we now wait for the thread to no longer be scheduled on all cores before destroying it from KWorkerTaskManager, which is accurate to HOS behavior.
2022-01-14 16:44:14 -08:00
bunnei
18969b5d8e
core: hle: kernel: KProcess: Integrate with KWorkerTask and add unimplemented DoWorkerTaskImpl.
2022-01-14 16:44:14 -08:00
bunnei
914431487b
core: hle: kernel: KThread: Replace Suspend with UpdateState & various updates.
...
- This makes our implementations of these more closely match HOS.
2022-01-14 16:44:14 -08:00
bunnei
b6bf119a43
core: hle: kernel: Instantiate a kernel instance of KWorkerTaskManager.
2022-01-14 16:44:14 -08:00
bunnei
b722faaf7a
core: hle: kernel: Add KWorkerTask and KWorkerTaskManager.
...
- These primitives are used to dispatch asynchronous kernel tasks from KThread and KProcess.
2022-01-14 16:43:59 -08:00
bunnei
b533a775d2
common: fiber: YieldTo: Avoid hard crash on nullptr previous_fiber.
...
- When the emulator crashes to desktop below, we don't even get this captured in a log, making such issues harder to debug.
2022-01-14 16:17:19 -08:00
bunnei
fbab3dc017
hle: kernel: Fix service_threads access to be thread safe V2.
...
- PR #7699 attempted to fix CreateServiceThread and ReleaseServiceThread to be thread safe, but inadvertently introduced a possible dead-lock.
- With this PR, we use a worker thread to manage the service thread list, allowing it only to be accessed by a single thread, and guaranteeing threads will not destroy themselves.
- Fixes a rare crash in Pokemon Sword/Shield, I've now run this game for ~12 hours non-stop and am quite confident this is a good solution for this issue.
2022-01-14 16:02:57 -08:00
Narr the Reg
f217849d21
core/hid: Increment shake force
...
With the current settings 2p mode in pokemon let's go wasn't showing up. By making the shake more violent we can make it appear without any effort using the keyboard
2022-01-14 11:11:20 -06:00
Mai M
8fb335ff3f
Merge pull request #7699 from bunnei/fix-service-thread-race
...
hle: kernel: Fix service_threads access to be thread safe.
2022-01-14 00:46:16 -05:00
Mai M
0872f9ff89
Merge pull request #7698 from bunnei/mem-code-memory-updates
...
Kernel Memory Updates (Part 2): SetProcessMemoryPermission, update permissions, and other minor changes.
2022-01-14 00:41:17 -05:00
bunnei
ef9186172f
hle: kernel: Fix service_threads access to be thread safe.
...
- CreateServiceThread and ReleaseServiceThread can be accessed by different threads, uses a lock to make this thread safe.
- Fixes a rare crash in Pokemon Sword/Shield that can occur when a new service thread is being created while an old one is being destroyed.
2022-01-13 21:26:10 -08:00
bunnei
a9c52fed60
Merge pull request #7690 from Morph1984/increase-file-limit-win
...
yuzu: main: Increase the open file limit on Windows to 8192
2022-01-13 21:25:06 -08:00