Jordan Woyak
88005deaeb
Merge pull request #13668 from tygyh/UnitTests/Core/Make-parameters-constant
...
UnitTests/Core: Make parameters constant
2025-05-18 02:12:32 -05:00
Jordan Woyak
94888d250e
Merge pull request #13527 from tygyh/Replace-msg-with-structured-binding-VideoCommon/NetPlayChatUI
...
VideoCommon/NetPlayChatUI: Replace msg with structured binding
2025-05-17 17:09:13 -05:00
Jordan Woyak
dacb004516
Merge pull request #13190 from tygyh/Move-to-inner-scope-DolphinQT
...
DolphinQT: Move variables to inner scope
2025-05-17 16:52:25 -05:00
LillyJadeKatrin
b6803d00fe
Revert "RetroAchievements: Fix potential deadlock on shutdown."
...
This reverts commit 826f04d06c
.
2025-05-17 08:29:50 -04:00
LillyJadeKatrin
137e50dc25
AchievementManager: Remove CloseGame from LoadGameCallback
...
This was causing deadlocks when a game didn't load (including if RetroAchievements does not yet support it) because it was attempting to close the queue the the callback was currently running on, forcing LoadGameCallback to wait for LoadGameCallback to finish. However, it appears that recent changes to the queue have independently resolved the reason CloseGame was being called here in the first place.
2025-05-17 08:29:34 -04:00
Jordan Woyak
88389146d3
Merge pull request #13662 from Dentomologist/wiimotecontrollerswidget_scan_for_bluetooth_adapters_on_separate_thread
...
WiimoteControllersWidget: Fix UI hang when opening Controllers window
2025-05-16 19:43:35 -05:00
Jordan Woyak
6c5b35f92c
Merge pull request #13554 from tygyh/DSPSpy-Apply-style-alignment-refactorings
...
DSPSpy: Apply style-alignment refactorings
2025-05-16 14:55:11 -05:00
Jordan Woyak
7804c16dbb
Merge pull request #13531 from tygyh/DiscIO-Make-functions-constant
...
DiscIO: Make functions constant
2025-05-16 14:49:05 -05:00
Jordan Woyak
3b3bf6a04c
Merge pull request #13459 from tygyh/Make-parameters-constants-DolphinQt-Netplay
...
DolphinQt/NetPlay: Make variables constant
2025-05-16 14:29:44 -05:00
Dr. Dystopia
2102108b1a
UnitTests: Remove redundant template type specifers
2025-05-16 21:09:52 +02:00
JMC47
f1ffcf2b00
Merge pull request #13654 from JosJuice/android-clear-without-dismiss
...
Android: Don't dismiss AdvancedMappingDialog when pressing Clear
2025-05-16 14:33:49 -04:00
Jordan Woyak
404a7c75b2
Merge pull request #13666 from tygyh/UnitTests/PowerPC-Use-constant-functions-variables-parameters
...
UnitTests/PowerPC: Use constant functions, variables and parameters
2025-05-16 13:01:07 -05:00
Jordan Woyak
3fecce8723
Merge pull request #13669 from tygyh/UnitTests/Common/Use-std-size-for-size-calculation
...
UnitTests/Common: Use `std::size` for size calculation
2025-05-16 12:59:52 -05:00
Jordan Woyak
e4f71d2513
Merge pull request #13670 from tygyh/UnitTests/Core/Remove-unused-includes
...
UnitTests/Core: Remove unused includes
2025-05-16 12:58:47 -05:00
Dr. Dystopia
9dfcbcecff
DiscIO: Make functions constant
2025-05-16 19:11:39 +02:00
Dr. Dystopia
bc1af564e2
UnitTests/Core: Remove unused includes
2025-05-16 15:31:31 +02:00
Dr. Dystopia
7de18efc93
UnitTests/Core: Make parameters constant
2025-05-16 15:29:31 +02:00
Dr. Dystopia
762555c984
UnitTests/Common: Use `std::size` for size calculation
2025-05-16 14:59:55 +02:00
Dr. Dystopia
58c79bc5ed
UnitTests/PowerPC: Use constant functions, variables and parameters
2025-05-16 08:28:06 +02:00
Dentomologist
ffd46cd10c
WiimoteControllersWidget: Fix UI hang on opening
...
Fix the UI hanging for several seconds when opening the Controllers
window.
Move the scan for Bluetooth adapters onto a separate thread so the Host
thread doesn't have to wait for it.
Only automatically scan for adapters once, when opening the Controllers
window for the first time. Add a Refresh button to let the user refresh
the adapter list afterward.
2025-05-15 20:36:21 -07:00
Jordan Woyak
fc833f845c
Merge pull request #13660 from jordan-woyak/consistent-icon-text
...
DolphinQt: Add utility function for creating label text with a standard icon.
2025-05-15 13:24:18 -05:00
Jordan Woyak
17eb1b1a34
DolphinQt/Mapping: Replace Motion Input "WARNING: " text with a warning icon.
2025-05-15 10:58:43 -05:00
Jordan Woyak
afb27952ee
DolphinQt: Make the Info tab first in the game properties dialog.
2025-05-15 02:13:48 -05:00
Jordan Woyak
a45d00d84d
DolphinQt: Add utility function for creating label text with a standard icon.
2025-05-15 01:49:38 -05:00
Jordan Woyak
c211efd84a
Merge pull request #13603 from tygyh/FifoPlayer-Make-functions-static
...
FifoPlayer: Make functions static
2025-05-14 23:01:34 -05:00
Jordan Woyak
826f04d06c
RetroAchievements: Fix potential deadlock on shutdown.
2025-05-14 01:10:53 -05:00
JMC47
57dce8bd7c
Merge pull request #13650 from JosJuice/stswx-uncached
...
PowerPC: Correctly handle stswi/stswx to uncached memory
2025-05-12 19:19:52 -04:00
JosJuice
eeae30e2bb
Android: Don't dismiss AdvancedMappingDialog when pressing Clear
...
If you already have a mapping set in the advanced mapping dialog and
want to change it, the easiest way to do it is to press Clear and then
select the new mapping from the list. But pressing Clear causes the
dialog to close, forcing you to open it again, which is inconvenient.
This commit makes it so the Clear button doesn't close the dialog.
2025-05-12 21:40:55 +02:00
JMC47
cf3702cbc8
Merge pull request #13046 from SuperSamus/vi-overclock
...
Add VBI Frequency Override
2025-05-12 13:36:55 -04:00
Martino Fontana
c720211542
VideoCommon: Limit maximum denominator for MPEG4
...
It happened to be under the limit normally, but now that the VBI rate can be changed, that's no longer the case.
2025-05-12 18:54:42 +02:00
Martino Fontana
832570c658
Core: Add VBI Frequency Override
...
This feature allows overriding the frequency of the Vertical Blank Interrupt. For many games, this means that their gameplay speed will change without affecting audio, which would be useful by itself (e.g. grinding in RPGs).
However, there are games that use delta time for their game logic, which allows them to be played at >60 FPS at the same gameplay speed!
Some games aren't dynamic though, and require a patch to adjust their game speed variable.
2025-05-12 18:54:36 +02:00
JMC47
f19a33340a
Merge pull request #13631 from LillyJadeKatrin/retroachievements-mem2
...
AchievementManager: MEM2 Support
2025-05-10 14:56:14 -04:00
JosJuice
2b376a92ae
PowerPC: Correctly handle stswi/stswx to uncached memory
...
On real hardware, stswi and stswx don't trigger any of the special
behavior for uncached unaligned writes that was implemented in 543ed8a
.
This is confirmed by a hwtest (a new commit in
https://github.com/dolphin-emu/hwtests/pull/42 ).
This change fixes Dolphin's stswi and stswx implementations so they stop
triggering the special behavior, bringing them back to the behavior they
had before 543ed8a
. No games are known to be affected, but Extrems has
reported that it affects homebrew they've made.
2025-05-10 19:47:15 +02:00
Dr. Dystopia
cb30862cfb
DolphinQT/Netplay: Make variables constant
2025-05-10 13:05:54 +02:00
Dr. Dystopia
c5f01902de
DSPSpy: Make RealDSP `final` and make `overide` explicit
2025-05-10 13:02:55 +02:00
JMC47
b2e5d6df25
Merge pull request #13350 from iwubcode/custom_shader_overhaul_vertex_pos
...
VideoCommon: move transform matrices to accessible functions in VertexShaderGen
2025-05-10 01:20:28 -04:00
Jordan Woyak
bb77d61967
Crypto/SHA1: Re-add memcpy avoiding optimization to BlockContext::Update.
2025-05-09 20:59:17 -05:00
JMC47
0351fd56b1
Merge pull request #10766 from xperia64/dsp_format_fun
...
DSP accelerator improvements
2025-05-09 19:04:23 -04:00
JMC47
463bd86145
Merge pull request #13641 from jordan-woyak/sha1-fix
...
Crypto/SHA1: Fix past-the-last-element std::array access and modernize code.
2025-05-09 18:56:20 -04:00
JMC47
7113bafd94
Merge pull request #13586 from Tilka/spr_disasm
...
GekkoDisassembler: standardize SPR names and add missing ones
2025-05-09 18:55:53 -04:00
JMC47
b18bca11e8
Merge pull request #13440 from jordan-woyak/si-dev-change-tweak
...
HW/SI: Don't require waiting a second before disconnecting an SIDevice.
2025-05-09 18:55:18 -04:00
Admiral H. Curtiss
37f97cabb4
Merge pull request #13639 from Tilka/move
...
AchievementManager: fix -Wpessimizing-move warning
2025-05-08 21:40:06 +02:00
Admiral H. Curtiss
083ffd5fdb
Merge pull request #13643 from parona-source/no-retroachievments-buildfix
...
Remove filename option from stubbed AchievementManager::LoadGame
2025-05-08 21:37:11 +02:00
JMC47
721175b0d2
Merge pull request #13642 from sepalani/hid-log
...
IOS/USB: Change HIDv4.cpp LogLevel to avoid INTRMSG killing performance
2025-05-08 15:19:51 -04:00
Alfred Wingate
85bbaf6563
Remove filename option from stubbed AchievementManager::LoadGame
...
Fixes: c796691d00
Signed-off-by: Alfred Wingate <parona@protonmail.com>
2025-05-08 22:05:42 +03:00
Sepalani
17e57f550c
IOS/USB: Change HIDv4.cpp LogLevel to avoid INTRMSG killing performance
...
This message can be sent a lot when polling inputs from a keyboard. HIDv5.cpp doesn't log INTRMSG in such a way. If needed, log messages can be added into specific devices instead.
2025-05-08 22:14:01 +04:00
Jordan Woyak
a9ab0e979e
Crypto/SHA1: Fix past-the-last-element std::array access and modernize code.
2025-05-08 03:03:59 -05:00
Jordan Woyak
d922ba31f7
DolphinQt: Fix unnecessarily created Triforce widget in game properties Info tab.
2025-05-08 01:58:20 -05:00
Tillmann Karras
a8fb4153d7
AchievementManager: fix -Wpessimizing-move warning
2025-05-08 00:15:17 +01:00
Jordan Woyak
8a9a082c69
Merge pull request #13551 from tygyh/Clang-format-Fix-invalid-settings
...
Clang-format: Fix invalid settings
2025-05-07 16:18:11 -05:00
Jordan Woyak
8822479477
Merge pull request #13572 from tygyh/UnitTests-Remove-redundant-virtual-specifier
...
UnitTests: Remove redundant `virtual` specifier
2025-05-07 16:06:25 -05:00
Jordan Woyak
01bb9d1f8c
Merge pull request #13584 from tygyh/Core/HW/SI-Make-variables-constant
...
Core/HW/SI: Make variables constant
2025-05-07 16:06:00 -05:00
Jordan Woyak
a52e8ff9bd
Merge pull request #13585 from tygyh/Core/HW/GCMemcard-Make-variables-constant
...
Core/HW/GCMemcard: Make variables constant
2025-05-07 16:04:44 -05:00
Jordan Woyak
d74d1d42d6
Merge pull request #13511 from tygyh/Use-range-based-loops-Core-VideoBackends
...
Core/VideoBackends: Use range-based loops
2025-05-07 15:53:18 -05:00
Jordan Woyak
921ffe153d
Merge pull request #13542 from tygyh/DiscIO-Pass-parameters-by-constant-reference
...
DiscIO: Pass parameters by constant reference
2025-05-07 15:50:11 -05:00
Jordan Woyak
1c54583ae7
Merge pull request #13569 from tygyh/UnitTests-Use-constexpr
...
UnitTests: Use `constexpr`
2025-05-07 15:48:26 -05:00
Jordan Woyak
b8ca3c8d15
Merge pull request #13575 from tygyh/DolphinTool-Make-variables-constant
...
DolphinTool: Make variables constant
2025-05-07 15:47:14 -05:00
Jordan Woyak
c4616226ab
Merge pull request #13589 from tygyh/Core/HW/EXI-Remove-redundant-inline-specifiers
...
Core/HW/EXI: Remove redundant `inline` specifiers
2025-05-07 15:44:53 -05:00
Jordan Woyak
3e09d10123
Merge pull request #13571 from tygyh/VertexLoaderTest-Replace-std-tie-with-structured-bindings
...
VertexLoaderTest: Replace `std::tie` with structured bindings
2025-05-07 15:42:33 -05:00
JosJuice
5af5c83428
Merge pull request #13559 from tygyh/Android-Apply-style-alignment-refactorings
...
Android: Apply style alignment refactorings
2025-05-07 22:37:09 +02:00
Sepalani
eff334524a
HotkeyManager: Add HK_TOGGLE_WII_SPEAK_MUTE
2025-05-07 21:27:50 +04:00
Sepalani
4efbd35a5e
IOS/USB: Implement Wii Speak SAMPLER_FREQ register properly
...
Fix the default sampling rate which should be 16KHz
2025-05-07 20:33:22 +04:00
Sepalani
74a875e9d6
IOS/USB: Implement a bare-bones Wii Speak loudness level
...
Add a volume modifier to the UI which relies on gain.
2025-05-07 20:33:22 +04:00
Sepalani
1f0ff42aa0
IOS/USB: Implement Wii Speak REQUEST_SET_INTERFACE command
...
Based on LibusbDevice::SubmitTransfer code
2025-05-07 20:33:22 +04:00
Sepalani
61ab0faab8
Config: Rename MAIN_WII_SPEAK_CONNECTED to MAIN_WII_SPEAK_MUTED
2025-05-07 20:33:22 +04:00
Sepalani
aea5054509
CubebUtils: Add COM helper class
2025-05-07 20:33:22 +04:00
Sepalani
407218a8b4
IOS/USB: Report Wii Speak packet size properly
2025-05-07 20:33:22 +04:00
Sepalani
dbc09bfb0d
Android: Add emulated Wii Speak
2025-05-07 20:33:22 +04:00
Sepalani
a85ffc116e
IOS/USB: Only sample Wii Speak data when necessary
...
Skip data when HLE Wii Speak is not connected
Lock microphone buffer less frequently
2025-05-07 20:33:22 +04:00
Sepalani
f5dd80bb5b
IOS/USB: Try to fix the Wii Speak Channel record/playback feature
...
1. Fix Wii Speak SAMPLER_MUTE register:
The register should be 12 (i.e. 0x0c) instead of 0xc0.
2. Fix Wii Speak buffer memcpy size parameter:
It seems to fix random echoes and reduce noises when nobody is speaking.
3. Change the isochronous transfer timing:
It is based on empirical testing.
2025-05-07 20:33:22 +04:00
Sepalani
6a36930c74
IOS/USB: Add more logs to the Wii Speak code
2025-05-07 20:33:22 +04:00
Sepalani
1ac40f25a2
IOS/USB: Emulate Wii Speak using cubeb
...
Based on @noahpistilli (Sketch) PR:
https://github.com/dolphin-emu/dolphin/pull/12567
Fixed the Windows support and the heisenbug caused by uninitialized
members.
Config system integration finalized.
2025-05-07 20:33:22 +04:00
Sketch
451e36defc
IOS/USB: Emulate Wii Speak (OpenAL)
...
Credits to @degasus and shuffle2 (godisgovernment):
https://github.com/degasus/dolphin/tree/wiispeak
2025-05-07 17:45:59 +04:00
LillyJadeKatrin
85bb066cb0
AchievementManager: update dev memory clone for Wii
...
The clone of system memory used by AchievementManager during achievement development for the sake of thread decoupling was only copying MEM1; this grabs MEM2 as well if it exists.
2025-05-06 16:59:27 -04:00
LillyJadeKatrin
599f28045e
AchievementManager: verify MEM2 if it exists
...
Adds MEM2 to MemoryVerifier.
2025-05-06 16:59:27 -04:00
JMC47
c9bdda63dc
Merge pull request #13342 from Tilka/fifo_reset
...
VideoCommon: reset some CP registers during PI_FIFO_RESET
2025-05-05 20:20:40 -04:00
Jordan Woyak
2f1d8272a8
DolphinQt/TAS: Use non-default std::atomic struct constructor to fix build with libstdc++ 15.
2025-05-05 16:29:15 -05:00
Tillmann Karras
6f25e20c6a
VideoCommon: reset some CP registers during PI_FIFO_RESET
...
This fixes the shutdown error in SpongeBob Globs of Doom.
2025-05-05 21:18:37 +01:00
Jordan Woyak
6e22e145a0
HW/SI: Don't require waiting a second before disconnecting an SIDevice.
2025-05-04 15:00:48 -05:00
Admiral H. Curtiss
d2db9d9590
Merge pull request #13608 from jordan-woyak/async-work-thread
...
Common: Add AsyncWorkThread.
2025-05-04 18:45:14 +02:00
Admiral H. Curtiss
2a3580fda5
Merge pull request #13482 from jordan-woyak/string-util-concepts
...
StringUtil: Use concepts instead of enable_if.
2025-05-04 17:47:37 +02:00
Admiral H. Curtiss
380a9291ad
Merge pull request #13602 from jordan-woyak/move-only-function
...
Common: Add MoveOnlyFunction.
2025-05-04 17:28:06 +02:00
Admiral H. Curtiss
fc0601e55f
Merge pull request #13628 from jordan-woyak/unique-buffer-texture-data
...
Common and VideoCommon: Change texture data from std::vector to Common::UniqueBuffer.
2025-05-04 14:03:10 +02:00
LillyJadeKatrin
6b52336bf7
AchievementManager: Fix unknown hash achievements deadlock
...
Within AchievementManager, CloseGame being called when LoadGame fails was causing m_queue.Cancel to be called within a lock when Cancel itself locks until it is empty, causing a deadlock. This is resolved by cancelling the queues outside of the lock when they are safe to wait for resolutions.
2025-05-03 22:51:07 -04:00
Jordan Woyak
5a80105555
Common and VideoCommon: Change texture data from std::vector to Common::UniqueBuffer.
2025-05-03 18:32:30 -05:00
iwubcode
e80ed595ac
VideoCommon: move position/normal matrices to be gettable by function in VertexShaderGen
2025-05-03 16:51:34 -05:00
cristian64
2eeb2fd2b9
DolphinQt: Use non-autodismissable menus in menu bar.
...
A new class that derives from `QMenu` has been introduced. Menus of this
`NonAutodismissibleMenu` type will stay visible when a _checkable_
action is triggered.
This is convenient in menus that feature a series of check boxes that
toggle visibility of third components (e.g. the **List Columns** menu),
allowing the user to toggle several actions at once.
For now, the new type is used in the top menu bar.
2025-05-03 20:29:21 +02:00
Admiral H. Curtiss
7774dccc9d
Merge pull request #13509 from Dentomologist/gamelist_fix_right_doubleclick_starting_games
...
GameList: Ignore non-left double-clicks
2025-05-03 20:15:11 +02:00
JMC47
78465693ad
Merge pull request #13607 from LillyJadeKatrin/retroachievements-wiiware
...
RetroAchievements - Wii and WiiWare Support
2025-05-03 13:21:00 -04:00
Admiral H. Curtiss
c574b651aa
Merge pull request #13621 from JosJuice/android-remove-loaddefaultsettings
...
Android: Remove unused onSettingsFileNotFound and friends
2025-05-03 18:37:51 +02:00
Admiral H. Curtiss
dcc09906e5
Merge pull request #13622 from TryTwo/Settings_Bugfix
...
Settings: Bugfix. GFX settings getting set without user input
2025-05-03 18:36:36 +02:00
Admiral H. Curtiss
ffd78711be
Merge pull request #13618 from jordan-woyak/cubeb-logging
...
AudioCommon/CubebUtils: Fix logged file name.
2025-05-03 18:33:06 +02:00
TryTwo
c1d0a49f35
Settings: Bugfix. Fix some combo boxes setting a value without user input. Prevents initial Load from calling the connection to save value.
2025-05-02 18:21:45 -07:00
TryTwo
1aabae49ed
Settings: Bugfix. Remove Aspect Ratio combobox signal so it doesn't trigger a settings changed save.
2025-05-02 18:21:18 -07:00
Dentomologist
77744169be
SDL: Check if touchpad exists before getting input
...
Verify a touchpad is present before polling it for input. Without this
check the Debug log is spammed with the message "error: Parameter
'touchpad' is invalid" if you have a controller without a touchpad.
One would think every touchpad supports at least 1 finger, but in case
there's some weird edge case check the finger count to be sure.
2025-05-02 17:21:42 -07:00
Jordan Woyak
63572f15fc
Merge pull request #13620 from JosJuice/logmanager-cleanup
...
LogManager: Stop using manual memory management
2025-05-02 15:24:34 -05:00
Jordan Woyak
ec29d120b5
CoreTiming: Add a setting to pursue accurate emulation time.
2025-05-02 15:23:43 -05:00
JosJuice
c8be819711
LogManager: Stop using manual memory management
...
This fixes a memory leak that would occur when the Android frontend
calls LogManager::Init more than once in order to reload settings.
Note that the log window listener is now owned by LogManager instead of
by the frontend, making it consistent with the other log listeners.
2025-05-02 21:14:32 +02:00
JosJuice
6515807685
Merge pull request #13278 from JoshuaVandaele/saves-import
...
Implement importing multiple saves from an export folder
2025-05-02 15:40:27 +02:00
JosJuice
6129953666
Android: Remove unused onSettingsFileNotFound and friends
...
Old cruft from when the Android code was loading INI files manually.
We don't have any handling for failing to load settings anymore.
This change also updates related comments to reflect how things actually
work nowadays.
2025-05-02 14:25:01 +02:00