Commit Graph

36634 Commits

Author SHA1 Message Date
9b6555c49c Force NetPlay Clients to Host Hardcore Status
If the host is in hardcore mode, all joining players will be set to hardcore mode; if not, all joining players will be set to softcore. This ensures all players have the same settings and remain synchroized.
2024-11-10 09:40:47 -05:00
ef71c75458 Add Config Changed Callback for Hardcore Mode 2024-11-10 08:38:00 -05:00
deee3ee410 Merge pull request #13184 from LillyJadeKatrin/retroachievements-forever-dim
Add Approved Patches - Eternal Darkness, Monster Hunter Tri
2024-11-09 00:29:52 -05:00
60a0efc69c Add Approved Patches - Eternal Darkness, Monster Hunter Tri
The primary focus of this PR is the Eternal Darkness patch which fixes hanging at startup, which prior to this fix makes Eternal Darkness unplayable in hardcore. The MHTri patch was added as well simply because it could be.
2024-11-08 23:07:06 -05:00
fbce737415 ProcessorInterface: sync GPU just before PI_FIFO_RESET
GXAbortFrame() is problematic for Dolphin because it first writes
PI_FIFO_RESET (for which we discard our internal fifo), then disables CP
reads (for which we execute pending commands in the GP fifo in emulated
memory). I don't know whether there is a race condition on hardware, but
there is one for us. Avoid this by also doing a GPU sync here.
2024-11-09 03:29:05 +00:00
4b0b9799a9 Merge pull request #13000 from tygyh/Simplify-type-specifiers
Remove redundant elaborated type specifiers
2024-11-08 23:59:08 +00:00
edb947df4f WiimoteEmu: Remove disabled and no-longer-compiling wav dumping code. 2024-11-08 15:38:05 -06:00
5078a63084 InputCommon: Add ternary conditional operator to input expressions. 2024-11-07 08:31:25 -06:00
7e1074b140 Merge pull request #13172 from deReeperJosh/superchargersfix
IOS/USB: Reconnect HIDv4 Devices after shutdown
2024-11-05 15:02:22 -05:00
83ed817ad2 ControllerInterface/SDL: Add Battery Input. 2024-11-04 22:24:42 -06:00
0488ade1dc DSPHLE/AXWii: fix Elebits sound
Regressed in 37ebb13ece.
2024-11-04 20:47:55 +00:00
6dbffd1fee IOS/USB: Reconnect HIDv4 Devices after shutdown 2024-11-04 20:12:38 +00:00
59530966f9 Merge pull request #13164 from jordan-woyak/saveable-deduction
Config/IsSettingSaveable: Use class template argument deduction.
2024-11-04 11:05:28 +01:00
b8823457c1 Merge pull request #13165 from jordan-woyak/FullAnalogSurface-rename
InputCommon: Rename AddAnalogInputs to AddFullAnalogSurfaceInputs.
2024-11-04 11:04:50 +01:00
346a9e0f97 InputCommon: Move FullAnalogSurface class definition out of header file. 2024-11-03 15:06:50 -06:00
2f1390e9f9 InputCommon: Rename AddAnalogInputs to AddFullAnalogSurfaceInputs. 2024-11-03 15:06:50 -06:00
47a86d920f GeneralWidget: Recommend default video backend in tooltip
Recommend the platform's default video backend in the Backend tooltip
instead of always recommending OpenGL.
2024-11-03 12:28:30 -08:00
7b8610f4ea VideoBackendBase: Clarify function name
Rename GetDefaultBackendName to GetDefaultBackendConfigName to
distinguish it from the display name.
2024-11-03 12:26:57 -08:00
2f38a00534 InputCommon: Disable DualSense Player LED 2024-11-02 16:49:36 -07:00
a307d9d9b8 JitArm64_LoadStore: Optimize zero stores in stX
The value being stored must be loaded into a register. In the case of an
immediate value, this means it must be materialized. The value is
eventually byteswapped before performing the store.

This can be simplified for the value 0 for two reasons:
- ARM64 has a dedicated zero register, so does not need to be
  materialized.
- Byteswapping zero is still zero, so we can skip this step.

We could skip byteswapping for other values by immediately materializing
the byteswapped value in a register, but the benefits are not so clear
there (if the value needs to be materialized anyway, it is better to do
it up front).

Before:
0x5280001b   mov    w27, #0x0                 ; =0
0xb9404fba   ldr    w26, [x29, #0x4c]
0x12881862   mov    w2, #-0x40c4              ; =-16580
0x0b020342   add    w2, w26, w2
0x5ac00b61   rev    w1, w27
0xb8226b81   str    w1, [x28, x2]

After:
0xb9404fbb   ldr    w27, [x29, #0x4c]
0x12881862   mov    w2, #-0x40c4              ; =-16580
0x0b020362   add    w2, w27, w2
0xb8226b9f   str    wzr, [x28, x2]
2024-11-02 23:15:22 +01:00
0fd5e86677 Config/IsSettingSaveable: Remove unused includes. 2024-11-02 16:23:49 -05:00
8da7a86b96 Config/IsSettingSaveable: Use class template argument deduction. 2024-11-02 16:22:54 -05:00
97931a718f Merge pull request #13151 from mitaclaw/core-global-system-6
MainWindow: Avoid Global System Accessor
2024-11-02 12:04:28 +00:00
980a726313 JitArm64: Drop GetCRFieldBit's negate parameter
No caller is using it anymore.
2024-11-02 10:51:48 +01:00
71e9766519 JitArm64: Use BIC/EON/ORN in crXXX
This lets us save an instruction in certain scenarios.
2024-11-02 10:51:38 +01:00
9246bcad55 JitArm64: Add negate parameter to SetCRFieldBit
Unlike on x64, inverting EQ or GT in SetCRFieldBit saves us one
instruction. Also unlike on x64, inverting SO or LT in GetCRFieldBit
requires an extra instruction (just like in SetCRFieldBit). Due to this,
replacing an invert in GetCRFieldBit with an invert in SetCRFieldBit
when possible is either equally good or better - never worse.
2024-11-02 10:48:27 +01:00
7fddd39d97 JitArm64: Port some crXXX optimizations from Jit64 2024-11-02 10:24:02 +01:00
bbe271eec6 JitArm64: Refactor CR bit manipulation code
This brings JitArm64 more in line with Jit64, and makes the next commit
easier to implement. No functional change.
2024-11-02 10:19:31 +01:00
d920064779 Add include guard to QtUtils.h 2024-11-02 01:27:07 -05:00
000e8fd83d Merge pull request #13157 from jordan-woyak/sdl-hotplug-fix
ControllerInterface/SDL: Fix device removal event processing.
2024-11-01 18:11:17 -04:00
d361d4ba6e ControllerInterface/SDL: Fix device removal event processing. 2024-10-31 14:11:27 -05:00
149a3721ff DolphinQt: Ensure skylanders QDateTimeEdit shows a four digit year without forcing dd-mm-yyyy format. 2024-10-31 02:38:45 -05:00
bffc26da27 DolphinQt: Rename "GameCube Adapter for Wii U" to "GameCube Controller Adapter". 2024-10-31 01:25:36 -05:00
19c3b88e5a ControllerInterface/SDL: Disable SDL's Windows.Gaming.Input controller handling. 2024-10-30 17:41:09 -05:00
adafe1f347 Merge pull request #13147 from mitaclaw/jit-block-table-model-fix
JitBlockTableModel: Catch All Block Invalidating Events (I Hope)
2024-10-30 17:00:27 -04:00
1ba3a141a2 Merge pull request #13143 from TellowKrinkle/PrimBreaking
VideoCommon: Implement primitive breaking for primitive lists
2024-10-30 12:15:11 -04:00
5ef4fcb005 VideoCommon: Implement primitive breaking for primitive lists 2024-10-29 22:38:22 -05:00
2764a3dc44 Merge pull request #13136 from Tilka/startup_patch
Core: apply Dolphin OnFrame patches right after boot
2024-10-30 04:28:18 +01:00
bab34ca060 Merge pull request #13140 from dreamsyntax/skip-efb-default-flip
GraphicsSettings: EFBAccessEnable=false by default
2024-10-28 18:58:37 -04:00
1012803f2e Merge pull request #12954 from LillyJadeKatrin/retroachievements-confirm
Achievements Confirmation Dialogs
2024-10-28 12:54:37 -04:00
aa8226fa88 Merge pull request #12744 from nlebeck/settingshandler-split-2
Split `SettingsHandler` into separate reader and writer classes
2024-10-27 19:23:05 -04:00
96c9591b99 Merge pull request #13096 from mitaclaw/ranges-modernization-7-rewrite
Ranges Algorithms Modernization - Rewrite
2024-10-27 19:17:01 -04:00
92b8d57e6f Merge pull request #13144 from JosJuice/jitarm64-imm-stp
JitArm64: Allow ppcState STP optimization for imm
2024-10-27 10:59:00 +01:00
12f8b11452 MainWindow: Avoid Global System Accessor 2024-10-24 21:41:35 -07:00
0371b74ebf JitBlockTableModel: Update For Symbols Too
Flushing efficiency down the drain because I wrote unsafe code to achieve it... I hope I can recover this.
2024-10-24 18:10:52 -07:00
e6fd843c0b JitArm64_LoadStore: Small dcbx optimization
MUL and SUB can be combined in one instruction.

Before:
0x1b1a7c01   mul    w1, w0, w26
0x4b010318   sub    w24, w24, w1

After:
0x1b1ae018   msub   w24, w0, w26, w24
2024-10-24 23:05:42 +02:00
5165ddea52 DolphinQt: Remove a stray period from the Audio tab 2024-10-24 21:24:40 +02:00
c212c0d08e Merge pull request #12868 from Sintendo/scoped-reg
JitArm64: Release temporary regs with RAII
2024-10-24 21:01:53 +02:00
5a95951751 DolphinQt: Signal Host::JitCacheInvalidation in more places 2024-10-23 23:43:25 -07:00
3d9c728910 Host: Rename JitCacheInvalidation
There are two hard problems in computer science...
2024-10-23 23:43:24 -07:00