30171 Commits

Author SHA1 Message Date
JosJuice
166bd87f70 PowerPC: Unify "FromJit" MMU functions
This gets rid of the odd argument order we were using for JitArm64.
2023-11-26 14:51:16 +01:00
Tilka
719f1dca29
Merge pull request #12325 from Tilka/vulkan
Vulkan: use EnumMap for blend factor luts (NFC)
2023-11-26 07:12:23 +00:00
Lioncash
05015531a8 SkylanderModifyDialog: Remove unnecessary string conversions 2023-11-25 22:29:44 -05:00
Lioncash
8dfbc45df7 SkylanderModifyDialog: Mark label string as translatable
This is a user-facing string. Also fixes a nearby typo in an error
message string.
2023-11-25 22:29:41 -05:00
Lioncash
cdfabb4524 SkylandersPortalWindow: Directly connect slot in CreateSlotLayout
The interface corresponds with what QCheckBox::toggled wants, so we can
use the member function directly.
2023-11-25 22:16:39 -05:00
Lioncash
24c009f7ce SkylandersPortalWindow: Mark helpers as const/static where applicable
These helpers don't directly modify class state.
2023-11-25 21:44:07 -05:00
Lioncash
6d47d6c08e SkylandersPortalWindow: Remove unnecessary string conversions
Same behavior without a bit of churn.
2023-11-25 21:33:25 -05:00
Tilka
c16e98a31f
Merge pull request #12323 from lioncash/virt
CustomAssetLibrary: Add virtual destructor
2023-11-26 00:54:11 +00:00
Tillmann Karras
e3b1439e1b Vulkan: use EnumMap for blend factor luts (NFC) 2023-11-26 00:36:53 +00:00
Lioncash
04011373f3 CustomAssetLibrary: Remove unnecessary qualifier in LoadInfo
The type is already in visible scope, so we don't need the rather length
qualifier.
2023-11-25 18:01:44 -05:00
Lioncash
b85902ccb5 CustomAssetLibrary: Add virtual destructor
This is used as a base pointer inside CustomPipelineAction, so this
should probably really have a virtual destructor to ensure derived
objects are torn down properly.
2023-11-25 18:01:17 -05:00
Lioncash
644f7f6e55 WC24Send: Add missing header guard
Prevents double inclusions from occurring in the same TU.
2023-11-25 17:53:46 -05:00
Dentomologist
715ba3cd0f NetPlaySetupDialog: Fix spacing in Connect tab
Add a spacer between the alert text and Connect button to prevent the
alert text from migrating down with larger window heights.
2023-11-25 13:14:45 -08:00
Admiral H. Curtiss
76d605639b
Merge pull request #11881 from JosJuice/aarch64-function-call
JitArm64: Add utility for calling a function with arguments
2023-11-25 17:30:42 +01:00
JosJuice
2f407fc854 JitArm64: Don't use farcode for conditional branch instructions
The point of farcode is to provide a separate location for code that
rarely runs, so that it doesn't pollute the icache. Taking a conditional
branch is something that happens very often, so the code for that
shouldn't be in farcode.
2023-11-25 16:40:35 +01:00
Admiral H. Curtiss
afb4be1a90
Merge pull request #12311 from kemenaran/fix-metal-adapter-unknown-selector
Metal: fix crash by enabling concurrent compilation only if available
2023-11-24 21:52:32 +01:00
Pierre de La Morinerie
0ecfaf3b9e
Metal: enable concurrent compilation only if available
Bug: https://bugs.dolphin-emu.org/issues/13404

On macOS 13.6 / Intel HD 5000, Dolphin crashes with this message:

> -[MTLIGAccelDevice setShouldMaximizeConcurrentCompilation:]: unrecognized selector

This should be available on all macOS 13.3+ systems – but when using OCLP drivers,
some devices use an older version of Metal.framework, which doesn't expose the selector.

This concerns Intel Ivy Bridge, Haswell and Nvidia Kepler when using OCLP on macOS 13.3
or newer.
(See
34676702f4/docs/PATCHEXPLAIN.md (L354C1-L354C83))

As the behavior is an optional optimization anyway, perform a dynamic
detection to avoid crashing if the feature is not available.
2023-11-24 15:09:25 +01:00
Admiral H. Curtiss
feeac104d8
Merge pull request #12304 from sepalani/pcap-io
BBA/HLE: Fix random PCAP file corruption
2023-11-23 19:26:00 +01:00
Sepalani
91020ac4fa BBA/HLE: Fix random PCAP file corruption
Concurrency between RecvHandlePacket and SendFromDirectFIFO
2023-11-23 22:07:44 +04:00
Admiral H. Curtiss
937cb8ef3a
Merge pull request #12299 from TryTwo/PR_bugfix_frame_advance
Core: Add option to not report state change to SetState (bugfix)
2023-11-22 23:10:51 +01:00
Admiral H. Curtiss
1cfa29f090
Merge pull request #12303 from Pokechu22/dsp-hle-aesnd-2023
DSPHLE: Support 2023 libaesnd uCode
2023-11-22 23:05:38 +01:00
Tillmann Karras
77a1eaa740 IOS: fix crash when closing invalid file descriptor
This regression was introduced in 5.0-20284.
2023-11-21 12:00:34 +00:00
Tilka
f79c88f30b
Merge pull request #12302 from JosJuice/jit-replace-vectors
Jit: Get rid of short-lived std::vectors
2023-11-20 18:11:15 +00:00
iwubcode
321e5051db Externals: update xxhash to 0.8.2 as submodule; put in logic to ensure LZ4 which is also using xxhash does not clash when linking symbols 2023-11-19 14:22:59 -06:00
Pokechu22
2d7a078d53 DSPHLE: Support 2023 libaesnd uCode
Fixes https://bugs.dolphin-emu.org/issues/13401
2023-11-19 10:16:47 -08:00
JosJuice
c3c0c7dc1c Jit: Get rid of short-lived std::vectors
Let's aim for making as few heap allocations as possible while jitting.
2023-11-18 23:15:37 +01:00
Tillmann Karras
da1bf29722 AX: fix envelope volume for Wii ucodes
Technically it is signed in the 0x7699af32 ucode but that's only used
by the Wii Startup Disc which never uses negative values.
2023-11-16 21:43:45 +00:00
TryTwo
b57ba42a55 Core::SetState() allow state to change without sending a callback.
Some state changes are meant to be near instantanoues, before switching to something else. By reporting ithe instant switch, the UI will flicker between states (pause/play button) and the debugger will unnecessarily update. Skipping the callback avoids these issues.
2023-11-16 11:07:37 -07:00
TryTwo
df8c0d2b39 Core::GetState() bugfix: remove forced incorrect state on frame advance.
This was implemented to prevent UI flickering due to  the state rapidly switching between pause/play.  Recently, it has been causing issues with debugger windows, which update during frame advance.
2023-11-16 10:41:53 -07:00
Shoegzer
1d848c554d Update default IP for HLE BBA 2023-11-14 15:00:06 -05:00
Filoppi
a8fd938a06 Change paper white default to 203 to match the ITU 2023-11-14 20:21:34 +02:00
JosJuice
6a9f565ac4 JitArm64: Optimize Arm64GPRCache::FlushRegisters/FlushCRRegisters
This way, the number of loop iterations is equal to the number of set
bits in the bitset rather than the number of bits in the bitset,
which is a good improvement because usually very few bits are set.
2023-11-13 18:28:51 +01:00
JosJuice
2ea95f5835 JitArm64: Use BitSet8 for Arm64GPRCache::FlushCRRegisters
There are only 8 CR registers, after all.
2023-11-13 18:28:51 +01:00
Sepalani
13e76500c2 BBA/HLE: Fix GC homebrew if_config not working 2023-11-13 19:32:03 +04:00
Tilka
87c27936fc
Merge pull request #12238 from AdmiralCurtiss/achievementheaderwidget-unused-variables
DolphinQt/AchievementHeaderWidget: Remove unused member variables.
2023-11-12 21:24:17 +00:00
Tilka
aa1311cd78
Merge pull request #12268 from JosJuice/fastmem-terminology
Jit: Define new terms related to fastmem
2023-11-12 19:44:45 +00:00
Tilka
166423ad61
Merge pull request #12273 from Dentomologist/dolphinqt_remove_unnecessary_qoverloads
DolphinQt: Remove unnecessary qOverloads
2023-11-12 19:43:05 +00:00
Tilka
4b38560323
Merge pull request #12282 from Wack0/mmu-tlb-patch
MMU: Use VSID in segment register as additional TLB lookup key
2023-11-12 19:41:23 +00:00
Tilka
15a3200b70
Merge pull request #12288 from Pokechu22/bp-stride-scale-fallthrough
Fix accidental fallthrough in BPStructs
2023-11-12 19:35:37 +00:00
Tilka
4285e9d8aa
Merge pull request #12276 from Tilka/ax_volume
AX: make volume field signed
2023-11-12 19:35:15 +00:00
Pokechu22
3984d1964b Fix accidental fallthrough in BPStructs
This caused us to update the indirect texture information in shaders more often than we needed to, which probably doesn't matter in practice since it's only used in ubershaders and copyyscale and stride are generally only updated before EFB/XFB copies, which generally will have other changes afterwards.
2023-11-12 10:39:56 -08:00
Tilka
e7b922ee62
Merge pull request #12286 from Pokechu22/more-bp-register-descriptions
Add descriptions for more BP registers
2023-11-12 07:59:32 +00:00
Pokechu22
da8407e01c Add descriptions for more BP registers 2023-11-11 23:32:17 -08:00
Pokechu22
dfdb9a4a07 Clarify per-texture tmem information in the fifo analyzer 2023-11-11 23:32:17 -08:00
Pokechu22
ea41d0e384 Convert BPMEM_LOADTLUT1 to a struct 2023-11-11 23:32:17 -08:00
Pokechu22
2a1d445b30 Enhance description of BPMEM_PRELOAD_MODE in the fifo analyzer 2023-11-11 23:32:17 -08:00
Pokechu22
6bad17b170 Rename bpmem.copyMipMapStrideChannels to bpmem.copyDestStride
As far as I can tell, it has nothing to do with the mipmap/half_scale functionality, but does change based on the width of the destination texture (and the destination texture is half the width if half_scale is set). The comment that was there (which dates back to the initial megacommit) seems to not have accounted for the width aspect; it was first used as an actual stride in bbbe898839467c312c31456334540c20fedc7be3 (the first commit that used it at all).
2023-11-11 23:32:14 -08:00
Tillmann Karras
ac9079f2ca VideoCommon: copy software renderer logic for blend mode priorities
I've not tested this on hardware, but it fixes issue 12271 (shadow
people in Deal or No Deal - Special Edition).
2023-11-12 05:51:28 +00:00
Pokechu22
9543555bfe Fix typo in comment for bpmem.texcoords 2023-11-11 16:13:37 -08:00
Rairii
2333fc2701 MMU: Use VSID in segment register as additional TLB lookup key 2023-11-11 15:59:47 +00:00