Commit graph

43494 commits

Author SHA1 Message Date
Sepalani
61e539ca33 IOS/USB: Implement a bare-bones Wii Speak loudness level
Add a volume modifier to the UI which relies on gain.
2025-04-24 03:54:23 +04:00
Sepalani
5021cc0c1e IOS/USB: Add more Wii Speak log messages 2025-04-24 01:10:21 +04:00
Sepalani
f7eadc1f11 IOS/USB: Lock microphone buffer less frequently 2025-04-24 01:10:20 +04:00
Sepalani
82a03ca73b IOS/USB: Skip data when HLE Wii Speak is muted 2025-04-24 01:10:20 +04:00
Sepalani
65a09924d9 IOS/USB: Implement Wii Speak REQUEST_SET_INTERFACE command
Based on LibusbDevice::SubmitTransfer code
2025-04-24 01:10:20 +04:00
Sepalani
a9f712c80b WiiSpeakWindow: Don't hide QGroupBox 2025-04-24 01:10:20 +04:00
Sepalani
f95a357cb5 Config: Rename MAIN_WII_SPEAK_CONNECTED to MAIN_WII_SPEAK_MUTED 2025-04-24 01:10:20 +04:00
Sepalani
820cf5bcd8 Android: Fix PermissionsHandler activity detection 2025-04-24 01:10:20 +04:00
Sepalani
7520f427a9 CubebUtils: Add COM helper class 2025-04-24 01:10:20 +04:00
Sepalani
c7c96ff1f2 IOS/USB: Add a warning about RECORD_AUDIO permission 2025-04-24 01:10:20 +04:00
Sepalani
2dd01bae6e Android: Ask for RECORD_AUDIO permission 2025-04-24 01:10:20 +04:00
Sepalani
78f37429ac IOS/USB: Report Wii Speak packet size properly 2025-04-24 01:10:20 +04:00
Sepalani
69a315ecb5 Android: Add emulated Wii Speak 2025-04-24 01:10:20 +04:00
Sepalani
15b614ceef IOS/USB: Only sample Wii Speak data when necessary 2025-04-24 01:10:20 +04:00
Sepalani
e4fd94b24b IOS/USB: Try to fix the Wii Speak Channel record/playback feature 2025-04-24 01:10:19 +04:00
Sepalani
045545a9b9 IOS/USB: Fix Wii Speak buffer memcpy size parameter
It seems to fix random echoes and reduce noises when nobody is speaking
2025-04-24 01:10:19 +04:00
Sepalani
9e7b6c40e0 IOS/USB: Fix Wii Speak SAMPLER_MUTE register
The register should be 12 (i.e. 0x0c) instead of 0xc0
2025-04-24 01:10:19 +04:00
Sepalani
28277d690d IOS/USB: Add more logs to the Wii Speak code 2025-04-24 01:10:19 +04:00
Sepalani
c6a99f7be5 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-04-24 01:10:15 +04:00
Sketch
d1b885e7d8 IOS/USB: Emulate Wii Speak (OpenAL)
Credits to @degasus and @shuffle2 (godisgovernment):
https://github.com/degasus/dolphin/tree/wiispeak
2025-04-24 00:44:22 +04:00
JMC47
8f3483fdd4
Merge pull request #13565 from LillyJadeKatrin/retroachievements-end-of-memory-bug
Fix memory bounds error in achievements dev
2025-04-23 01:01:47 -04:00
OatmealDome
d04e9e79a6
Merge pull request #13566 from OatmealDome/macos-11-fix
BuildMacOSUniversalBinary: Explicitly specify CMAKE_OSX_DEPLOYMENT_TARGET in CMake flags
2025-04-23 00:46:58 -04:00
OatmealDome
968b0cff44 BuildMacOSUniversalBinary: Explicitly specify CMAKE_OSX_DEPLOYMENT_TARGET in CMake flags
If the build folder is created from an older commit and this flag is not set, the last value set for this flag will be used instead.
This is currently happening on our macOS build machine, causing macOS 10.15 to still be used as the deployment target.
2025-04-22 23:40:37 -04:00
Jordan Woyak
116bd3a031
Merge pull request #13382 from JoshuaVandaele/btadapterchoice
Add a GUI option to select a bluetooth device
2025-04-22 22:05:30 -05:00
LillyJadeKatrin
8b610101bc Fix memory bounds error in achievements dev
This particular out of bounds error was causing every memory read at the far end of memory to return all zeroes.
2025-04-22 22:49:55 -04:00
Tilka
c4f65febf3
Merge pull request #13563 from Tilka/rcheevos
Fix building with USE_RETRO_ACHIEVEMENTS=OFF
2025-04-23 03:27:15 +01:00
Tilka
871073eee2
Merge pull request #13564 from jordan-woyak/triforce_ipl-warning
Core/Boot: Fix unused variable warning.
2025-04-23 03:26:48 +01:00
Jordan Woyak
31a3de819d
Merge pull request #13540 from tygyh/DiscIO-Remove-redundant-qualifiers
DiscIO: Remove redundant qualifiers
2025-04-22 20:00:03 -05:00
Jordan Woyak
0fd090ce19
Merge pull request #13550 from Tilka/top_warnings
IOS/Network: fix some warnings
2025-04-22 19:45:47 -05:00
Joshua Vandaële
4773a6f323
Add a GUI option to select a bluetooth device 2025-04-23 02:19:28 +02:00
JMC47
826625c7be
Merge pull request #13422 from jordan-woyak/adv-tooltips
DolphinQt: Use tooltips on Advanced tab.
2025-04-22 19:27:21 -04:00
Jordan Woyak
00544e4dff Core/Boot: Fix unused variable warning. 2025-04-22 18:19:32 -05:00
Tillmann Karras
609165b62b Fix building with USE_RETRO_ACHIEVEMENTS=OFF 2025-04-22 23:45:40 +01:00
Tillmann Karras
f6d3f448d9 IOS/Network: fix -Wmissing-braces warnings 2025-04-22 23:36:01 +01:00
Jordan Woyak
ac76deaef0
Merge pull request #13529 from jordan-woyak/StateBuffer
Core/State: Avoid unnecessarily value-initializing large buffers.
2025-04-22 16:30:51 -05:00
OatmealDome
da84a9f605
Merge pull request #13477 from OatmealDome/macos-11
CMakeLists: Bump minimum macOS to 11.0
2025-04-22 17:27:12 -04:00
Jordan Woyak
afee9a56e9
Merge pull request #13474 from JosJuice/rock-band-playstation
IOS: Disguise Rock Band PlayStation USB devices as Wii equivalents
2025-04-22 16:02:16 -05:00
Jordan Woyak
9254a53397
Merge pull request #13490 from JosJuice/one-usb-scanner
IOS: Only have one USB scanning thread
2025-04-22 16:01:18 -05:00
JMC47
fd8ce3ce80
Merge pull request #13555 from jordan-woyak/cubeb-default
AudioCommon: Make cubeb sound backend default on Linux.
2025-04-22 12:07:43 -04:00
JosJuice
12010ebf78
Merge pull request #13557 from LillyJadeKatrin/pause-bugfix
AchievementManager: Always allow pausing if game not loaded
2025-04-22 17:55:23 +02:00
Dr. Dystopia
ecafd8058f DiscIO: Remove redundant qualifiers 2025-04-22 13:54:10 +02:00
Jordan Woyak
89873d6238
Merge pull request #13472 from tygyh/Use-values-function
Core/NetPlayServer: Use std::views::values and std::views::keys functions
2025-04-22 02:25:46 -05:00
LillyJadeKatrin
d670c21c8e Always allow pausing if game not loaded
RetroAchievements disables pausing too frequently when running but there's no sense of doing this if RetroAchievements does not currently have a game running.
2025-04-21 22:38:09 -04:00
JMC47
0f30b59aef
Merge pull request #13556 from jordan-woyak/dvd-interface-crash-fix
DVDInterface: Fix crash when playing wiiware.
2025-04-21 22:15:12 -04:00
Jordan Woyak
1e8b668793 DVDInterface: Fix crash when playing wiiware. 2025-04-21 18:38:33 -05:00
Jordan Woyak
1fc6be7f80 AudioCommon: Make cubeb sound backend default on Linux. 2025-04-21 16:25:40 -05:00
OatmealDome
de2826d995 Merge branch 'release-prep-2503a' 2025-04-21 17:03:52 -04:00
JosJuice
e468e2359a IOS: Only have one USBScanner
Some games open two USB interfaces, e.g. /dev/usb/oh0 and /dev/usb/hid.
This was causing us to run two scanning threads at once, using up more
CPU time for scanning than we need to.
2025-04-21 21:57:49 +02:00
JosJuice
920a44aec2 IOS: Diff device lists in USBHost instead of USBScanner
Instead of having USBScanner create "hooks" as it scans for devices,
let's have USBScanner present a list of devices to USBHost and have
USBHost diff the new device list with its old device list to create the
hook calls instead. This gets rid of some complex edge cases that the
next commit otherwise would have to deal with, in particular regarding
toggling determinism and adding new USBHosts to a USBScanner.
2025-04-21 21:25:36 +02:00
JosJuice
24fdcc1a0e IOS: Add missing locking for USBHost::m_devices
Note: After adding the missing locking of m_devices_mutex, I had to move
the locking of m_hooks_mutex to avoid a random deadlock between the CPU
thread and USB scanning thread. (Either that or I would have to lock
m_devices_mutex before m_hooks_mutex.)
2025-04-21 21:25:35 +02:00