45067 Commits

Author SHA1 Message Date
JMC47
823d111922 Merge pull request #14255 from JoshuaVandaele/bsd-fix
cpp-ipc: Fix builds on non-FreeBSD BSDs
2026-01-11 16:27:29 -05:00
JMC47
28a8fa5de6 Merge pull request #14229 from JoshuaVandaele/zlib-ng
Externals: Update zlib-ng to v2.3.2
2026-01-11 16:03:18 -05:00
JMC47
79255f550d Merge pull request #14275 from JosJuice/hotkey-vector
HotkeyManager: Don't allocate heap memory in GetInput
2026-01-11 15:41:03 -05:00
JosJuice
3c771ade4b HotkeyManager: Don't allocate heap memory in GetInput
Profiling Dolphin using Heaptrack, this turns out to be the cause of
more than half of all temporary allocations. Though since it's in a
separate thread, I suppose it wasn't affecting performance very much.
2026-01-11 21:14:34 +01:00
JosJuice
c54dc9db60 JitRegister: Check IsEnabled before constructing string
Without this, every time we finalize a JIT block, we have to allocate
memory for a string and format the string.
2026-01-11 21:01:49 +01:00
JosJuice
3ea366119f Jit64: Make TrampolineInfo smaller
Combined with the previous commit, this brings the TrampolineInfo struct
down to 48 bytes. This matters, because Jit64 has a big
std::unordered_map where it stores many megabytes of TrampolineInfo
entries.

The key saving comes from shrinking the len member from u32 to u16. It
should be safe to even turn it into a u8, but going that far brings no
additional savings due to how the padding works out.
2026-01-11 19:12:26 +01:00
JosJuice
283218bc29 x64Emitter: Reduce padding in OpArg
By moving members of the OpArg struct around, we can cut down on how
much padding the struct needs. Now it has a size of 16 bytes, small
enough for function calls to pass it in two registers instead of on the
stack.
2026-01-11 19:07:08 +01:00
OatmealDome
e065b34a64 Merge pull request #14272 from OatmealDome/liquid-glass-begone
DolphinQt: Disable Liquid Glass on macOS when built with Xcode 26
2026-01-09 22:28:16 -05:00
Joshua Vandaële
55f0715ad4 c++23: Replace Common::ToUnderlying with std::to_underlying
Requires at least GCC 11, Clang 13, MSVC 19.30 (VS2022 17.0), or AppleClang 13.1.6 (XCode 13.3).
2026-01-09 23:49:10 +01:00
Dentomologist
2e940420c9 Merge pull request #14269 from LillyJadeKatrin/retroachievements-dev-freeze-possible-fix
Fix RetroAchievements dev search freezes
2026-01-09 12:35:17 -08:00
OatmealDome
6be6e7734b DolphinQt: Disable Liquid Glass on macOS when built with Xcode 26 2026-01-09 08:27:12 -05:00
LillyJadeKatrin
dfba2802ad Fix RetroAchievements dev search freezes
Re-added a line of code from a cancelled PR (that I thought was in
main already) that RetroAchievements uses to properly synchronize
memory reads and writes with the emulator frames. This appears to
fix some pretty major freezing and deadlocks in the RA dev tools.
2026-01-09 08:20:21 -05:00
iwubcode
cc0ce62e7f Merge pull request #14252 from Dentomologist/set_standard_to_c++23
Set standard to c++23 for non-MSVC compilers
2026-01-08 14:35:17 -06:00
Dentomologist
fa374187d4 Merge pull request #14249 from jordan-woyak/iowin-check-bt-name
WiimoteReal/IOWin: Determine the Bluetooth name of HID interfaces to identify Balance Boards
2026-01-08 12:19:36 -08:00
Joshua Vandaële
ca999509e5 SDL: Enable CCache if wanted 2026-01-08 18:24:35 +01:00
Joshua Vandaële
6cc121aceb DInputKeyboardMouse: Always report all possible buttons 2026-01-07 01:08:34 +01:00
Dentomologist
cc2db2ce15 Set standard to c++23 for non-MSVC compilers 2026-01-06 14:49:40 -08:00
Dentomologist
ba32260c29 Set CMake version range to 3.20...4.2.1
CMake support for c++23 was added in 3.20.

Remove statements explicitly setting the following policies to NEW.
These policies were introduced in or before 3.20, and now that 3.20 is
the minimum version they will automatically have the NEW behavior.

Policy:  Introduced in
CMP0079: 3.13
CMP0084: 3.14
CMP0091: 3.15
CMP0092: 3.15
CMP0099: 3.17
CMP0117: 3.20

Disable scanning c++ source files for module imports (introduced as
CMP0155 in 3.28) since we don't use modules and that policy triggers
build errors with Clang if the clang-scan-deps tool isn't installed.
2026-01-06 14:44:20 -08:00
Tillmann Karras
de214d74c3 GameSettings: improve We Cheer and We Cheer 2 default settings
Also use lowercase 'ini' file extension.
2026-01-06 22:30:44 +00:00
Joshua Vandaële
2005b0365e cpp-ipc: Fix builds on non-FreeBSD BSDs
cpp-ipc is explicitely only available on Windows, Linux, QNX, and FreeBSD. Trying to build dolphin on any another BSD such as OpenBSD or Haiku currently leads to failure because of this.
2026-01-06 21:46:33 +01:00
JosJuice
2098b4b1ca DSP: Remove HLEMemory functions
During my quest to rid Dolphin of the memory-unsafe GetPointer function,
I didn't realize that DSPHLE had its own set of memory access functions
that were essentially duplicating the standard ones. This commit gets
rid of them and replaces calls to them with calls to MemoryManager.
2026-01-05 16:15:17 +01:00
Dentomologist
af585e0bd0 Metal: Move ObjectCache constructor and destructor
Move the constructor and destructor after the definition of the class
`Internal`.

This fixes an error generated by Clang from the destructor of
`std::unique_ptr<Internal>` when setting the standard version to c++23:

`invalid application of 'sizeof' to an incomplete type 'Metal::ObjectCache::Internal'`.
2026-01-04 17:56:25 -08:00
Dentomologist
b1c9c13ca3 VolumeFileBlobReader: Define default destructor in source file
Fix an error generated by Clang from the destructor of
`std::unique_ptr<FileInfo> m_file_info` when setting the standard
version to c++23:

`invalid application of 'sizeof' to an incomplete type 'DiscIO::FileInfo'`
2026-01-04 17:56:08 -08:00
Craig Carnell
e4f6d9bad4 mingw: move ReadValue instantiations in cpp for compatibility 2026-01-04 21:16:30 +00:00
Joshua Vandaële
7f6bf67182 CMake: Apply editorconfig formatting 2026-01-04 12:59:56 +01:00
Joshua Vandaële
75560925f1 .editorconfig: Update CMake style
Our CMakeLists.txt and CMake files primarly use two spaces for indenting, and from what I've seen we enforce a final newline during PR reviews.
2026-01-04 12:53:12 +01:00
Jordan Woyak
cb07f9608c WiimoteReal/IOWin: Determine the Bluetooth name of HID interfaces to differentiate between Wii Remotes and Balance Boards. 2026-01-03 16:50:39 -06:00
Jordan Woyak
fb2a46c4cf Merge pull request #14248 from jordan-woyak/windows-balance-board-fix
WiimoteReal/IOWin: Fix Real Balance Board connections.
2026-01-03 16:48:39 -06:00
JosJuice
89a03199b1 Merge pull request #14247 from jordan-woyak/fix-wiiware
DiscIO/Volume: Fix CreateVolume for WiiWare.
2026-01-03 19:01:03 +01:00
Jordan Woyak
918a419131 WiimoteReal: Immediately disconnect balance boards when disabled rather than placing them in the temporary pool. 2026-01-03 04:59:55 -06:00
Jordan Woyak
17a518ef30 WiimoteReal/IOWin: Fix Real Balance Board connections. 2026-01-02 15:56:32 -06:00
Jordan Woyak
93e5f58460 DiscIO/Volume: Fix CreateVolume for WiiWare. 2026-01-02 14:55:20 -06:00
Jordan Woyak
74c5ca79e2 Merge pull request #14226 from Mrlinkwii/SFML
Externals :update SFML to 3.0.2
2026-01-01 18:45:27 -06:00
Jordan Woyak
17dddfad46 Merge pull request #14243 from jordan-woyak/sdl-version-bump
Externals: Update SDL to release-3.4.0.
2026-01-01 18:45:03 -06:00
Leonardo Ledda
87345d5eda Android: Add build output folders to gitignore
Signed-off-by: Leonardo Ledda <leonardoledda@gmail.com>
2026-01-01 14:23:40 +01:00
Leonardo Ledda
593c9f3836 Android: Switch to Theme.Material3.DynamicColors
* This fixes some UI elements (3-dot menu background, status bar when scrolling down in settings) not following Material You colors.
* It doesn't cause any issues on Android versions without dynamic colors (tested on Android 9, 11, 16)

Signed-off-by: Leonardo Ledda <leonardoledda@gmail.com>
2026-01-01 14:11:37 +01:00
Leonardo Ledda
af0d03b399 Android: Use compilerOptions block to specify JVM version
* Fixes deprecation warning

Signed-off-by: Leonardo Ledda <leonardoledda@gmail.com>
2026-01-01 13:43:38 +01:00
Jordan Woyak
2e1170b054 Externals: Update SDL to release-3.4.0. 2025-12-31 21:10:24 -06:00
JosJuice
09a0e95efe Merge pull request #14240 from JoshuaVandaele/curl-perl-warning
curl: Disable manual
2025-12-31 12:30:00 +01:00
Jordan Woyak
329ab1f518 Merge pull request #14232 from iwubcode/const_flags
Common: update Flags to allow const object usage
2025-12-30 18:12:12 -06:00
Jordan Woyak
d84dd20991 Merge pull request #14208 from cristian64/broadband_adapter_ipc_freebsd
Core/HW: Enable BBA (IPC) in FreeBSD.
2025-12-30 17:59:59 -06:00
Joshua Vandaële
84247df681 curl: Disable manual
This also fixes a configure-time warning if perl is not present
2025-12-30 19:48:45 +01:00
Dentomologist
e639d565f7 Merge pull request #14239 from JoshuaVandaele/error-warns-forkedoff4
Fix two warnings
2025-12-29 17:23:15 -08:00
Joshua Vandaële
74b1930da4 JitArm64_RegCache: Fix is always true warnings 2025-12-29 11:12:07 +01:00
Joshua Vandaële
f9fe82f19e ShaderAsset: Fix shadowed variable
`samplers` is a member defined in ShaderAsset.h
2025-12-29 11:12:07 +01:00
Admiral H. Curtiss
6c7b60250d Merge pull request #14236 from LillyJadeKatrin/retroachievements-memory-realignment
RetroAchievements - Corrected MEM2 Alignment
2025-12-28 22:37:33 +01:00
LillyJadeKatrin
9fae55e098 RetroAchievements - Corrected MEM2 Alignment
rcheevos expects Wii MEM2 to be aligned to 0x10000000 in recent updates;
this corrects AchievementManager to do so.
2025-12-28 14:47:27 -05:00
iwubcode
aa1605e95a Merge pull request #14228 from iwubcode/clear_compiler_work_resource_mgr
VideoCommon: clear all compiler work when resource manager shuts down
2025-12-27 13:09:21 -06:00
JosJuice
7a0bceecb0 Merge pull request #14192 from jordan-woyak/sdl-version-bump
Externals: Update SDL to release-3.2.28.
2025-12-27 13:26:38 +01:00
JosJuice
db6c3b783c Merge pull request #14234 from JoshuaVandaele/wunused-cpipeline
CustomPipeline: Remove unused functions
2025-12-27 11:17:27 +01:00