bunnei
83b1b259bd
Merge pull request #4202 from ReinUsesLisp/scoped-lock
...
core_timing,scheduler: Use std::scoped_lock when possible
2020-07-09 15:33:41 -04:00
John Galt
95cd2e17ab
cmake: fix fmt linking when found
...
This is a new attempt at #4206 that shouldn't break windows builds.
If someone else could test on windows, it would be much appreciated.
Previously, the build bot passed but the actual builds failed.
2020-07-09 11:35:28 -04:00
Jan Beich
48ff15602e
cmake: pass libusb include directory as well
...
In file included from src/input_common/gcadapter/gc_adapter.cpp:8:
src/./input_common/gcadapter/gc_adapter.h:11:10: fatal error: 'libusb.h' file not found
#include <libusb.h>
^~~~~~~~~~
2020-07-09 15:26:54 +00:00
bunnei
77bdd09aa2
Merge pull request #4219 from ogniK5377/audio-timing
...
audio: Improving audio timing for multicore/single core
2020-07-08 22:07:17 -04:00
Ameer
4489ea6f53
Rebase to master, fix merge conflicts
2020-07-08 21:15:49 -04:00
bunnei
5311b562aa
Merge pull request #4266 from jbeich/freebsd
...
gcadapter: unbreak build on FreeBSD
2020-07-08 16:30:26 -04:00
bunnei
9c2773409a
Merge pull request #4255 from lioncash/copy
...
configure_graphics: Prevent unnecessary string copies in UpdateDeviceComboBox()
2020-07-08 16:28:10 -04:00
Ameer
3c7a115afe
Address comments for better clarity/signed dev count
2020-07-08 14:18:54 -04:00
Ameer
ec13746e4d
Add more libusb error checks
2020-07-08 13:19:33 -04:00
CrazyMax
cf76769026
AM: fix GetDesiredLanguage:
...
try to get a control metadata from application update when is failed to get from the basic version.
Tested on Kirby Star Allies
2020-07-08 19:45:06 +03:00
bunnei
4e2464a713
Merge pull request #4243 from CrazyMax/display_version
...
AM: fix GetDisplayVersion
2020-07-08 10:46:56 -04:00
bunnei
2a87ddcce2
Merge pull request #4245 from MerryMage/page-table-race
...
memory: Race-condition in pagetables.
2020-07-08 10:44:33 -04:00
ReinUsesLisp
2a9d17b7e7
maxwell_dma: Rename registers to match official docs and reorder
...
Rename registers in the MaxwellDMA class to match Nvidia's official
documentation. This one can be found here:
https://github.com/NVIDIA/open-gpu-doc/blob/master/classes/dma-copy/clb0b5.h
While we are at it, reorganize the code in MaxwellDMA to be separated in
different functions.
2020-07-07 19:19:33 -03:00
MerryMage
e7c77b90c4
cpu_interrupt_handler: Remove #pragma once from .cpp file
2020-07-07 22:47:00 +01:00
Ameer
b57475887b
Address PR feedback, fix axis button thresholding
2020-07-07 12:20:59 -04:00
bunnei
35f7740b6c
Merge pull request #4150 from ReinUsesLisp/dynamic-state-impl
...
vulkan: Use VK_EXT_extended_dynamic_state when available
2020-07-07 10:58:09 -04:00
Jan Beich
1db10b8f4c
input_common/gcadapter: add missing C++11 header required by libc++
...
In file included from src/input_common/gcadapter/gc_adapter.cpp:8:
src/./input_common/gcadapter/gc_adapter.h:77:10: error: no template named 'unordered_map' in namespace 'std'
std::unordered_map<int, bool> buttons;
~~~~~^
src/./input_common/gcadapter/gc_adapter.h:78:10: error: no template named 'unordered_map' in namespace 'std'
std::unordered_map<int, u16> axes;
~~~~~^
2020-07-07 10:02:03 +00:00
Ameer
e3253b5f18
Brace the code! Fix compile error due to class member construction order
2020-07-06 23:01:57 -04:00
Ameer
86abff48e1
Recalibrate reconnected controllers
2020-07-06 22:09:07 -04:00
Ameer
7ad423923d
Save origin state of GC controller analog features, compare against origin for input detection
2020-07-06 21:58:31 -04:00
Ameer
40cf9288e9
change shortcut context for other hotkeys with file open dialog
2020-07-06 19:45:57 -04:00
CrazyMax
7bd3558c64
GetDisplayVersion should return a null-terminated version string.
...
also, in case of failed to get of the basic version, we will try get it from application update.
2020-07-07 02:04:24 +03:00
Ameer
fa4d6df4c5
Fix ss crash on game menu, fix ss on windowed mode
2020-07-06 17:30:28 -04:00
Lioncash
4f678284e2
configure_graphics: Make use of qOverload in signals/slots
...
While we're in the same area, we can make use of qOverload to tidy up
some function pointer casts.
2020-07-06 09:07:21 -04:00
Lioncash
be06b21f7b
configure_graphics: Prevent unnecessary string copies in UpdateDeviceComboBox()
...
Unlikely to impact performance at all, but this is essentially a "free"
transformation, so why not?
2020-07-06 09:07:03 -04:00
MerryMage
76bd617b2d
memory: Set page-table pointers before setting attribute = Memory
2020-07-05 12:54:19 +01:00
Morph
c0dc8f9d25
AM/ISelfController: Stub CreateManagedDisplaySeparableLayer
...
Stub this by sending 1 layer id instead of 2 as yuzu does not support multiple layers per display.
No adverse side effects have been observed.
- Used by Animal Crossing: New Horizons Update 1.3.0
2020-07-05 06:26:21 -04:00
Fernando Sahmkow
52882a93a5
Merge pull request #4194 from ReinUsesLisp/fix-shader-cache
...
shader_cache: Fix use-after-free and orphan invalidation cache entries
2020-07-04 20:49:00 -04:00
Ameer
f829932ed1
Fix merge conflicts?
2020-07-04 00:59:40 -04:00
Ameer
d00972fce1
Fix for always firing triggers on some controllers, trigger threshold more universal
2020-07-04 00:40:48 -04:00
Rodrigo Locatti
3096adb347
Merge pull request #4218 from ogniK5377/opus-external
...
externals: Track opus as submodule instead of using conan
2020-07-04 01:32:54 -03:00
Ameer
e69d715e3d
Address lioncash feedback: Log formatting, extern const PadButtonArray, little touch ups
2020-07-03 11:52:07 -04:00
bunnei
41a333321a
Merge pull request #4175 from ReinUsesLisp/read-buffer
...
gl_buffer_cache: Copy to buffers created as STREAM_READ before downloading
2020-07-02 23:30:08 -04:00
bunnei
8a1cfcc8b7
Merge pull request #3924 from ogniK5377/GetKeyCodeMap
...
Implement GetKeyCodeMap & GetKeyCodeMap2
2020-07-02 23:03:20 -04:00
bunnei
98fcd3ba5d
Revert "cmake: fix fmt linking"
2020-07-02 22:53:12 -04:00
bunnei
064b7bfa5f
Merge pull request #4206 from RealJohnGalt/linkfix
...
cmake: fix fmt linking
2020-07-02 22:23:39 -04:00
bunnei
b13fd9e65a
Merge pull request #4193 from ogniK5377/GetIndirectLayerConsumerHandle-stub
...
am: Stub GetIndirectLayerConsumerHandle
2020-07-02 21:31:20 -04:00
bunnei
af787e451b
Merge pull request #4192 from ogniK5377/acc-ListOpenContextStoredUsers-stub
...
acc: ListOpenContextStoredUsers partial stub
2020-07-02 20:36:54 -04:00
Ameer
6e1639c7b0
Fix unnecessary diffs
2020-07-02 16:51:16 -04:00
Ameer
6b7c8e469b
Add LR triggers as axes, half press to initiate a press, add GC axis id in config, clarify some code blocks for better readability
2020-07-02 15:54:44 -04:00
Rodrigo Locatti
c58e21cd76
Merge pull request #4082 from Morph1984/mirror-once-clamp
...
maxwell_to_gl: Implement MirrorOnceClampOGL wrap mode using GL_MIRROR_CLAMP_EXT
2020-07-02 04:57:40 -03:00
VolcaEM
3f910efb40
Rename two functions in NS
...
- Rename "GetShellEvent" to "GetShellEventHandle"
- Rename "LaunchApplicationFromHost" to "LaunchApplication"
2020-07-02 09:02:55 +02:00
VolcaEM
38b585a309
Rename GetApplicationArea2 to GetApplicationAreaSize
2020-07-02 08:58:51 +02:00
Jan Beich
b1b1ed7597
cmake: stop linking against QGL after c6a0ab9792
2020-07-01 22:11:39 +00:00
ReinUsesLisp
f6cb128eac
shader_cache: Fix use-after-free and orphan invalidation cache entries
...
This fixes some cases where entries could have been removed multiple
times reading freed memory. To address this issue this commit removes
duplicates from entries marked for removal and sorts out the removal
process to fix another use-after-free situation.
Another issue fixed in this commit is orphan invalidation cache entries.
Previously only the entries that were invalidated in the current
operations had its entries removed. This led to more use-after-free
situations when these entries were actually invalidated but referenced
an object that didn't exist.
2020-07-01 18:16:53 -03:00
Ameer
34a590e509
Reset adapter state on init, fixes errors relating driver hang from unexpected unplug
2020-07-01 12:52:50 -04:00
David Marcec
28aa697528
Don't handle cycles late if stretcher is active
...
Timestretcher seems to be broken
2020-07-01 16:59:42 +10:00
David Marcec
24c2930012
audio: Improving audio timing for multicore/single core
...
Fixes the issue with needing the timestretcher for multicore.
2020-07-01 16:52:02 +10:00
David
15a04fb704
Merge pull request #4217 from lioncash/prototype
...
key_manager: Make use of canonical deleted operator=
2020-07-01 16:13:14 +10:00
David Marcec
d5dfe34c49
externals: Track opus as submodule instead of using conan
...
Supersedes #4068 see for details.
2020-07-01 15:09:33 +10:00
LC
0b954a3305
Merge pull request #4208 from jbeich/freebsd
...
common: unbreak build on BSDs
2020-07-01 00:34:20 -04:00
Lioncash
fb13f053bb
key_manager: Correct casing of instance()
...
Our codebase uppercases member function names.
2020-07-01 00:28:50 -04:00
Lioncash
c91710a82f
key_manager: Delete move operations
...
Prevents the singleton from being moved from.
2020-07-01 00:24:38 -04:00
Lioncash
00a1d106bd
key_manager: Make use of canonical deleted operator=
...
operator= typically returns a reference, it's not void.
While we're at it, we can correct the parameter formatting to adhere to the
codebase.
2020-07-01 00:21:31 -04:00
David
3bb63bc0b3
Merge pull request #3967 from FearlessTobi/keys-singleton
...
crypto: Make KeyManager a singleton class
2020-07-01 14:16:26 +10:00
bunnei
c6b0353c4d
Merge pull request #4153 from ogniK5377/prepo-multibuf
...
prepo: : Don't read extra buffer from report unless passed
2020-06-30 22:37:13 -04:00
bunnei
424540d9e8
Merge pull request #4063 from FreddyFunk/game-version-in-title
...
Add game version to window title
2020-06-30 21:42:33 -04:00
bunnei
f1b1238e2d
Merge pull request #4166 from VolcaEM/quickstart-faq
...
Add "Open Quickstart Guide" and "FAQ" buttons to the Help menu
2020-06-30 19:03:47 -04:00
Jan Beich
3b1683a152
common: switch to nullptr for sysctl's empty new value
2020-06-30 23:00:18 +00:00
Ameer
a76e11e7f0
Address feedback regarding increments, const vars, and general cleanup
2020-06-30 17:28:02 -04:00
Fernando Sahmkow
a4f48efea4
Merge pull request #4176 from ReinUsesLisp/compatible-formats
...
texture_cache: Check format compatibility before copying
2020-06-30 15:36:13 -04:00
Fernando Sahmkow
977a3ab352
Merge pull request #4157 from ReinUsesLisp/unified-turing
...
gl_device: Enable NV_vertex_buffer_unified_memory on Turing devices
2020-06-30 14:36:51 -04:00
Ameer
dfdf87d844
fix implicit conversion of size_t type to int
2020-06-30 11:44:55 -04:00
Morph
1b31755ba6
maxwell_to_gl: Implement MirrorOnceClampOGL using GL_MIRROR_CLAMP_EXT
...
Like MirrorOnceBorder, this requires the GL_EXT_texture_mirror_clamp extension. This extension is unfortunately not available on Intel's drivers (both Windows proprietary and Linux Mesa). Use GL_MIRROR_CLAMP_TO_EDGE as a fallback if the extension is unavailable.
2020-06-30 02:40:14 -04:00
Rodrigo Locatti
d217017c9e
Merge pull request #4191 from Morph1984/vertex-formats
...
maxwell_to_gl/vk: Reorder vertex formats
2020-06-30 03:30:00 -03:00
David
7c970132b5
macro: Add support for "middle methods" on the code cache ( #4112 )
...
Macro code is just uploaded sequentially from a starting address, however that does not mean the entry point for the macro is at that address. This PR adds preliminary support for executing macros in the middle of our cached code.
2020-06-30 02:32:24 -03:00
bunnei
fa8e35c49f
Merge pull request #4182 from Kewlan/fullscreen-hotkey-fix
...
hotkeys: Fix issues caused when changing the fullscreen hotkey
2020-06-29 23:11:57 -04:00
Jan Beich
e6085ea35f
common: add sysconf() fallback
...
src/common/memory_detect.cpp:15:10: fatal error: 'sys/sysinfo.h' file not found
#include <sys/sysinfo.h>
^~~~~~~~~~~~~~~
2020-06-29 22:41:22 +00:00
Morph
10eca7f651
maxwell_to_gl: Rename VertexType() to VertexFormat()
2020-06-29 11:48:38 -04:00
John Galt
765e37aa35
cmake: fix fmt linking
...
On gcc/ld, and clang/lld, fmt::v6 symbols are excluded, so linking
fails. This fixes the issue.
Note: This was included in the FindBoost changes I shared with
BlinkHawk, however only they were merged. I'm not sure if it was missed,
or if there was an issue with this part of the change.
2020-06-29 07:10:07 -04:00
Rodrigo Locatti
f84cbf6429
Merge pull request #4140 from ReinUsesLisp/validation-layers
...
renderer_vulkan: Update validation layer name and test before enabling
2020-06-29 02:12:38 -03:00
VolcaEM
86946ea13c
Remove duplicate functions
2020-06-29 04:22:38 +02:00
VolcaEM
f3630a0713
Use decimal instead of hexadecimal
...
Co-authored-by: David <25727384+ogniK5377@users.noreply.github.com>
2020-06-29 04:21:10 +02:00
VolcaEM
a0c499aef7
Fix typo
2020-06-29 04:12:36 +02:00
VolcaEM
f2eead3b5b
Clang-format
2020-06-29 04:09:38 +02:00
VolcaEM
6a0010d0c6
service: Update function tables
2020-06-29 04:01:34 +02:00
ReinUsesLisp
8562b516c0
core_timing,scheduler: Use std::scoped_lock when possible
...
Simplifies the cognitive load of procedures using locks and makes locks
safe against exceptions.
2020-06-28 21:42:57 -03:00
bunnei
b05795d704
Merge pull request #3955 from FernandoS27/prometheus-2b
...
Remake Kernel Scheduling, CPU Management & Boot Management (Prometheus)
2020-06-28 12:37:50 -04:00
David Marcec
db824b59c8
ldr: Cleanup NRO & NRR structs
2020-06-28 20:54:37 +10:00
David
d67c7d9a82
Merge pull request #4026 from VolcaEM/ldr
...
ldr: Update NRR/NRO structs
2020-06-28 20:46:42 +10:00
David
4a5f6c03b0
Merge pull request #4184 from VolcaEM/patch-9
...
grc: Update function table
2020-06-28 18:49:15 +10:00
David
d3a306b7a6
Merge pull request #4185 from VolcaEM/patch-10
...
lbl: Update function table
2020-06-28 18:48:54 +10:00
David
477979dd43
Merge pull request #4186 from VolcaEM/patch-11
...
ldn: Update function table
2020-06-28 18:48:28 +10:00
David
b478b61dcf
Merge pull request #4187 from VolcaEM/patch-12
...
mig: Update function table
2020-06-28 18:48:15 +10:00
David
00aa9f6a53
Merge pull request #4188 from VolcaEM/patch-13
...
mm: Update function table
2020-06-28 18:47:55 +10:00
David
26e243d2d7
Merge pull request #4189 from VolcaEM/patch-14
...
ncm: Update function table
2020-06-28 18:47:27 +10:00
David
bd590895cf
Merge pull request #4190 from VolcaEM/patch-15
...
nfc: Update function table
2020-06-28 18:47:07 +10:00
David
e978f05ed1
Merge pull request #4183 from VolcaEM/patch-8
...
friend: Update function table
2020-06-28 18:46:40 +10:00
Morph
4a35df337b
maxwell_to_vk: Reorder vertex formats and add A2B10G10R10 for all types except float
2020-06-28 02:57:10 -04:00
David Marcec
dcf345febe
am: Stub GetIndirectLayerConsumerHandle
...
Needed by Monster Hunter Generations Ultimate
2020-06-28 16:51:28 +10:00
Morph
78d80d99a0
maxwell_to_gl: Add 32 bit component sizes to (un)signed scaled formats
...
Add 32 bit component sizes to (un)signed scaled formats and group (un)signed normalized, scaled, and integer formats together.
2020-06-28 02:51:13 -04:00
David Marcec
f0baf2abf2
acc: ListOpenContextStoredUsers partial stub
...
Needed by Baldur's Gate 1/2
2020-06-28 16:44:36 +10:00
Fernando Sahmkow
2f8947583f
Core/Common: Address Feedback.
2020-06-27 18:20:06 -04:00
Fernando Sahmkow
e486c66850
NvFlinger: Clang Format.
2020-06-27 11:36:30 -04:00
Fernando Sahmkow
626cc44d7a
Build System: Fix GCC & MINGW Build.
2020-06-27 11:36:28 -04:00
Fernando Sahmkow
4105f38022
SVC: Implement 32-bits wrappers and update Dynarmic.
2020-06-27 11:36:27 -04:00
Fernando Sahmkow
ce350e7ce0
SVC: Add GetCurrentProcessorNumber32, CreateTransferMemory32, SetMemoryAttribute32
2020-06-27 11:36:27 -04:00
Fernando Sahmkow
b8df61c642
ARM: Update Dynarmic and Setup A32 according to latest interface.
2020-06-27 11:36:26 -04:00
Fernando Sahmkow
22ceaca2f4
SVC: Add GetThreadPriority32 & SetThreadPriority32
2020-06-27 11:36:25 -04:00
Fernando Sahmkow
ec11918323
ArmDynarmic32: Setup CNTPCT correctly
2020-06-27 11:36:24 -04:00
Fernando Sahmkow
e3d561fb84
Audio: Correct buffer release for host timing.
2020-06-27 11:36:23 -04:00
Fernando Sahmkow
7fd7d05838
Common/Kernel: Corrections and small bug fixing.
2020-06-27 11:36:21 -04:00
Fernando Sahmkow
272a87127a
Services/NvFlinger: Do vSync in a sepparate thread on Multicore.
2020-06-27 11:36:20 -04:00
Fernando Sahmkow
3165152396
Common/NativeClockx86: Reduce native clock accuracy further.
2020-06-27 11:36:18 -04:00
Fernando Sahmkow
71c4779211
Tests/CoreTiming: Correct host timing tests.
2020-06-27 11:36:17 -04:00
Fernando Sahmkow
0a8013d71e
ARMDynarmicInterface: Correct GCC Build Errors.
2020-06-27 11:36:17 -04:00
Fernando Sahmkow
7b1804dab4
Common/AtomicOps: Correct GCC Intrinsic argument ordering.
2020-06-27 11:36:16 -04:00
Fernando Sahmkow
d240143588
Kernel: Correct Host Context on Threads and Scheduler.
2020-06-27 11:36:15 -04:00
Fernando Sahmkow
0e4c35c591
YuzuQT: Hide Speed UI on Multicore.
2020-06-27 11:36:14 -04:00
Fernando Sahmkow
467d43570e
Clang Format.
2020-06-27 11:36:14 -04:00
Fernando Sahmkow
3714f2e471
ARMInterface/Externals: Update dynarmic and fit to latest version.
2020-06-27 11:36:13 -04:00
Fernando Sahmkow
dda6147b0d
ARMInterface: Correct rebase errors.
2020-06-27 11:36:12 -04:00
Fernando Sahmkow
71f1c0f9f9
CoreTiming: Correct rebase bugs and other miscellaneous things.
2020-06-27 11:36:11 -04:00
Fernando Sahmkow
cdf900f1e3
Core: Split Microprofile Dynarmic timing per Core
2020-06-27 11:36:10 -04:00
Fernando Sahmkow
528b19a842
General: Tune the priority of main emulation threads so they have higher priority than less important helper threads.
2020-06-27 11:36:09 -04:00
Fernando Sahmkow
7b44187fd2
Dynarmic Interface: don't clear cache if JIT has not been created.
2020-06-27 11:36:08 -04:00
Fernando Sahmkow
ad92865497
General: Correct rebase, sync gpu and context management.
2020-06-27 11:36:08 -04:00
Fernando Sahmkow
bfb5244cf8
CoreTiming/CycleTimer: Correct Idling.
2020-06-27 11:36:07 -04:00
Fernando Sahmkow
bece52cd81
SingleCore: Correct ticks reset to be on preemption.
2020-06-27 11:36:06 -04:00
Fernando Sahmkow
48fa3b7a0f
General: Cleanup legacy code.
2020-06-27 11:36:05 -04:00
Fernando Sahmkow
c8bf47dcfb
Kernel/svcBreak: Implement CacheInvalidation for Singlecore and correct svcBreak.
2020-06-27 11:36:04 -04:00
Fernando Sahmkow
54e304fe2a
Bootmanager/CPU_Manager: Correct shader caches and sync GPU on OpenGL.
2020-06-27 11:36:03 -04:00
Fernando Sahmkow
19165cd859
HLE_IPC: Correct HLE Event behavior on timeout.
2020-06-27 11:36:03 -04:00
Fernando Sahmkow
7e2ce2f7f4
SingleCore: Improve Cycle timing Behavior and replace mutex in global scheduler for spinlock.
2020-06-27 11:36:02 -04:00
Fernando Sahmkow
a7ecd9e19c
FrameLimiting: Enable frame limiting for single core.
2020-06-27 11:36:01 -04:00
Fernando Sahmkow
f5e32935ca
SingleCore: Use Cycle Timing instead of Host Timing.
2020-06-27 11:36:01 -04:00
Fernando Sahmkow
9bde28d7b1
Scheduler: Correct Reload/Unload
2020-06-27 11:35:59 -04:00
Fernando Sahmkow
5974e3ea33
Thread: Release the ARM Interface on exitting.
2020-06-27 11:35:58 -04:00
Fernando Sahmkow
1567824d2d
General: Move ARM_Interface into Threads.
2020-06-27 11:35:58 -04:00
Fernando Sahmkow
1b82ccec22
Core: Refactor ARM Interface.
2020-06-27 11:35:56 -04:00
Fernando Sahmkow
534466754f
X64 Clock: Reduce accuracy to be less or equal to guest accuracy.
2020-06-27 11:35:55 -04:00
Fernando Sahmkow
7b18174eef
ARM/WaitTree: Better track the CallStack for each thread.
2020-06-27 11:35:54 -04:00
Fernando Sahmkow
87c49aa7be
SVC/ARM: Correct svcSendSyncRequest and cache ticks on arm interface.
2020-06-27 11:35:53 -04:00
Fernando Sahmkow
f2ade343e2
SingleCore: Move Host Timing from a sepparate thread to main cpu thread.
2020-06-27 11:35:52 -04:00
Fernando Sahmkow
5d3a2be04f
GUI: Make multicore only work with Async and add GUI for multicore.
2020-06-27 11:35:52 -04:00
Fernando Sahmkow
25565dffd5
ARM: Addapt to new Exclusive Monitor Interface.
2020-06-27 11:35:50 -04:00
Fernando Sahmkow
1a5f2e290b
CPU_Manager: Correct stopping on SingleCore.
2020-06-27 11:35:49 -04:00
Fernando Sahmkow
db68fba4a6
Scheduler: Correct yielding interaction with SetThreadActivity.
2020-06-27 11:35:49 -04:00
Fernando Sahmkow
7020d498c5
General: Fix microprofile on dynarmic/svc, fix wait tree showing which threads were running.
2020-06-27 11:35:48 -04:00
Fernando Sahmkow
e6f8bde74b
General: Fix Stop function
2020-06-27 11:35:47 -04:00
Fernando Sahmkow
f370de84b1
Kernel: Rewind on SVC change.
2020-06-27 11:35:46 -04:00
Fernando Sahmkow
d494b074e8
Kernel: Preempt Single core on redudant yields.
2020-06-27 11:35:45 -04:00
Fernando Sahmkow
a439cdf22e
CPU_Manager: Unload/Reload threads on preemption on SingleCore
2020-06-27 11:35:43 -04:00
Fernando Sahmkow
8a78fc2580
Synchronization: Correct wide Assertion.
2020-06-27 11:35:43 -04:00
Fernando Sahmkow
ab9aae28bf
General: Initial Setup for Single Core.
2020-06-27 11:35:42 -04:00
Fernando Sahmkow
391f5f360d
Scheduler: Set last running time on thread.
2020-06-27 11:35:41 -04:00
Fernando Sahmkow
9e9c287f8b
Kernel: Corrections to TimeManager, Scheduler and Mutex.
2020-06-27 11:35:40 -04:00
Fernando Sahmkow
6515c6e8c6
Kernel: Fixes, corrections and asserts to scheduler and different svcs.
2020-06-27 11:35:40 -04:00
Fernando Sahmkow
4217e58a10
Scheduler: Correct yields.
2020-06-27 11:35:39 -04:00
Fernando Sahmkow
445b4342b3
Mutex: Revert workaround due to poor exclusive memory.
2020-06-27 11:35:38 -04:00
Fernando Sahmkow
cd1c38be8d
ARM/Memory: Correct Exclusive Monitor and Implement Exclusive Memory Writes.
2020-06-27 11:35:37 -04:00
Fernando Sahmkow
535c542d84
SVC: WaitSynchronization add Termination Pending Result.
2020-06-27 11:35:36 -04:00
Fernando Sahmkow
725bac1404
Scheduler: Remove arm_interface lock and a few corrections.
2020-06-27 11:35:35 -04:00
Fernando Sahmkow
38c6c497f6
Yuzu/Debuggers: Correct Wait Tree for Paused threads.
2020-06-27 11:35:34 -04:00
Fernando Sahmkow
83c7ba1ef7
SVC: Correct SetThreadActivity.
2020-06-27 11:35:33 -04:00
Fernando Sahmkow
a66c61ca2d
SCC: Small corrections to CancelSynchronization
2020-06-27 11:35:33 -04:00
Fernando Sahmkow
44cb9997b3
Scheduler: Correct locking for hle threads.
2020-06-27 11:35:32 -04:00
Fernando Sahmkow
6ed28e15fa
Scheduler: Fix HLE Threads on guard
2020-06-27 11:35:31 -04:00
Fernando Sahmkow
3de33348e4
Scheduler: Protect on closed threads.
2020-06-27 11:35:31 -04:00
Fernando Sahmkow
19847d4d42
Scheduler: Correct assert.
2020-06-27 11:35:30 -04:00
Fernando Sahmkow
a33fbaddec
Core: Correct rebase.
2020-06-27 11:35:29 -04:00
Fernando Sahmkow
1c672128c4
Scheduler: Release old thread fiber before trying to switch to the next thread fiber.
2020-06-27 11:35:28 -04:00
Fernando Sahmkow
c43e559734
NVDRV: Remove frame limiting as Host Timing already takes care.
2020-06-27 11:35:28 -04:00
Fernando Sahmkow
a6bce296ad
Mutex: Correct Result writting to clear exclusivity.
2020-06-27 11:35:26 -04:00
Fernando Sahmkow
e4b175ade2
SVC: Correct svcWaitForAddress and svcSignalToAddress.
2020-06-27 11:35:25 -04:00
Fernando Sahmkow
1e987dbe8d
Scheduler: Correct Select Threads Step 2.
2020-06-27 11:35:24 -04:00
Fernando Sahmkow
07993ac8c8
Kernel: Corrections to Scheduling.
2020-06-27 11:35:23 -04:00
Fernando Sahmkow
b4dc01f16a
Kernel: Correct Signal on Thread Death and Setup Sync Objects on Thread for Debugging
2020-06-27 11:35:23 -04:00
Fernando Sahmkow
75e10578f1
Core: Correct HLE Event Callbacks and other issues.
2020-06-27 11:35:22 -04:00
Fernando Sahmkow
de5b521c09
Process: Protect TLS region and Modules.
2020-06-27 11:35:21 -04:00
Fernando Sahmkow
2a8837ff51
General: Add Asserts
2020-06-27 11:35:21 -04:00
Fernando Sahmkow
04e0f8776c
General: Add better safety for JIT use.
2020-06-27 11:35:20 -04:00
Fernando Sahmkow
bd36eaf15d
SVC: Correct races on physical core switching.
2020-06-27 11:35:19 -04:00
Fernando Sahmkow
cc3aa95926
NVFlinger: Lock race condition between CPU, Host Timing, VSync.
2020-06-27 11:35:18 -04:00
Fernando Sahmkow
3902067008
SVC: Add locks to the memory management.
2020-06-27 11:35:18 -04:00
Fernando Sahmkow
d4ebb510a0
SVC: Correct WaitSynchronization, WaitProcessWideKey, SignalProcessWideKey.
2020-06-27 11:35:17 -04:00
Fernando Sahmkow
5b6a67f849
SVC: Cleanup old methods.
2020-06-27 11:35:16 -04:00
Fernando Sahmkow
3d9fbb8226
CPU_Manager: Reconfigre guest threads for dynamrmic downsides
2020-06-27 11:35:15 -04:00
Fernando Sahmkow
15a79eb0d7
SVC: Correct SendSyncRequest.
2020-06-27 11:35:14 -04:00
Fernando Sahmkow
203e706302
SVC: Correct ArbitrateUnlock
2020-06-27 11:35:14 -04:00
Fernando Sahmkow
3b5b950c89
SVC: Correct SignalEvent, ClearEvent, ResetSignal, WaitSynchronization, CancelSynchronization, ArbitrateLock
2020-06-27 11:35:13 -04:00
Fernando Sahmkow
ef4afa9760
SVC: Remove global HLE Lock.
2020-06-27 11:35:13 -04:00
Fernando Sahmkow
589f9cf108
SVC: Correct GetThreadPriority, SetThreadPriority, GetThreadCoreMask, SetThreadCoreMask, GetCurrentProcessorNumber
2020-06-27 11:35:12 -04:00
Fernando Sahmkow
49ba563995
SVC: Correct CreateThread, StartThread, ExitThread, SleepThread.
2020-06-27 11:35:11 -04:00
Fernando Sahmkow
18dcb09342
HostTiming: Pause the hardware clock on pause.
2020-06-27 11:35:10 -04:00
Fernando Sahmkow
6bf137a0e8
AudioCore: Use nanoseconds instead of cycles for buffer time.
2020-06-27 11:35:10 -04:00
Fernando Sahmkow
dc58058203
General: Setup yuzu threads' microprofile, naming and registry.
2020-06-27 11:35:09 -04:00
Fernando Sahmkow
a5c58a25ef
CPU_Manager: remove debugging code.
2020-06-27 11:35:08 -04:00
Fernando Sahmkow
9e4b9f1afd
YuzuCMD/Tester: Correct execution
2020-06-27 11:35:07 -04:00
Fernando Sahmkow
e31425df38
General: Recover Prometheus project from harddrive failure
...
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host
Timing, Reworks the Kernel's Scheduler, Introduce Idle State and
Suspended State, Recreates the bootmanager, Initializes Multicore
system.
2020-06-27 11:35:06 -04:00
David
0ea4a8bcc4
Merge pull request #3396 from FernandoS27/prometheus-1
...
Implement SpinLocks, Fibers and a Host Timer
2020-06-28 01:34:07 +10:00
VolcaEM
23515e0ccc
nfc: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/NFC_services
2020-06-27 13:09:36 +02:00
VolcaEM
c56414b80d
ncm: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/NCM_services
ILocationResolver's 16, 17, 18 and 19 have unofficial names
2020-06-27 13:05:22 +02:00
VolcaEM
b829643946
mm: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Display_services
2020-06-27 12:59:01 +02:00
VolcaEM
5219424226
mig: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Migration_services
2020-06-27 12:53:59 +02:00
VolcaEM
b9be484a51
ldn: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/LDN_services
2020-06-27 12:50:56 +02:00
VolcaEM
a8d17adb7c
Oops (fix typo)
2020-06-27 12:45:42 +02:00
VolcaEM
73b035d2e2
lbl: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Backlight_services
2020-06-27 12:43:33 +02:00
VolcaEM
64fa9b9f57
grc: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/GRC_services
2020-06-27 12:41:21 +02:00
VolcaEM
af88767508
friend: Update function table
2020-06-27 12:39:10 +02:00
Kewlan
323eb86c9f
Fix issues caused when changing the fullscreen hotkey
2020-06-27 11:30:32 +02:00
bunnei
6205965df9
Merge pull request #4097 from kevinxucs/kevinxucs/device-pixel-scaling-float
...
Fix framebuffer size on fractional scaling display
2020-06-27 02:49:07 -04:00
bunnei
9eaccac674
Merge pull request #4164 from Kewlan/mute-audio-hotkey
...
hotkeys: Add a "Mute Audio" hotkey
2020-06-27 02:47:13 -04:00
bunnei
6f16f54f10
Merge pull request #4158 from Morph1984/caps
...
caps: Use enum classes and check struct sizes on compile time
2020-06-27 00:09:32 -04:00
Ameer J
bd697bef03
left const auto&, comment punctuation.
...
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2020-06-26 23:46:49 -04:00
bunnei
a91f92a89d
Merge pull request #4152 from ogniK5377/ipc-err
...
Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG
2020-06-26 23:37:19 -04:00
bunnei
705cccb1e4
Merge pull request #4154 from ogniK5377/swkbd-nullptr
...
Prevent nullptr dereference on swkbd error case
2020-06-26 23:25:04 -04:00
bunnei
efef7b1517
Merge pull request #4147 from ReinUsesLisp/hset2-imm
...
shader/half_set: Implement HSET2_IMM
2020-06-26 23:14:56 -04:00
David
b32b7c6e74
Merge pull request #4178 from VolcaEM/patch-6
...
es: Update function table
2020-06-27 13:05:12 +10:00
VolcaEM
2d82b7f1a1
Use better names for "Unknown"s
2020-06-27 02:48:29 +02:00
VolcaEM
bc51a9365b
Update function names
2020-06-27 02:43:22 +02:00
David Marcec
0b23ce6ef2
btm: Give better names for unknown functions
2020-06-27 10:42:46 +10:00
VolcaEM
032b7d490d
btdrv: Update function table ( #4174 )
...
* btdrv: Update function table
2020-06-26 20:34:29 -04:00
VolcaEM
6e14edbcc2
bpc: Update function tables ( #4173 )
...
* bpc: Update function tables
This was based on Switchbrew page: https://switchbrew.org/wiki/PCV_services
2020-06-26 20:33:55 -04:00
VolcaEM
e6fee39ae7
bcat: Update function tables and add missing classes ( #4172 )
...
* bcat: Update function tables and add missing classes
2020-06-26 20:33:25 -04:00
VolcaEM
ca25a3845e
am: Update function tables and add missing classes ( #4169 )
...
* am: Update function tables and add missing classes
* Remove comments (1/5)
* Remove comments (2/5)
* Remove comments (3/5)
* Remove comments (4/5)
* Remove comments (5/5)
* Remove unused classes (1/2)
* Remove unused classes (2/2)
2020-06-26 20:32:26 -04:00
VolcaEM
b5d54619cc
aoc: Update function table ( #4170 )
...
* aoc: Update function table
* Remove comments
2020-06-26 20:31:44 -04:00
LC
98bbab8030
Merge pull request #4177 from VolcaEM/patch-5
...
btm: Update function tables
2020-06-26 20:30:59 -04:00
VolcaEM
0f4a611129
eupld: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/Error_Upload_services
2020-06-27 02:25:04 +02:00
VolcaEM
3828aa4927
es: Update function table
...
This was based on Switchbrew page: https://switchbrew.org/wiki/ETicket_services
2020-06-27 02:17:51 +02:00
VolcaEM
b1f4de7874
Update FAQ function name (2/2)
2020-06-27 02:14:29 +02:00
VolcaEM
db96b5ee3b
Update FAQ function name (1/2)
2020-06-27 02:13:34 +02:00
VolcaEM
d3e9b45ce0
btm: Update function tables
...
This was based on Switchbrew page: https://switchbrew.org/wiki/BTM_services
"No comment" edition
2020-06-27 01:57:48 +02:00
ReinUsesLisp
9d55e5586f
vk_rasterizer: Use nullptr for <pSizes> in CmdBindVertexBuffers2EXT
...
Disable this temporarily.
2020-06-26 20:57:22 -03:00
ReinUsesLisp
8584a77eb2
vk_pipeline_cache: Avoid hashing and comparing dynamic state when possible
...
With extended dynamic states, some bytes don't have to be collected from
the pipeline key, hence we can avoid hashing and comparing them on
lookups.
2020-06-26 20:57:22 -03:00
ReinUsesLisp
1a84209418
vulkan/fixed_pipeline_state: Move state out of individual structures
2020-06-26 20:57:22 -03:00
ReinUsesLisp
c94b398f14
vk_rasterizer: Use VK_EXT_extended_dynamic_state
2020-06-26 20:57:22 -03:00
ReinUsesLisp
a6db8e5f4d
renderer_vulkan/wrapper: Add VK_EXT_extended_dynamic_state functions
2020-06-26 20:55:15 -03:00
ReinUsesLisp
c387a72c76
fixed_pipeline_state: Add requirements for VK_EXT_extended_dynamic_state
...
This moves dynamic state present in VK_EXT_extended_dynamic_state to a
separate structure in FixedPipelineState. This is structure is at the
bottom allowing us to hash and memcmp only when the extension is not
supported.
2020-06-26 20:55:15 -03:00
ReinUsesLisp
7527402a46
vk_device: Enable VK_EXT_extended_dynamic_state when available
2020-06-26 20:55:15 -03:00
ReinUsesLisp
bb2cbdf704
texture_cache: Test format compatibility before copying
...
Avoid illegal copies. This intercepts the last step of a copy to avoid
generating validation errors or corrupting the driver on some instances.
We can create views and emit copies accordingly in future commits and
remove this last-step validation.
2020-06-26 20:52:22 -03:00
bunnei
3579db425e
Merge pull request #4144 from FernandoS27/tt-fix
...
TextureCache: Fix case where layer goes off bound.
2020-06-26 19:02:39 -04:00
bunnei
78d3b54ea7
Merge pull request #4111 from ReinUsesLisp/preserve-contents-vk
...
vk_rasterizer: Don't preserve contents on full screen clears
2020-06-26 18:48:12 -04:00
ReinUsesLisp
1d6be9febf
video_core/compatible_formats: Table to test if two formats are legal to view or copy
...
Add a flat table to test if it's legal to create a texture view between
two formats or copy betweem them.
This table is based on ARB_copy_image and ARB_texture_view. Copies are
more permissive than views.
2020-06-26 19:28:11 -03:00
ReinUsesLisp
6481d91e4a
gl_buffer_cache: Copy to buffers created as STREAM_READ before downloading
...
After marking buffers as resident, Nvidia's driver seems to take a
slow path. To workaround this issue, copy to a STREAM_READ buffer and
then call GetNamedBufferSubData on it.
This is a temporary solution until we have asynchronous flushing.
2020-06-26 16:58:40 -03:00
VolcaEM
9e1975a166
Update function name again
2020-06-26 18:51:12 +02:00
VolcaEM
0b86c7eb6a
Update function name (2/2)
2020-06-26 18:50:28 +02:00
VolcaEM
f8247826fa
Update function name (1/2)
2020-06-26 18:49:57 +02:00
Fernando Sahmkow
7b893c7963
Common: Fix non-conan build
2020-06-26 12:25:19 -04:00
Morph
72f14ae21f
caps_u: Fix GetAlbumContentsFileListForApplication stub
2020-06-26 08:35:21 -04:00
Morph
3017be7855
caps: Use enum classes and check struct sizes on compile time
2020-06-26 08:35:21 -04:00
Morph
02a33feef4
caps: Update copyright headers
...
Updated to "yuzu Emulator Project"
2020-06-26 08:35:21 -04:00
Kewlan
3eb8efc095
Add a "Mute Audio" hotkey
2020-06-26 06:03:29 +02:00
bunnei
c4fe83a7bc
Merge pull request #4159 from ogniK5377/mem-manager-dumb-assert
...
memory_manager: Remove useless assertion
2020-06-25 22:53:13 -04:00
Rodrigo Locatti
5872fc21fe
Merge pull request #4151 from ReinUsesLisp/gl-invalidations
...
gl_shader_cache: Avoid use after move for program size
2020-06-25 21:05:27 -03:00
Ameer J
ecbc813711
const& to button in button array
...
Co-authored-by: VolcaEM <63682805+VolcaEM@users.noreply.github.com>
2020-06-25 19:46:50 -04:00
Ameer
3f739514e3
Stop reading loop if error is encountered
2020-06-25 19:31:51 -04:00
VolcaEM
7d08d548a9
Clang-format again
2020-06-25 23:44:41 +02:00
VolcaEM
b9f0b9dd06
Clang-format
2020-06-25 23:40:53 +02:00
VolcaEM
6582857356
Remove unnecessary newline
2020-06-25 23:38:38 +02:00
VolcaEM
0f4512291a
Merge branch 'master' into quickstart-faq
2020-06-25 23:34:37 +02:00
VolcaEM
a46df40939
Fix typo 2: electric boogaloo
2020-06-25 23:32:43 +02:00
VolcaEM
9e7ac6a009
Use QUrl (2/2)
2020-06-25 23:31:01 +02:00
VolcaEM
5c6adea222
Use QUrl (1/2)
2020-06-25 23:28:38 +02:00
VolcaEM
04497d9e4a
Fix formatting
2020-06-25 23:18:54 +02:00
VolcaEM
5f6e44552a
Fix typo
2020-06-25 23:07:58 +02:00
VolcaEM
57b93395a8
Add "Open Quickstart Guide" and "FAQ" buttons to the Help menu
...
While we're at it, also refactor the function used by OnOpenModsPage to be compatible with other URLs
2020-06-25 23:02:33 +02:00
bunnei
a980b4cbc1
Merge pull request #4136 from VolcaEM/mods
...
Add a "Open Mods Page" button to the GUI
2020-06-25 15:10:18 -04:00
Rodrigo Locatti
ae1f709658
Merge pull request #4160 from ogniK5377/IsASTCSupported-fix
...
gl_device: Fix IsASTCSupported to scan all targets instead of just GL_TEXTURE_2D
2020-06-25 15:58:09 -03:00
David
d11baf8bf8
Merge pull request #4141 from Morph1984/SevenSixAxisSensor
...
hid: Stub a series of "SevenSixAxisSensor" service commands
2020-06-25 19:37:39 +10:00
David Marcec
a927d8be52
gl_device: Fix IsASTCSupported
...
Other targets were never actually checked
2020-06-25 19:12:56 +10:00
David Marcec
38868e5750
memory_manager: Remove useless assertion
...
num_pages is an std::size_t. It will always be >= 0
2020-06-25 16:35:58 +10:00
ReinUsesLisp
bc8d3b8f82
gl_device: Enable NV_vertex_buffer_unified_memory on Turing devices
...
Once we make sure not to corrupt Nvidia's driver, we can safely use
resident buffers on Turing devices.
See GitHub pull request #4156
2020-06-25 01:28:47 -03:00
Morph
2c9308954c
hid: Stub a series of "SevenSixAxisSensor" service commands
...
- Used by Captain Toad: Treasure Tracker Update 1.3.0
While we're at it, fix the input parameters for SetIsPalmaAllConnectable and SetPalmaBoostMode
2020-06-24 11:57:39 -04:00
bunnei
0e1268e507
Merge pull request #4105 from ReinUsesLisp/resident-buffers
...
gl_rasterizer: Use NV_vertex_buffer_unified_memory for vertex buffer robustness
2020-06-24 11:40:30 -04:00
Ameer
c18dc9c707
padbutton enum class and struct initiailization
2020-06-24 11:39:30 -04:00
bunnei
2f2df9a4a7
Merge pull request #4083 from Morph1984/B10G11R11F
...
decode/image: Implement B10G11R11F
2020-06-24 11:02:38 -04:00
David Marcec
510838759f
Prevent nullptr dereference on swkbd error case
2020-06-25 00:25:15 +10:00
David Marcec
2f0b322e72
prepo: : Don't read extra buffer from report unless passed
...
Prepo doesn't always pass a secondary buffer, we assume it always does which leads to a bad read.
2020-06-24 23:01:00 +10:00
Fernando Sahmkow
32343d820d
Merge pull request #4046 from ogniK5377/macro-hle-prod
...
Add support for HLEing Macros
2020-06-24 09:01:00 -04:00
David Marcec
82ecdd0104
Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG
...
Previously if applications would send faulty buffers(example homebrew) it would lead to us returning uninitalized data. Switching from ASSERT_MSG to ASSERT_OR_EXECUTE_MSG allows us to have a fail safe to prevent crashes but also continue execution without introducing undefined behavior
2020-06-24 22:50:27 +10:00
ReinUsesLisp
32a2dcd415
buffer_cache: Use buffer methods instead of cache virtual methods
2020-06-24 02:36:14 -03:00
ReinUsesLisp
39c97f1b65
gl_stream_buffer: Use InvalidateBufferData instead unmap and map
...
Making the stream buffer resident increases GPU usage significantly on
some games. This seems to be addressed invalidating the stream buffer
with InvalidateBufferData instead of using a Unmap + Map (with
invalidation flags).
2020-06-24 02:36:14 -03:00
ReinUsesLisp
41a4090320
gl_rasterizer: Use NV_vertex_buffer_unified_memory for vertex buffer robustness
...
Switch games are allowed to bind less data than what they use in a
vertex buffer, the expected behavior here is that these values are read
as zero. At the moment of writing this only D3D12, OpenGL and NVN through
NV_vertex_buffer_unified_memory support vertex buffer with a size limit.
In theory this could be emulated on Vulkan creating a new VkBuffer for
each (handle, offset, length) tuple and binding the expected data to it.
This is likely going to be slow and memory expensive when used on the
vertex buffer and we have to do it on all draws because we can't know
without analyzing indices when a game is going to read vertex data out
of bounds.
This is not a problem on OpenGL's BufferAddressRangeNV because it takes
a length parameter, unlike Vulkan's CmdBindVertexBuffers that only takes
buffers and offsets (the length is implicit in VkBuffer). It isn't a
problem on D3D12 either, because D3D12_VERTEX_BUFFER_VIEW on
IASetVertexBuffers takes SizeInBytes as a parameter (although I am not
familiar with robustness on D3D12).
Currently this only implements buffer ranges for vertex buffers,
although indices can also be affected. A KHR_robustness profile is not
created, but Nvidia's driver reads out of bound vertex data as zero
anyway, this might have to be changed in the future.
- Fixes SMO random triangles when capturing an enemy, getting hit, or
looking at the environment on certain maps.
2020-06-24 02:36:14 -03:00
ReinUsesLisp
32485917ba
gl_buffer_cache: Mark buffers as resident
...
Make stream buffer and cached buffers as resident and query their
address. This allows us to use GPU addresses for several proprietary
Nvidia extensions.
2020-06-24 02:36:14 -03:00
ReinUsesLisp
73fb3a304b
gl_device: Expose NV_vertex_buffer_unified_memory except on Turing
...
Expose NV_vertex_buffer_unified_memory when the driver supports it.
This commit adds a function the determine if a GL_RENDERER is a Turing
GPU. This is required because on Turing GPUs Nvidia's driver crashes
when the buffer is marked as resident or on DeleteBuffers. Without a
synchronous debug output (single threaded driver), it's likely that
the driver will crash in the first blocking call.
2020-06-24 02:36:14 -03:00
ReinUsesLisp
00c66a7289
gl_stream_buffer: Always use a non-coherent buffer
2020-06-24 02:35:33 -03:00
ReinUsesLisp
da79ec9565
gl_stream_buffer: Always use persistent memory maps
...
yuzu no longer supports platforms without persistent maps.
2020-06-24 02:35:33 -03:00
Rodrigo Locatti
b66ccaa376
Merge pull request #4129 from Morph1984/texture-shadow-lod-workaround
...
gl_shader_decompiler: Workaround textureLod when GL_EXT_texture_shadow_lod is not available
2020-06-24 01:51:15 -03:00
David Marcec
380fbd8cb7
Move GetKeyCodeMapImpl to an anonymous namespace
2020-06-24 13:05:08 +10:00
David Marcec
f5e2aec422
addressed issues
2020-06-24 12:18:33 +10:00
David Marcec
52340e94ac
clear mme draw mode
...
We already draw, so we can clear it
2020-06-24 12:09:04 +10:00
David Marcec
fabdf5d385
Addressed issues
2020-06-24 12:09:03 +10:00
David Marcec
74b4334d51
Fix constbuffer for 0217920100488FF7
2020-06-24 12:09:02 +10:00
David Marcec
6ce5f3120b
Macro HLE support
2020-06-24 12:09:01 +10:00
David Marcec
e3d2b646e0
Fixed logging output
2020-06-24 12:07:41 +10:00
David Marcec
5226610a15
Implement GetKeyCodeMap & GetKeyCodeMap2
...
Closes #3919
2020-06-24 12:05:52 +10:00
bunnei
3bab5a5e4a
Merge pull request #4138 from Morph1984/GyroscopeZeroDriftMode
...
hid: Implement Get/ResetGyroscopeZeroDriftMode
2020-06-23 21:56:16 -04:00
ReinUsesLisp
9f54cd4dad
gl_shader_cache: Avoid use after move for program size
...
All programs had a size of zero due to this bug, skipping invalidations.
While we are at it, remove some unused forward declarations.
2020-06-23 22:54:42 -03:00
bunnei
1d1489da80
Merge pull request #4128 from lioncash/move2
...
software_keyboard: Eliminate trivial redundant copies
2020-06-23 18:24:15 -04:00
Ameer
743e1f02a0
cleanup check access, read, and factory GetNextInput funcs. Use size rather than magic number
2020-06-23 17:37:15 -04:00
bunnei
15aeae3dd3
Merge pull request #4127 from lioncash/dst-typo
...
texture_cache: Fix incorrect address used in a DeduceSurface() call
2020-06-23 15:59:37 -04:00
bunnei
60da57b518
Merge pull request #3948 from Morph1984/log-cpu-instructions
...
main/common: Log/append AVX/FMA to the Host CPU string if available and add AVX512 detection
2020-06-23 15:19:47 -04:00
Ameer
d4e07fd95e
Fix deallocation of GC Adapter
2020-06-23 12:47:58 -04:00
Morph
b8798a995b
yuzu_tester: Silence type conversion warning
2020-06-22 22:56:15 -04:00
Morph
45dac6bc5c
lm: Silence no return value warning
2020-06-22 22:55:32 -04:00
Ameer
901bc09dd7
Small quality of life indication that mapped button is GC
2020-06-22 22:02:50 -04:00
ReinUsesLisp
39ab33ee1c
shader/half_set: Implement HSET2_IMM
...
Add HSET2_IMM. Due to the complexity of the encoding avoid using
BitField unions and read the relevant bits from the code itself.
This is less error prone.
2020-06-22 20:51:18 -03:00
Ameer
fcc23139f6
std::array and const reference passing of non-trivial objects
2020-06-22 18:11:59 -04:00
ameerj
f5d2a1e8bd
Update src/input_common/main.cpp
...
Co-authored-by: LC <mathew1800@gmail.com>
update libusb submodule (hopefully windows build error fixed)
2020-06-22 17:05:50 -04:00
VolcaEM
e193aa3f53
account: Update function tables and add missing classes ( #4145 )
...
* account: Update function tables and add missing classes
* clang-format
* Add missing "public"
* Add missing public again
* Add missing final
2020-06-22 16:03:26 -04:00
Fernando Sahmkow
544b15e8e4
TextureCache: Fix case where layer goes off bound.
...
The returned layer is expected to be between 0 and the depth of the
surface, anything larger is off bounds.
2020-06-22 11:37:40 -04:00
unknown
8cf6efe677
Reorder variables to comply with the Auzure build pipeline
2020-06-22 15:56:41 +02:00
Morph
f2df941e8d
arm_dynarmic_64: Log the instruction when an exception is raised
2020-06-22 07:00:24 -04:00
Morph
e0af4cdf98
arm_dynarmic_32: Log under Core_ARM instead of HW_GPU
2020-06-22 06:59:41 -04:00
Rodrigo Locatti
406d298457
Merge pull request #4110 from ReinUsesLisp/direct-upload-sets
...
vk_update_descriptor: Upload descriptor sets data directly
2020-06-22 05:02:13 -03:00
ReinUsesLisp
2f09c7ddd3
renderer_vulkan: Update validation layer name and test before enabling
...
Update validation layer string to VK_LAYER_KHRONOS_validation.
While we are at it, properly check for available validation layers
before enabling them.
2020-06-22 04:10:45 -03:00
Ameer
28046ae3a9
Tidy up the pointers, use pair over tuple where appropriate
2020-06-21 23:56:56 -04:00
Ameer
0f729ef078
fix for sleep using stl
2020-06-21 22:58:53 -04:00
bunnei
14a1181a97
Merge pull request #4122 from lioncash/hide
...
video_core: Eliminate some variable shadowing
2020-06-21 22:38:04 -04:00
bunnei
c27c76ed43
Merge pull request #4126 from lioncash/noexcept
...
vulkan/wrapper: Remove noexcept from GetSurfaceCapabilitiesKHR()
2020-06-21 22:36:14 -04:00
bunnei
e8855ed0fc
Merge pull request #4134 from FearlessTobi/port-5322
...
Port citra-emu/citra#5322 : "Fix: fatal error CVT1100 when compiling manifest file"
2020-06-21 22:35:17 -04:00
Ameer
46b4461fbb
shared_ptr for the GC adapter class, constexpr constants
2020-06-21 21:50:58 -04:00
Ameer
968d631aa5
std::arrays where appropriate, clear q in adapter class, other touch ups
2020-06-21 21:17:46 -04:00
Ameer
5f0fa4cb82
fix include thread
2020-06-21 21:17:46 -04:00
Ameer
121af3646d
Singleton GC Adapter class, remove globals, fix naming convention
...
Fix clang formatting
Manual fix for configure_input_player formatting
Add missing lib usb cmake command
2020-06-21 21:17:07 -04:00
Morph
0235915baa
hid: Implement Get/ResetGyroscopeZeroDriftMode
...
- Used by Captain Toad Treasure Tracker
2020-06-21 16:25:41 -04:00
Ameer
c94583d867
Clang Formatting
2020-06-21 15:31:57 -04:00
Ameer
0076a08d04
Cleanup after linter
2020-06-21 13:02:43 -04:00
Ameer
0248614add
GC Adapter Implementation
2020-06-21 12:36:28 -04:00
VolcaEM
409fedaf97
Correct function name (2/2)
2020-06-21 18:10:23 +02:00
VolcaEM
182ac8a504
Correct function name (1/2)
2020-06-21 18:09:14 +02:00
VolcaEM
23d57ed4f7
Clang-format
2020-06-21 06:17:46 +02:00
VolcaEM
d11b04ed46
Remove unnecessary conversion
2020-06-21 06:16:03 +02:00
VolcaEM
606e833d26
Address review comment by Lioncash
...
Co-authored-by: LC <mathew1800@gmail.com>
2020-06-21 06:12:23 +02:00
VolcaEM
b81af6ae9b
Add a "Open Mods Page" button to the GUI
2020-06-21 06:09:28 +02:00
Morph
f77c897b8d
gl_shader_decompiler: Enable GL_EXT_texture_shadow_lod if available
...
Enable GL_EXT_texture_shadow_lod if available. If this extension is not available, such as on Intel/AMD proprietary drivers, use textureGrad as a workaround.
2020-06-20 23:02:29 -04:00
Morph
1e65da971b
gl_device: Check for GL_EXT_texture_shadow_lod
2020-06-20 22:14:32 -04:00
bunnei
f98bf1025f
Merge pull request #4120 from lioncash/arb
...
gl_arb_decompiler: Avoid several string copies
2020-06-20 22:11:49 -04:00
FearlessTobi
a8674a7b86
Fix: fatal error CVT1100 when compiling manifest file
...
Occurs when doing a local compile in MSVC build. The compiler I'm using is as below:
Microsoft Visual Studio Community 2019 Preview
Version 16.6.0 Preview 5.0
Fixes this error:
CVTRES : fatal error CVT1100: duplicate resource. type:MANIFEST, name:1, language:0x0409
LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt
I have put 0 since previous name was 1. If have other names in mind, please let me know.
Co-Authored-By: dragios <dragios@users.noreply.github.com>
2020-06-21 03:11:23 +02:00
MerryMage
c12eb814b4
macro_jit_x64: Use ecx for shift register
...
shl/shr only accept cl as their second argument
2020-06-20 22:24:05 +01:00
Lioncash
ef53b2fd08
texture_cache: Fix incorrect address used in a DeduceSurface() call
...
Previously the source was being deduced twice in a row.
2020-06-20 14:11:28 -04:00
merry
928e9c09aa
Merge pull request #4125 from lioncash/macro-shift
...
macro_jit_x64: Amend readability of Compile_ExtractShiftLeftRegister()
2020-06-20 16:08:23 +01:00
merry
2bd903e021
Merge pull request #4123 from lioncash/unused-var
...
macro_jit_x64: Remove unused variable
2020-06-20 16:07:58 +01:00
Lioncash
a5ed0c3df7
software_keyboard: Eliminate trivial redundant copies
...
We can just make use of moves here to get rid of two redundant copies
2020-06-20 01:06:10 -04:00
Morph
9bb5bf0b2b
main: Append AVX and FMA instructions to cpu string
...
Append AVX and FMA instructions to cpu string if the host cpu supports them
2020-06-20 00:31:37 -04:00
Morph
97ba520434
common/telemetry: Add AVX512 to telemetry
2020-06-20 00:31:37 -04:00
Morph
d6474b4aca
common/cpu_detect: Add AVX512 detection
2020-06-20 00:31:37 -04:00
Morph
480e1fa987
decode/image: Implement B10G11R11F
...
- Used by Kirby Star Allies
2020-06-20 00:28:30 -04:00
bunnei
7d1dca4c98
Merge pull request #4099 from MerryMage/macOS-build
...
Fix compilation on macOS
2020-06-19 23:31:04 -04:00
Lioncash
5865a10885
gl_arb_decompiler: Avoid several string copies
...
Variables that are marked as const cannot have the move constructor
invoked when returning from a function (the move constructor requires a
non-const variable so it can "steal" the resources from it.
2020-06-19 23:09:16 -04:00
Lioncash
a6e5b84d1f
vulkan/wrapper: Remove noexcept from GetSurfaceCapabilitiesKHR()
...
Check() can throw an exception if the Vulkan result isn't successful.
We remove the check so that std::terminate isn't outright called and
allows for better debugging (should it ever actually fail).
2020-06-19 23:01:59 -04:00
Lioncash
5a4e89b901
macro_jit_x64: Correct readability of Compile_ExtractShiftLeftImmediate()
...
Previously dst wasn't being used.
2020-06-19 22:57:23 -04:00
Lioncash
140f953b6a
macro_jit_x64: Correct readability of Compile_ExtractShiftLeftRegister()
...
Previously dst wasn't being used.
2020-06-19 22:56:55 -04:00
Lioncash
8ea749c1ca
macro_jit_x64: Remove unused variable
...
Removes a completely unused label and marks another variable as unused,
given it seems like it has potential uses in the future.
2020-06-19 22:10:45 -04:00
Lioncash
479605b3e5
memory_manager: Eliminate variable shadowing
...
Renames some variables to prevent ones in inner scopes from shadowing
outer-scoped variables.
The Copy* functions have no shadowing, but we rename them anyways to
remain consistent with the other functions.
2020-06-19 22:02:58 -04:00
bunnei
9c5ed4408d
Merge pull request #4113 from ogniK5377/boxcat-disable
...
Fix compilation when not building with boxcat
2020-06-19 21:59:59 -04:00
David Marcec
a7fe6dc232
Add translation of "Current Boxcat Events"
2020-06-20 11:57:51 +10:00
Lioncash
811bff009e
macro_jit_x64: Eliminate variable shadowing in Compile_ProcessResult()
...
We can reduce the capture scope so that it's not possible for both "reg"
variables to clash with one another.
While we're at it, we can prevent unnecessary copies while we're at it.
2020-06-19 21:57:44 -04:00
Lioncash
4514b80b3e
buffer_cache: Eliminate local variable shadowing
...
We can just make use of the instance in the scope above this one.
2020-06-19 21:55:02 -04:00
bunnei
7daea551c0
Merge pull request #4087 from MerryMage/macrojit-inline-Read
...
macro_jit_x64: Inline Engines::Maxwell3D::GetRegisterValue
2020-06-19 21:32:07 -04:00
MerryMage
c6a963c48e
input_common/motion_emu: Remove redundant move
...
Named return value optimization automatically applies here.
2020-06-19 14:29:59 +01:00
MerryMage
8272f53cf9
input_common/keyboard: Remove redundant move
...
Named return value optimization automatically applies here.
2020-06-19 14:29:36 +01:00
MerryMage
7236393114
mii_model: Remove redundant std::move
...
Named return value optimization automatically applies here.
2020-06-19 14:29:09 +01:00
David Marcec
c7ed7d9427
Fix compilation when not building with boxcat
...
Fixes compilation when trying to build without boxcat enabled
2020-06-19 22:17:56 +10:00
MerryMage
977ceb4056
macro_jit_x64: Remove unused function Read
2020-06-19 11:39:41 +01:00
bunnei
0f7822acb1
Merge pull request #4080 from ogniK5377/audren-RendererInfo
...
audren: Implement RendererInfo
2020-06-19 01:02:30 -04:00
bunnei
5a092fb61e
Merge pull request #4090 from MerryMage/macrojit-bugs
...
macro_jit_x64: Optimization correctness
2020-06-18 22:28:17 -04:00
ReinUsesLisp
cf137ea40b
vk_rasterizer: Don't preserve contents on full screen clears
...
There's no need to load contents from the CPU when a clear resets all
the contents of the underlying memory. This is already implemented on
OpenGL and the texture cache.
2020-06-18 18:18:33 -03:00
Rodrigo Locatti
de644d506f
Merge pull request #4081 from Morph1984/maxwell-to-gl-vk
...
maxwell_to_gl/vk: Miscellaneous changes
2020-06-18 17:51:41 -03:00
ReinUsesLisp
7d763f060e
vk_update_descriptor: Upload descriptor sets data directly
...
Instead of copying to a temporary payload before sending the update task
to the worker thread, insert elements to the payload directly.
2020-06-18 17:47:19 -03:00
Fernando Sahmkow
45d29436b3
Tests/HostTiming: Correct GCC Compile error.
2020-06-18 16:29:28 -04:00
Fernando Sahmkow
e77ee67bfa
Common/Fiber: Address Feedback and Correct Memory leaks.
2020-06-18 16:29:27 -04:00
Fernando Sahmkow
b6655aa2e4
Common/Fiber: Implement Rewind on Boost Context.
2020-06-18 16:29:27 -04:00
Fernando Sahmkow
59ce6e6d06
Common/uint128: Correct MSVC Compilation in old versions.
2020-06-18 16:29:26 -04:00
Fernando Sahmkow
18f54f7486
Common/Fiber: Document fiber interexchange.
2020-06-18 16:29:26 -04:00
Fernando Sahmkow
137d862d9b
Common/Fiber: Implement Rewinding.
2020-06-18 16:29:25 -04:00
Fernando Sahmkow
41013381d6
Common/Fiber: Additional corrections to f_context.
2020-06-18 16:29:25 -04:00
Fernando Sahmkow
7d2b1a6ec4
Common/Fiber: Correct f_context based Fibers.
2020-06-18 16:29:24 -04:00
Fernando Sahmkow
8f6ffcd5c4
Host Timing: Correct clang format.
2020-06-18 16:29:23 -04:00
Fernando Sahmkow
96b2d8419c
HostTiming: Correct rebase and implement AddTicks.
2020-06-18 16:29:22 -04:00
Fernando Sahmkow
49a7e0984a
Core/HostTiming: Allow events to be advanced manually.
2020-06-18 16:29:22 -04:00
Fernando Sahmkow
1f7dd36499
Common/Tests: Address Feedback
2020-06-18 16:29:21 -04:00
Fernando Sahmkow
3398f701ee
Common: Make MinGW build use Windows Fibers instead of fcontext_t
2020-06-18 16:29:20 -04:00
Fernando Sahmkow
1bd706344e
Common/Tests: Clang Format.
2020-06-18 16:29:19 -04:00
Fernando Sahmkow
03e4f5dac4
Common: Correct fcontext fibers.
2020-06-18 16:29:19 -04:00
Fernando Sahmkow
e3524d1142
Common: Refactor & Document Wall clock.
2020-06-18 16:29:18 -04:00
Fernando Sahmkow
234b5ff6a9
Common: Implement WallClock Interface and implement a native clock for x64
2020-06-18 16:29:17 -04:00
Fernando Sahmkow
0f8e5a1465
Tests: Add base tests to host timing
2020-06-18 16:29:17 -04:00
Fernando Sahmkow
62e35ffc0e
Core: Implement a Host Timer.
2020-06-18 16:29:16 -04:00
Fernando Sahmkow
be320a9e10
Common: Polish Fiber class, add comments, asserts and more tests.
2020-06-18 16:29:15 -04:00
Fernando Sahmkow
8d0e3c5422
Tests: Add tests for fibers and refactor/fix Fiber class
2020-06-18 16:29:15 -04:00
Fernando Sahmkow
bc266a9d98
Common: Implement a basic Fiber class.
2020-06-18 16:29:14 -04:00
Fernando Sahmkow
13ed9438fb
Common: Implement a basic SpinLock class
2020-06-18 16:29:13 -04:00
ReinUsesLisp
778043a44c
arm_dynarmic_32: Fix implicit conversion error in SetTPIDR_EL0
...
On MSVC builds we treat conversion warnings as errors.
2020-06-18 16:52:15 -03:00
MerryMage
778f86989a
bootmanager: Remove references to OpenGL for macOS
...
OpenGL macOS headers definitions clash heavily with each other
2020-06-18 15:47:44 +01:00
MerryMage
b19fe55f84
memory_manager: Explicitly specifcy std::min<size_t>
2020-06-18 15:47:44 +01:00
MerryMage
4f09f0aea4
shared_font: Service::NS::EncryptSharedFont takes a size_t&
2020-06-18 15:47:44 +01:00
MerryMage
69f38355ed
vk_rasterizer: BindTransformFeedbackBuffersEXT accepts a size of type VkDeviceSize
2020-06-18 15:47:44 +01:00
MerryMage
b1eada6079
renderer_vulkan: Fix macOS GetBundleDirectory reference
2020-06-18 15:47:44 +01:00
MerryMage
442e48ef4c
memory_util: boost hashes are size_t
...
* boost::hash_value returns a size_t
* boost::hash_combine takes a size_t& argument
2020-06-18 15:47:43 +01:00
MerryMage
8ae7154541
Rename PAGE_SHIFT to PAGE_BITS
...
macOS header files #define PAGE_SHIFT
2020-06-18 15:47:43 +01:00
VolcaEM
684dfbf209
Move SHA256Hash to its original position
...
It's not needed to have it in its previous position anymore
2020-06-18 15:45:47 +02:00
Morph
2f420618ea
vk_sampler_cache: Emulate GL_LINEAR/NEAREST minification filters
...
Emulate GL_LINEAR/NEAREST minification filters using minLod = 0 and maxLod = 0.25 during sampler creation
2020-06-18 04:56:31 -04:00
Morph
be660e7749
maxwell_to_vk: Reorder filter cases and correct mipmap_filter=None
...
maxwell_to_vk: Reorder filtering modes to start with None, then Nearest, then Linear.
maxwell_to_vk: Logs filter modes under UNREACHABLE_MSG instead of UNIMPLEMENTED_MSG, since any unknown filter modes are invalid and not unimplemented.
maxwell_to_vk: Return VK_SAMPLER_MIPMAP_MODE_NEAREST instead of VK_SAMPLER_MIPMAP_MODE_LINEAR when mipmap_filter is None with the description from the VkSamplerCreateInfo(3) man page.
2020-06-18 04:56:31 -04:00
Morph
8868fb745f
maxwell_to_gl: Miscellaneous changes
...
maxwell_to_gl: Log unimplemented features under UNIMPLEMENTED_MSG instead of LOG_ERROR to bring into parity with maxwell_to_vk
maxwell_to_gl: Deduplicate logging in VertexType(), merging them into one.
maxwell_to_gl: Return GL_NEAREST instead of GL_LINEAR if an unknown texture filter mode is encountered.
maxwell_to_gl: Log the mipmap filter mode if an unknown value is passed in.
maxwell_to_gl: Reorder filtering modes to start with None, then Nearest, then Linear.
2020-06-18 04:56:31 -04:00
Rodrigo Locatti
edb2114bac
Merge pull request #4092 from Morph1984/image-bindings
...
gl_device: Reserve 4 image bindings for fragment stage
2020-06-18 04:59:48 -03:00
MerryMage
44f10d9b9f
macro_jit_x64: Inline Engines::Maxwell3D::GetRegisterValue
2020-06-17 17:17:08 +01:00
MerryMage
52bcfac116
arm_dynarmic_cp15: Implement CNTPCT
2020-06-17 17:10:24 +01:00
MerryMage
109df7705f
arm_dynarmic_cp15: Update CP15
2020-06-17 17:10:24 +01:00