Morph
606cdb17d3
core_timing: Sleep in discrete intervals, yield during spin
2022-08-02 01:01:54 -04:00
Kelebek1
658e1ee426
Add missing looping event schedule signal
2022-08-02 01:01:54 -04:00
Kelebek1
83a24ad638
Make coretiming waiting more accurate
2022-08-02 01:01:54 -04:00
Kelebek1
9d3b190465
Rework multi-core vsync
2022-08-01 23:51:53 -04:00
lat9nq
260430c849
common: Use PROJECT_SOURCE_DIR to find CMakeModules
...
Fixes CMake configuration when yuzu is a submodule of another project.
2022-08-01 23:18:56 -04:00
Liam
00299479ab
core/loader: remove ELF loader
2022-08-01 17:19:23 -04:00
Andrea Pappacoda
adc8c03fe4
build(externals): rename Findopus to FindOpus
...
This better matches upstream's FindOpus.cmake file, and it will make
using upstream's FindOpus.cmake file easier.
2022-08-01 12:31:31 +02:00
bunnei
5ae0e5ba67
Merge pull request #8678 from liamwhite/stop-waiting
...
video_core: stop waiting for shader compilation on user cancel
2022-07-31 14:47:43 -07:00
bunnei
3bbc1cf64c
Merge pull request #8622 from liamwhite/progress
...
qt: reset progress bar after shader compilation
2022-07-31 14:46:38 -07:00
Nikita Strygin
1cf6f5c623
Properly write out the command buffer when serving close request
2022-07-31 23:17:45 +03:00
Morph
9dcfef744c
Merge pull request #8684 from liamwhite/delete-shader
...
renderer_opengl: delete shader source after linking
2022-07-30 21:36:26 -04:00
Liam
b9360681df
renderer_opengl: delete shader source after linking
2022-07-30 13:21:26 -04:00
Kyle Kienapfel
7e0afc641c
Translate english plurals
...
Turns out that for Qt to properly handle plurals in English a
translation needs to be provided, otherwise the user is left with
messages such as "Building: 2 shader(s)"
Plurals for other all other languages are handled on transifex.
I wrote the README.md to just refer to it as a translation
collaboration site just in case we ever switch.
These translations being out of date won't pose any technical problems
so I believe it is fine to handle them manually on a "best effort"
basis.
The files are generated into the source directory so that the
relative filenames are correct. The generated file is added to
.gitignore
2022-07-30 01:40:33 -07:00
Morph
f8a005e26e
Merge pull request #8664 from liamwhite/monkey-compiler-v12-1
...
common: move forwarded value into SPSCQueue
2022-07-30 03:24:23 -04:00
Liam
fc013d88cb
video_core: stop waiting for shader compilation on user cancel
2022-07-29 23:33:40 -04:00
Liam
73a87edc45
audio_core: fix -Wuninitialized when compiling with ASan
2022-07-29 23:30:01 -04:00
Liam
ec64a94954
common: move forwarded value into SPSCQueue
2022-07-29 15:41:57 -04:00
Kelebek1
f580946b0d
Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan.
2022-07-29 06:12:39 +01:00
bunnei
880006c5ca
Merge pull request #8656 from german77/audio-step
...
yuzu: Add incremental steps to volume hotkeys
2022-07-28 15:41:37 -07:00
liamwhite
e5615c4704
Merge pull request #8657 from Kelebek1/depop
...
[Audio] Avoid an out-of-bounds span write in depop prepare
2022-07-28 11:02:41 -04:00
Liam
cbe5b8a13e
video_core: differentiate between tiled and untiled framebuffer sizes for unaccelerated copies
2022-07-27 21:52:06 -04:00
Maide
2e46110379
Revert Coretiming PRs 8531 and 7454 ( #8591 )
2022-07-27 19:47:06 -04:00
snek
b7642cff36
implement pause on system suspend ( #8585 )
2022-07-27 19:46:03 -04:00
Kelebek1
6c47b43a60
Avoid depop out of bounds
2022-07-27 23:17:18 +01:00
liamwhite
ea861cc1c4
Merge pull request #8542 from Morph1984/gpu-use-old-q
...
gpu_thread: Use the previous MPSCQueue implementation
2022-07-27 15:55:28 -04:00
liamwhite
64fd9f41a7
Merge pull request #8636 from german77/irs_cluster_release
...
service: irs: Implement clustering processor
2022-07-27 15:54:28 -04:00
liamwhite
a761d020c6
Merge pull request #8633 from Morph1984/optional-keys
...
applet/swkbd: Implement optional symbol keys
2022-07-27 15:53:32 -04:00
snek
9479940a1f
Merge pull request #8592 from devsnek/sig-handlers
...
exit gracefully on sigint/sigterm
2022-07-27 15:51:26 -04:00
Narr the Reg
2fdefd7064
yuzu: Add incremental steps to volume hotkeys
2022-07-27 11:34:46 -05:00
Andrea Pappacoda
cdb240f3d4
chore: make yuzu REUSE compliant
...
[REUSE] is a specification that aims at making file copyright
information consistent, so that it can be both human and machine
readable. It basically requires that all files have a header containing
copyright and licensing information. When this isn't possible, like
when dealing with binary assets, generated files or embedded third-party
dependencies, it is permitted to insert copyright information in the
`.reuse/dep5` file.
Oh, and it also requires that all the licenses used in the project are
present in the `LICENSES` folder, that's why the diff is so huge.
This can be done automatically with `reuse download --all`.
The `reuse` tool also contains a handy subcommand that analyzes the
project and tells whether or not the project is (still) compliant,
`reuse lint`.
Following REUSE has a few advantages over the current approach:
- Copyright information is easy to access for users / downstream
- Files like `dist/license.md` do not need to exist anymore, as
`.reuse/dep5` is used instead
- `reuse lint` makes it easy to ensure that copyright information of
files like binary assets / images is always accurate and up to date
To add copyright information of files that didn't have it I looked up
who committed what and when, for each file. As yuzu contributors do not
have to sign a CLA or similar I couldn't assume that copyright ownership
was of the "yuzu Emulator Project", so I used the name and/or email of
the commit author instead.
[REUSE]: https://reuse.software
Follow-up to 01cf05bc75
2022-07-27 12:53:49 +02:00
FearlessTobi
a41baaa181
network: Address review comments
2022-07-25 21:59:31 +02:00
FearlessTobi
61ce57b524
network, yuzu: Make copyright headers SPDX-compliant
2022-07-25 21:59:31 +02:00
FearlessTobi
6a2dcc8b3d
network, yuzu: Improve variable naming and style consistency
2022-07-25 21:59:31 +02:00
FearlessTobi
6b5667dfa5
yuzu_cmd: Fix compilation
2022-07-25 21:59:31 +02:00
FearlessTobi
7d82e57b91
network: Move global state into a seperate class
...
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2022-07-25 21:59:31 +02:00
german77
899c8bb330
common: multiplayer: Use GameInfo type
2022-07-25 21:59:31 +02:00
FearlessTobi
4b404191cf
Address second part of review comments
2022-07-25 21:59:30 +02:00
FearlessTobi
6c8e456185
Address first part of review comments
2022-07-25 21:59:30 +02:00
FearlessTobi
ec407bd3f1
Fix compilation on linux gcc
2022-07-25 21:59:30 +02:00
FearlessTobi
ee5cb9c7b9
web_service: Fix -Wmissing-field-initializers
2022-07-25 21:59:30 +02:00
FearlessTobi
7fbd2916a1
core: Fix -Wunused-variable
2022-07-25 21:59:30 +02:00
FearlessTobi
7c3d241f0d
common, core: fix -Wmissing-field-initializers
2022-07-25 21:59:30 +02:00
FearlessTobi
1b36542be2
yuzu: Hide multiplayer button and room status
2022-07-25 21:59:30 +02:00
FearlessTobi
705f7db84d
yuzu: Add ui files for multiplayer rooms
2022-07-25 21:59:28 +02:00
FearlessTobi
dcfe0a5feb
network: Add initial files and enet dependency
2022-07-25 21:57:14 +02:00
bunnei
1bcde9dd98
Merge pull request #8564 from lat9nq/dinner-fork
...
yuzu: Streamline broken Vulkan handling
2022-07-25 12:12:41 -07:00
Narr the Reg
ceb70b2139
Address comments
2022-07-25 11:17:48 -05:00
Liam
6523854dd6
kernel: unlayer CPU interrupt handling
2022-07-25 12:14:15 -04:00
Morph
591d1f1b09
Merge pull request #8549 from liamwhite/kscheduler-sc
...
kernel: use KScheduler from Mesosphere
2022-07-25 12:00:31 -04:00
german77
21b1e9c21a
fix compiler errors
2022-07-24 16:39:32 -05:00
german77
3ac4f3a252
service: irs: Implement clustering processor
2022-07-24 15:01:43 -05:00
Liam
862142213f
qt: reset progress bar after shader compilation
2022-07-24 13:35:44 -04:00
Morph
d7d09355e7
qt_software_keyboard: Fix infinite loop when moving between buttons
...
There was a bug where, when using the numeric keyboard, moving between buttons resulted in an infinite loop, resulting in a stuck state.
This was due to prev_button being the only one enabled in that row or column, causing the condition in the while loop to always be true.
To fix this, detect whether we have returned to that initial row/column and break out of the loop.
2022-07-24 07:27:41 -04:00
Morph
bee823db3a
applet/swkbd: Implement optional symbol keys
...
These are only used in the numeric keyboard, and correspond to the keys to the left and right of the "0" key on the numeric keyboard.
2022-07-24 07:21:02 -04:00
Narr the Reg
403bdc4daf
yuzu: Add webcam support and rebase to latest master
2022-07-23 19:40:25 -05:00
german77
097785e19e
service: irs: Move to IRS namespace and minor fixes
2022-07-23 19:40:25 -05:00
german77
4539700595
service: irs: Split processors and implement ImageTransferProcessor
2022-07-23 19:40:25 -05:00
german77
57311b2c8b
core: hid: Add cammera support
2022-07-23 19:40:25 -05:00
german77
cc83e0a600
yuzu: Hook qt camera to camera driver
2022-07-23 19:40:21 -05:00
german77
f19e7be6e8
input_common: Add camera driver
2022-07-23 19:38:42 -05:00
liamwhite
97729fd8e9
Merge pull request #8545 from Kelebek1/Audio
...
Project Andio
2022-07-23 15:20:39 -04:00
bunnei
d60b0e8655
Merge pull request #8611 from liamwhite/fix-flatpak-crash
...
video_core: use correct byte size for framebuffer
2022-07-22 18:04:17 -07:00
lat9nq
4b93ea59db
ci,CMake: Drop Conan support for vcpkg
...
Between packages breaking, Conan always being a moving target for
minimum required CMake support, and now their moves to Conan 2.0 causing
existing packages to break, I suppose this was a long time coming. vcpkg
isn't without its drawbacks, but at the moment it seems easier on the
project to use for external packages.
Mostly removes the logic for Conan from the root CMakeLists file,
leaving basic find_package()'s in its place. Sets only the
find_package()'s that require CONFIG mode as necessary. clang and linux
CI now use the vcpkg toolchain file configured in the Docker container
when possible.
mingw CI turns off YUZU_TESTS because there's no way on the container to
run Windows executables on a Linux host anyway, and it's not easy to get
Catch2 there.
2022-07-22 20:54:00 -04:00
Kelebek1
458da8a948
Project Andio
2022-07-22 01:11:32 +01:00
bunnei
6e36f4d230
Merge pull request #8598 from Link4565/recv-dontwait
...
Enable the use of MSG_DONTWAIT flag on RecvImpl
2022-07-21 15:43:55 -07:00
Liam
382b41b18f
video_core: use correct byte size for framebuffer
2022-07-19 17:46:26 -04:00
Matías Locatti
6f9bfb10d3
Update configure_input.ui
2022-07-19 16:20:16 -03:00
Gus Caplan
742f67908c
implement resume message
2022-07-17 22:35:07 -07:00
merry
09300abe92
Merge pull request #8569 from merryhime/watchpoints
...
dynarmic: Abort watchpoints ASAP
2022-07-17 22:41:28 +01:00
bunnei
ba8ea95624
Merge pull request #8508 from yuzu-emu/mc-speed-limit
...
hle: service: nvflinger: Factor speed limit into frame time calculation.
2022-07-17 13:59:52 -07:00
bunnei
a5bdf824e6
Merge pull request #8544 from german77/14dot0
...
service: Update some services to 14.0.0+
2022-07-17 12:30:52 -07:00
bunnei
8ca8281f4f
Merge pull request #8543 from BreadFish64/use_tsc_from_caps
...
common/x64: Use TSC clock rate from CPUID when available
2022-07-16 23:14:38 -07:00
bunnei
6d160873c4
hle: service: nvflinger: Fix implicit conversion.
2022-07-16 23:11:42 -07:00
bunnei
02282477e7
yuzu: settings: Remove framerate cap and merge unlocked framerate setting.
...
- These were all somewhat redundant.
2022-07-16 23:11:39 -07:00
bunnei
f8aaa59990
hle: service: nvflinger: Factor speed limit into frame time calculation.
...
- This allows the %-based "Limit Speed Percent" setting to work with MC emulation.
- This is already supported for SC emulation.
2022-07-16 23:10:45 -07:00
bunnei
7d66f8339e
Merge pull request #8593 from merryhime/ranged-setting-T
...
common/setting: Make ranged a property of the type
2022-07-16 15:32:52 -07:00
bunnei
b8813edc51
Merge pull request #8594 from liamwhite/skip-wp
...
core/arm: skip watchpoint checks when reading instructions
2022-07-16 13:28:20 -07:00
bunnei
87bb44830b
Merge pull request #8511 from german77/hbmenu
...
service: ptm: Add TS, nifm: Stub GetInternetConnectionStatus
2022-07-16 11:30:56 -07:00
Link4565
912cae21b0
Enable the use of MSG_DONTWAIT flag on RecvImpl
2022-07-16 18:30:28 +01:00
bunnei
93a4ca11fa
Merge pull request #8560 from liamwhite/bitfield-may-alias
...
common: fix bitfield aliasing on GCC/Clang
2022-07-15 22:16:52 -07:00
Liam
a9a9999efd
core/arm: skip watchpoint checks when reading instructions
2022-07-15 19:47:28 -04:00
merry
99fbdaf75b
common/setting: Make ranged a property of the type
...
- Avoids new GCC 12 warnings when Type is of form std::optional<T>
- Makes more sense this way, because ranged is not a property which would change over time
2022-07-15 18:45:55 +01:00
Morph
d2c0b45bca
Merge pull request #8587 from merryhime/padding-unused
...
common_funcs: Mark padding as [[maybe_unused]]
2022-07-15 06:02:48 -04:00
Morph
8266f63130
Merge pull request #8588 from merryhime/IBinder-vdestruct
...
nvflinger: Polymorphic destructor requried for abstract class IBinder
2022-07-15 06:02:31 -04:00
Merry
a1d2fb314e
KCodeMemory: Mark virtual methods as override
2022-07-15 10:39:58 +01:00
Merry
914ead075e
common_funcs: Mark padding as [[maybe_unused]]
2022-07-15 10:34:38 +01:00
Merry
30b23fb7b8
nvflinger: Polymorphic destructor requried for abstract class IBinder
2022-07-15 10:28:54 +01:00
Merry
40e39ddd46
dynarmic: Abort watchpoints ASAP
2022-07-15 10:03:30 +01:00
Liam
a9a83fa726
kernel: Ensure all uses of disable_count are balanced
2022-07-14 22:47:18 -04:00
Liam
77137583cd
kernel: be more careful about initialization path for HLE threads
2022-07-14 22:47:18 -04:00
Liam
da07e13e07
kernel: fix single-core preemption points
2022-07-14 22:47:18 -04:00
Liam
21945ae127
kernel: fix issues with single core mode
2022-07-14 22:47:18 -04:00
Liam
0624c880bd
kernel: use KScheduler from mesosphere
2022-07-14 22:47:18 -04:00
liamwhite
2fed6dd7e1
Merge pull request #8536 from Morph1984/fix-webapplet-input
...
qt_web_browser: Fix button inputs with QtWebEngine
2022-07-14 20:41:41 -04:00
liamwhite
9627c550a0
Merge pull request #8510 from german77/vibration
...
input_common: sdl: lower vibration frequency and use it's own unique thread
2022-07-14 20:41:29 -04:00
german77
1584de951a
service: fatal: Add function table
2022-07-14 16:33:09 -05:00
german77
2535e9d1ec
service: btdrv,bcat,btm: Update service tables to 14.0.0
2022-07-14 16:33:09 -05:00
german77
8e0e2e95e6
service am: Update service tables to 14.0.0
2022-07-14 16:33:08 -05:00
german77
32b522b1fd
service: ac: Replace intances of ProfileData with UserData
2022-07-14 16:33:07 -05:00
lat9nq
7d9369d15e
startup_checks: Use WaitForSingleObject and more cleanup
2022-07-12 14:23:50 -04:00
bunnei
802bbb2263
Merge pull request #8559 from liamwhite/waiter-list
...
kernel: fix usage of waiter_list in Finalize
2022-07-11 12:10:01 -07:00
german77
18550b165b
core: hid: Add fallback for dualjoycon and pro controllers
2022-07-10 20:27:40 -05:00
lat9nq
2d2a69ab5b
startup_checks: Use GetEnvironmentVariableA
...
Solves MSVC compile error. Also drops need string use for comparison.
2022-07-10 20:24:37 -04:00
lat9nq
d57cd8bcdd
startup_checks: Clean up
...
Adds some comments, removes unused includes, and removes last bits of
logging since this is before the logging backend starts up.
2022-07-10 17:18:31 -04:00
lat9nq
fd4e48f96e
startup_checks: Implement unix side code
...
Wow fork() is nice, isn't it?
2022-07-10 17:01:37 -04:00
lat9nq
33abdfff9b
yuzu: Simplify broken Vulkan handling
2022-07-10 16:52:00 -04:00
lat9nq
4f15d9ed6f
yuzu: Check Vulkan on startup with a child
2022-07-10 14:08:20 -04:00
lat9nq
568a0ac397
yuzu: Rename check_vulkan to startup_checks
2022-07-10 12:34:34 -04:00
Fernando S
6c72b7f011
Merge pull request #8528 from Morph1984/astc10x6
...
renderer_(gl/vk): Implement ASTC_10x6_UNORM
2022-07-10 13:16:23 +02:00
Kelebek1
b23c6b456c
PR
2022-07-10 08:29:37 +01:00
Kelebek1
240650f6a6
Rework CoreTiming
2022-07-10 06:59:40 +01:00
liamwhite
c765d5be0b
Merge pull request #8531 from FernandoS27/core-timing-fix-reg
...
Core timing: use only one thread.
2022-07-10 00:47:05 -04:00
Liam
a1c1ad096d
common: fix bitfield aliasing on GCC/Clang
2022-07-09 22:43:45 -04:00
Liam
1611c53c12
kernel: fix usage of waiter_list in Finalize
2022-07-09 18:54:54 -04:00
Mai
313f047f97
Merge pull request #8501 from liamwhite/backtrace-again
...
core/arm: better support for backtrace generation
2022-07-07 23:49:54 -04:00
liamwhite
7e75593c20
Merge pull request #8502 from liamwhite/end-wait
...
kernel: clean up waiting implementation
2022-07-07 17:31:49 -04:00
Fernando S
d244677df9
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
ec4cba9de8
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
e71d457af9
guard against div-by-zero
2022-07-06 13:00:00 -05:00
Marshall Mohror
b2ad4dd189
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
fa09f7aa6c
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
cbef6b1fca
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
aec129c1ab
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
770611fdf3
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
07e3c56f0d
Merge pull request #8532 from liamwhite/fiber-supplements
...
common/fiber: make fibers easier to use
2022-07-05 18:20:39 -04:00
Morph
eb4ce48b65
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
40493231ed
CI: fix caching
2022-07-04 21:21:56 -06:00
Morph
908c79881b
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
d3cb9201f1
Core timing: use only one thread.
2022-07-02 23:02:16 +02:00
Liam
ed0319cfed
common/fiber: make fibers easier to use
2022-07-02 12:33:49 -04:00
Fernando S
3f3c2dc20f
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
78ce053b4d
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
2c1e2c63c3
cpu_manager: properly check idle on return from preemption
2022-06-30 16:54:05 -04:00
lat9nq
7b0affb6e0
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
ca36722a54
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
603952bc27
Merge pull request #7454 from FernandoS27/new-core-timing
...
Core: Remake Core Timing
2022-06-30 12:38:50 +02:00
Fernando Sahmkow
3196d957b0
Adress Feedback.
2022-06-30 10:18:56 +02:00
lat9nq
d41ffb592c
Revert "vulkan_device: Block AMDVLK's VK_KHR_push_descriptor"
2022-06-29 16:35:06 -04:00
german77
b38509b030
service: nifm: Stub GetInternetConnectionStatus
2022-06-28 19:22:46 -05:00
german77
c0264d2121
service: ptm: Rewrite PSM and add TS
2022-06-28 19:22:46 -05:00
german77
5e7e55b98a
input_common: sdl: lower vibration frequency and use it's own unique thread
2022-06-28 19:22:16 -05:00
Narr the Reg
36148fe7f6
service: hid: Correct some mistakes and add more validations
2022-06-28 19:14:55 -05:00
Morph
01bc0c84f0
Merge pull request #8512 from german77/nnResult
...
Replace multiple names with a better name
2022-06-28 16:59:33 -07:00
Fernando Sahmkow
2575a93dc6
Native clock: Use atomic ops as before.
2022-06-28 22:42:00 +02:00
Fernando Sahmkow
f5c1d7b8c8
Native Clock: remove inaccuracy mask.
2022-06-28 01:47:00 +02:00
Fernando Sahmkow
86ccce3721
Address feedback.
2022-06-28 01:19:30 +02:00
Fernando Sahmkow
38e4a144a1
Core: Protect each event from race conditions within it.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
9cafb0d912
Core: Fix tests.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
00b09de3d9
Core: add missing include.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
a2d29412cb
Core/Common: Corrections to core timing and add critical priority.
2022-06-28 01:10:55 +02:00
Fernando Sahmkow
846c994cc9
Core: Reimplement Core Timing.
2022-06-28 01:10:50 +02:00
Fernando Sahmkow
096366ead5
Common: improve native clock.
2022-06-28 01:06:48 +02:00
bunnei
c78f6d4f20
Merge pull request #8504 from comex/mesosphere-current-process
...
Support `InfoType_MesosphereCurrentProcess`
2022-06-27 13:05:07 -07:00
german77
c34a95fa25
video_core: Replace VKUpdateDescriptorQueue with UpdateDescriptorQueue
2022-06-26 20:21:45 -05:00
german77
b5d6194f6d
video_core: Replace VKSwapchain with Swapchain
2022-06-26 20:21:45 -05:00
german77
a5e419535f
video_core: Replace VKQueryCache with QueryCache
2022-06-26 20:21:45 -05:00
german77
9775fae4eb
video_core: Replace VKScheduler with Scheduler
2022-06-26 20:21:45 -05:00
german77
a262dc02b5
video_core: Replace VKBlitScreen with BlitScreen
2022-06-26 20:21:45 -05:00
german77
fca5752690
video_core: Replace VKFenceManager with FenceManager
2022-06-26 20:21:45 -05:00
german77
7b48e7b363
core: kernel: Replace instances of KPageLinkedList with KPageGroup
2022-06-26 20:21:45 -05:00
german77
a7d9be1384
core: Replace all instances of ResultCode with Result
2022-06-26 20:21:37 -05:00
bunnei
abfd690601
Merge pull request #8475 from liamwhite/x18
...
kernel: make current thread pointer thread local
2022-06-26 11:38:48 -07:00
comex
bf7e78795f
Re-add missing case
and braces, and trim whitespace
2022-06-25 18:01:56 -07:00
comex
a14438d013
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
48737a4bb2
Support InfoType_MesosphereCurrentProcess
2022-06-25 16:23:23 -07:00
Liam
075155022e
kernel: clean up waiting implementation
2022-06-25 13:36:14 -04:00
Liam
8f8c0b69dc
core/arm: better support for backtrace generation
2022-06-25 12:54:24 -04:00
Liam
19f475fd70
gdbstub: fix register pokes
2022-06-25 12:07:20 -04:00
Liam
2c56e94702
kernel: make current thread pointer thread local
2022-06-23 00:28:00 -04:00
bunnei
95b844dbae
Merge pull request #8491 from Morph1984/extra-assert
...
KPageTable: Remove extraneous assert
2022-06-22 14:47:07 -07:00
bunnei
9da4e62573
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
1c8f6ba18f
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
31c6ba7ecd
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
d657ea69c9
core/arm: increase minimum_run_cycles
2022-06-21 20:37:16 -04:00
merry
30e8876ea4
core/arm: re-enable cycle counting
2022-06-21 20:36:24 -04:00
Liam
1fd194141a
dynarmic: Stop ReadCode callbacks to unmapped addresses
2022-06-21 20:01:43 -04:00
bunnei
737c446fc1
Merge pull request #8432 from liamwhite/watchpoint
...
core/debugger: memory breakpoint support
2022-06-21 16:04:57 -07:00
bunnei
73e13aa090
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
f37b2e6f10
service: am: Stub PerformSystemButtonPressingIfInFocus
...
Used by Ring Fit Adventure
2022-06-20 12:35:58 -05:00
Liam
24d7aaf43c
kernel: wait for threads to stop on pause
2022-06-18 16:54:33 -04:00
Liam
a6371fb69d
core: fix initialization in single core, sync GPU mode
2022-06-16 23:43:35 -04:00
Morph
a33e7c13fa
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
9e384ed54b
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
cf7e4bda92
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
208ed712f4
core/debugger: memory breakpoint support
2022-06-16 13:18:07 -04:00
Narr the Reg
d1f2f5f146
common: param_package: Demote DEBUG to TRACE for getters
2022-06-16 10:27:59 -05:00
Liam
744a208763
kernel: fix some uses of disable_count
2022-06-15 20:53:49 -04:00
Fernando S
f86b770ff7
Merge pull request #8457 from liamwhite/kprocess-suspend
...
kernel: implement KProcess suspension
2022-06-16 02:41:12 +02:00
liamwhite
0ae4eae9a6
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
25429998e3
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
5ace5c1b7a
Merge pull request #8317 from german77/notifa
...
service: notifa: Implement most part of this service
2022-06-15 09:53:50 -07:00
Mai
23514388ed
Merge pull request #8464 from liamwhite/break-debug
...
kernel: notify debugger on break SVC
2022-06-15 11:55:54 -04:00
Morph
4572634a4e
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
103997ee56
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
a7358ff1d4
kernel: notify debugger on break SVC
2022-06-14 21:06:23 -04:00
Liam
20eab9fed9
core: centralize profile scope for Dynarmic
2022-06-14 18:19:04 -04:00
Morph
0eeee431dc
main: Eliminate variable shadowing
2022-06-14 14:09:51 -04:00
Liam
888f499188
kernel: implement KProcess suspension
2022-06-14 10:04:11 -04:00
Morph
c6e7ca562a
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
a9b4dd022c
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
5568763a57
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
a3b12e3809
Merge pull request #8439 from liamwhite/monkey-compiler
...
general: fix compilation on GCC 12
2022-06-14 08:34:16 -04:00
Morph
742f021fdf
wait_tree: Eliminate variable shadowing
2022-06-14 08:30:09 -04:00
Morph
95bcf6ac38
configure_ringcon: Eliminate variable shadowing
2022-06-14 08:30:09 -04:00
Morph
e371961219
configure_touch_from_button: Eliminate variable shadowing
2022-06-14 08:30:09 -04:00
Morph
5503338f21
configure_per_game: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
fe7184c2a8
configure_input_player: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
1c83014526
configure_dialog: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
2d903e3ce6
bootmanager: Eliminate variable shadowing
2022-06-14 08:30:08 -04:00
Morph
e29e8eec2f
game_list: Eliminate variable shadowing
2022-06-14 08:30:07 -04:00
Morph
fcfe192e83
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
bd38aefc57
kernel: fix passthrough of local captures in lambda
2022-06-13 20:09:32 -04:00
Liam
feaf010fa2
common/assert: rework ASSERT handling to avoid std::function usage
2022-06-13 20:09:32 -04:00
Liam
ebecdd3a74
general: fix compilation on MinGW GCC 12
2022-06-13 20:09:32 -04:00
Liam
a29ddcee40
common/assert: add unlikely
2022-06-13 20:09:32 -04:00
Liam
d11547024c
general: fix compilation on GCC 12
2022-06-13 20:09:30 -04:00
Liam
6f59e2676b
kernel: ensure class token lambda exit is unreachable
2022-06-13 20:09:00 -04:00
Liam
8fea7e56e5
kernel: fix inconsistency in AutoObjectTraits macro definitions
2022-06-13 20:09:00 -04:00
Liam
58fea44eb5
common: Don't test ASSERT conditions inline
2022-06-13 20:09:00 -04:00
Liam
084d7d6b01
common: Change semantics of UNREACHABLE to unconditionally crash
2022-06-13 20:09:00 -04:00
liamwhite
bd3bfe411d
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
963ed37fd6
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
741da9c8bf
Merge pull request #8388 from liamwhite/simpler-pause
...
CpuManager: simplify pausing
2022-06-13 15:48:03 -07:00
Morph
69d92a19a5
yuzu_cmd: Eliminate variable shadowing
2022-06-13 18:19:23 -04:00
Morph
8671aa8dd0
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
efc89c032b
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
c1bd602e4c
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
b3d6f7bdd8
yuzu: Eliminate variable shadowing
2022-06-13 18:19:22 -04:00
Morph
12156b199a
web_service: Eliminate variable shadowing
2022-06-13 18:19:22 -04:00
Morph
a0407a8e64
Merge pull request #8446 from liamwhite/cmd-gdb
...
core/debugger: support operation in yuzu-cmd
2022-06-13 14:38:37 -04:00
Morph
7582717c9d
Merge pull request #8454 from liamwhite/inaddr-any
...
core/debugger: allow remote connections
2022-06-13 14:38:20 -04:00
bunnei
ec85eac3c9
Merge pull request #8443 from liamwhite/code-mem
...
kernel: fix KCodeMemory initialization
2022-06-13 11:32:27 -07:00
Liam
fb4b507ba4
core/debugger: allow remote connections
2022-06-12 11:50:50 -04:00
Lioncash
80ad90651e
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
b94739cfa7
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
89e00c442d
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
d796341d33
Merge pull request #8449 from Docteh/translate_placeholder
...
retranslate the game list placeholder
2022-06-11 13:19:18 -04:00
bunnei
5282efac1b
Merge pull request #8413 from behunin/bounded-queue
...
gpu_thread: Move to bounded queue
2022-06-11 00:07:18 -07:00
bunnei
ae83d5c6d3
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
3370546a7a
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-0b9ef3c0b-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
2ff606628c
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
20576ebb43
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
6f81160160
Merge pull request #8333 from Docteh/translate_hotkeys
...
UI: Translate hotkey labels in configuration
2022-06-10 23:10:28 -04:00
Mai M
266e086706
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
bc8699a9fa
service: hid: Fix gesture regression
2022-06-10 13:14:31 -05:00
Liam
c3cc65a11e
yuzu-cmd: ignore bogus timeous from SDL
2022-06-10 12:49:18 -04:00
Liam
1f0fee33ed
core/debugger: fix a number of shutdown deadlocks
2022-06-10 09:17:12 -04:00
Liam
de6c0defb3
core/debugger: support operation in yuzu-cmd
2022-06-10 09:11:02 -04:00
Liam
6c659c3a16
kernel: fix KCodeMemory initialization
2022-06-09 12:33:28 -04:00
Liam
af022294dd
CpuManager: simplify pausing
2022-06-08 21:47:29 -04:00