Commit graph

21762 commits

Author SHA1 Message Date
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
bunnei
9eed713a12 Merge pull request #8500 from liamwhite/poke
gdbstub: fix register pokes
2022-06-25 12:31:20 -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
Morph
49e8aef1ac Merge pull request #8455 from lat9nq/mingw-clang
ci/windows: Use Clang for MinGW builds
2022-06-21 20:21:13 -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
liamwhite
f4d876be3c Merge pull request #8487 from german77/system-button
service: am: Stub PerformSystemButtonPressingIfInFocus
2022-06-20 16:59:26 -04: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
Morph
527e3c1877 Merge pull request #8476 from liamwhite/gpu-wasnt-ready
core: fix initialization in single core, sync GPU mode
2022-06-17 03:08:15 -04:00
lat9nq
607fe38581 ci/windows: Build using Clang
Uses the MinGWClangCross toolchain script to build yuzu. Disables our
bundled SDL2 to use the system ones that have been modified to not use
`-mwindows`. Also set's `-e` to stop the script on an error (as opposed
to packaging nothing).

Uses LLVM's linker for linking yuzu. Adds -femulated-tls due to a
libstdc++ incompatibility between GCC and Clang in vulkan_common.
2022-06-16 23:57:39 -04:00
lat9nq
f1158d622c CMakeModules: Add MinGWClangCross
Facilitates what programs we need for cross-compiling to Windows from
Linux using LLVM's compilers. Based on MinGWCross
2022-06-16 23:57:39 -04:00
lat9nq
9dd5e3e9da ci/windows: Split up cmake command
Improves readability.
2022-06-16 23:57:39 -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
Morph
30a4b86d94 Merge pull request #8474 from DCNick3/yuzu-cmd-respect-log-filter
Make yuzu-cmd respect log_filter setting
2022-06-16 16:43:18 -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
liamwhite
7fe89bf205 Merge pull request #8473 from DCNick3/implement-exit-process
Implement ExitProcess svc
2022-06-16 15:45:02 -04: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