Commit Graph

37956 Commits

Author SHA1 Message Date
6992b0d8e1 VideoBackends:Vulkan: Allocate descriptor pools as needed 2022-10-16 17:04:35 +02:00
4b6086b20a Merge pull request #11098 from K0bin/refresh-efb-cache
VideoCommon: Update EFB peek cache on draw done and tokens
2022-10-04 22:40:58 -04:00
5479f0e776 Merge pull request #11119 from AdmiralCurtiss/vulkan-panic-alerts
Vulkan/CommandBufferManager: Show error code in PanicAlerts.
2022-10-04 11:11:11 -07:00
eea31db781 Vulkan/CommandBufferManager: Show error code in PanicAlerts. 2022-10-04 19:50:23 +02:00
Mai
078777e804 Merge pull request #11118 from AdmiralCurtiss/vi-globals
HW: Move VideoInterface variables to Core::System.
2022-10-04 10:42:42 -04:00
9c944d5734 HW: Move VideoInterface variables to Core::System. 2022-10-04 02:25:12 +02:00
052c7395fb Merge pull request #9624 from JosJuice/input-override
Add new "input override" system for TAS input and Android touch controls
2022-10-03 16:25:40 -04:00
51ee05cb35 Android: Use input override system for touch controls
This is the first step of getting rid of the controller indirection
on Android. (Needing a way for touch controls to provide input
to the emulator core is the reason why the controller indirection
exists to begin with as far as I understand it.)
2022-10-03 22:04:09 +02:00
b296248b49 DolphinQt: Use input override system for TAS input windows
This lets the TAS input code use a higher-level interface for
overriding inputs instead of having to fiddle with raw bits.
WiiTASInputWindow in particular was messy with how much
controller code it had to re-implement.
2022-10-03 22:04:09 +02:00
8fd25259ee ControllerEmu: Round input floats instead of casting, part 2
Like 3bc4968 but for Wii Remote extensions. I'm doing this to ensure
that TAS input values will still roundtrip after the next commit.
2022-10-03 22:04:08 +02:00
cb16d20f2d ControllerEmu: Add new "input override" system 2022-10-03 22:00:21 +02:00
cb6d476538 Merge pull request #11106 from vpelletier/dsp_doc_bloop
docs/DSP: Trivial adjustment to BLOOP{,I} sub-operation order
2022-10-03 11:29:03 -07:00
23806f8d60 Merge pull request #11070 from AdmiralCurtiss/netplay-wiimotes
Netplay: Redesign Wiimote data exchange.
2022-10-02 18:00:10 -04:00
e137f7f878 WiimoteEmu: Rewrite serialization of DesiredWiimoteState to optimize for network bandwidth. 2022-10-02 23:25:15 +02:00
ae4b89441c Qt/WiimoteControllersWidget: Disable remote Wiimote configuration during netplay. 2022-10-02 23:25:15 +02:00
a1563f2def Netplay: Implement batching for Wiimotes. 2022-10-02 23:25:10 +02:00
aade584180 Netplay: Completely rewrite Wiimote syncing logic to be similar to the GameCube controller one. 2022-10-02 23:22:02 +02:00
f8518b2ff6 WiimoteEmu: Add serialization for DesiredWiimoteState. 2022-10-02 23:14:36 +02:00
a2dadbb2f0 Wiimote: Separate the Input system state update from the emulated state update. 2022-10-02 23:14:36 +02:00
bb5943ae77 Wiimote: Separate the Wiimote index in the Input system from the index of the Wiimote in the emulated system. 2022-10-02 23:14:36 +02:00
b67ffb9ab5 WiimoteEmu: Make Reset() deterministic under WantsDeterminism(). 2022-10-02 23:14:36 +02:00
466f0b377b WiimoteEmu: Update extensions from DesiredWiimoteState. 2022-10-02 23:14:35 +02:00
e7543a9e05 WiimoteEmu: Update MotionPlus status from DesiredWiimoteState. 2022-10-02 23:14:35 +02:00
26fd4ea361 WiimoteEmu: Update IR camera status from DesiredWiimoteState. 2022-10-02 23:14:35 +02:00
9669722dfc WiimoteEmu: Update accelerometer status from DesiredWiimoteState. 2022-10-02 23:14:35 +02:00
a39f82cb1f WiimoteEmu: Update button status from DesiredWiimoteState. 2022-10-02 23:14:34 +02:00
52424fe327 Qt: Allow opening controller settings during netplay. 2022-10-02 23:14:34 +02:00
bc47a9a31a Qt/WiimoteControllersWidget: Disable potentially breaking stuff during netplay. 2022-10-02 23:13:26 +02:00
37ae9ab524 Qt/GamecubeControllersWidget: Disable dropdowns during netplay. 2022-10-02 23:10:43 +02:00
15393f0344 Merge pull request #11115 from AdmiralCurtiss/dsp-globals
HW: Move DSP variables to Core::System.
2022-10-01 23:07:00 -07:00
95cace837a HW: Move DSP variables to Core::System. 2022-10-02 05:13:55 +02:00
c84835c53c Merge pull request #11114 from JosJuice/jitarm64-divwx-imm
JitArm64: Fix divwx BindToRegister condition
2022-10-02 01:10:48 +02:00
6911e1b730 Merge pull request #11113 from DivineWinds/translate_tooltip
DolphinQt/HacksWidget: Make backend name in GPU Texture Decoding/Bounding Box tooltip translatable
2022-10-02 00:16:25 +02:00
2f0358a75e Merge pull request #10547 from AdmiralCurtiss/save-state-threading
Core/State: Rewrite threading behavior when multiple Save requests are happening.
2022-10-02 00:16:03 +02:00
f3a23db0e0 Core/State: Minor cleanup around the undo load state buffer. 2022-10-02 00:01:01 +02:00
e0d30e371c Core/State: Rewrite threading behavior when multiple Save requests are happening. Should improve responsiveness when eg. mashing a save state button. 2022-10-02 00:00:29 +02:00
79efd5df1e Common/WorkQueueThread: Make Shutdown() public, so users can wait for all currently queued tasks to finish when shutting down the thread. 2022-10-01 23:58:52 +02:00
8984777749 JitArm64: Call GetImm before BindToRegister
In case the register we're binding is the same as the immediate register,
we should fetch the immediate before calling BindToRegister. The way
the register cache currently works, calling GetImm after BindToRegister
actually does work, but it's better to not rely on it.
2022-10-01 20:44:51 +02:00
8902d2fe3a JitArm64: Fix divwx BindToRegister condition
a is being used both as an immediate and as a register here.
Since it's being used as a register, it must be loaded.
2022-10-01 19:29:41 +02:00
779fe13e62 VideoCommon: Update EFB peek cache on draw done and tokens
Massively improves performance in Mario Galaxy on Android.
2022-10-01 18:08:38 +02:00
37892a8611 DolphinQt/HacksWidget: Make backend name in GPU Texture Decoding/Bounding Box tooltip translatable 2022-10-01 12:32:49 +03:00
c196c47e81 Merge pull request #11090 from K0bin/submit-rework
Vulkan: Raise number of command buffers
2022-09-30 20:15:25 -04:00
e5fb9c9adf VideoBackends:Vulkan: Raise number of command buffers
Avoid waiting for earlier submissions when we flush more often.
The vertex manager will flush more often if the game accesses the EFB
on the CPU, to give the GPU a head start.
2022-10-01 01:26:04 +02:00
fba7d35f94 VideoBackends:Vulkan: Associate descriptor pool with frame rather than command buffer 2022-10-01 01:26:04 +02:00
ed75a58061 VideoBackends:Vulkan: Decouple available command buffers from frames in flight 2022-10-01 01:26:04 +02:00
e8fa867f14 VideoBackends:Vulkan: Only synchronize with submission thread when necessary
We only need to synchronize with the submission thread
when submitting on the GPU thread or when waiting for a command buffer.
2022-10-01 01:26:04 +02:00
2e6d8d6575 VideoBackends:Vulkan: Fix validation error around surface_capabilities2 2022-10-01 01:26:03 +02:00
68eda7f887 Merge pull request #11084 from K0bin/qcom-workaround
Vulkan: Workaround slow vkCmdCopyImageToBuffer on QCom
2022-09-30 15:33:00 -04:00
81c817c54d VideoBackends:Vulkan: Workaround slow vkCmdCopyImageToBuffer on QCom driver 2022-09-30 21:13:42 +02:00
099e6c9ab6 docs/DSP: Trivial adjustment to BLOOP{,I} sub-operation order
Noticed while tracing in a BLOOP using DSPSpy with $st{0..3} unmasked.
BLOOPI assumed to follow the pattern.
2022-09-30 11:07:41 +00:00