mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2026-03-19 11:53:04 +00:00
This adds the option to configure real Wiimotes by specifying their Bluetooth addresses in the configuration file. This allows off-brand Wiimotes to work without using the Bluetooth Passthrough option, if you know their Bluetooth addresses beforehand. Despite correctly setting the LAP to `0x9e8b00` in `WiimoteScannerLinux::FindWiimotes` while scanning, which is indeed enough to make off-brand / knock-off Wiimotes respond to a Bluetooth Inquiry, some (several? all?) bluetooth adapters seem to override and ignore this given LAP value when performing the Inquiry, and actually use the `0x9e8b33` value as if a null pointer have been given to `hci_inquiry`, as inspection of USB/Bluetooth packets by Wireshark indicate. Off-brand Wiimotes don't respond to inquiries with this LAP. If one happens to know the Bluetooth address of their Wiimote (for example, by checking `BluetoothPassthrough.LinkKeys` after using Bluetooth Passthrough, or other means such as directly using `libusb` to force the adapter to use the correct LAP in the Inquiry), then it's enough to add those addresses to the vector of found Wiimotes. Since this a niche use case and I only happen to know and have tested in Linux, this change only affects the `WiimoteScannerLinux` backend. It's likely that it could be added to other backends, but I'm unfamiliar with these. If no addresses are given or this config section does not exist, behavior is completely unchanged. |
||
|---|---|---|
| .. | ||
| Boot | ||
| Config | ||
| ConfigLoaders | ||
| Debugger | ||
| DSP | ||
| FifoPlayer | ||
| HLE | ||
| HW | ||
| IOS | ||
| PowerPC | ||
| AchievementManager.cpp | ||
| AchievementManager.h | ||
| ActionReplay.cpp | ||
| ActionReplay.h | ||
| ARDecrypt.cpp | ||
| ARDecrypt.h | ||
| BootManager.cpp | ||
| BootManager.h | ||
| CheatCodes.h | ||
| CheatGeneration.cpp | ||
| CheatGeneration.h | ||
| CheatSearch.cpp | ||
| CheatSearch.h | ||
| CMakeLists.txt | ||
| CommonTitles.h | ||
| ConfigManager.cpp | ||
| ConfigManager.h | ||
| Core.cpp | ||
| Core.h | ||
| CoreTiming.cpp | ||
| CoreTiming.h | ||
| CPUThreadConfigCallback.cpp | ||
| CPUThreadConfigCallback.h | ||
| DolphinAnalytics.cpp | ||
| DolphinAnalytics.h | ||
| DSPEmulator.cpp | ||
| DSPEmulator.h | ||
| FreeLookConfig.cpp | ||
| FreeLookConfig.h | ||
| FreeLookManager.cpp | ||
| FreeLookManager.h | ||
| GeckoCode.cpp | ||
| GeckoCode.h | ||
| GeckoCodeConfig.cpp | ||
| GeckoCodeConfig.h | ||
| Host.h | ||
| HotkeyManager.cpp | ||
| HotkeyManager.h | ||
| LibusbUtils.cpp | ||
| LibusbUtils.h | ||
| MachineContext.h | ||
| MemoryWatcher.cpp | ||
| MemoryWatcher.h | ||
| MemTools.cpp | ||
| MemTools.h | ||
| Movie.cpp | ||
| Movie.h | ||
| NetPlayClient.cpp | ||
| NetPlayClient.h | ||
| NetPlayCommon.cpp | ||
| NetPlayCommon.h | ||
| NetPlayProto.h | ||
| NetPlayServer.cpp | ||
| NetPlayServer.h | ||
| NetworkCaptureLogger.cpp | ||
| NetworkCaptureLogger.h | ||
| PatchEngine.cpp | ||
| PatchEngine.h | ||
| State.cpp | ||
| State.h | ||
| SyncIdentifier.h | ||
| SysConf.cpp | ||
| SysConf.h | ||
| System.cpp | ||
| System.h | ||
| TitleDatabase.cpp | ||
| TitleDatabase.h | ||
| WC24PatchEngine.cpp | ||
| WC24PatchEngine.h | ||
| WiiRoot.cpp | ||
| WiiRoot.h | ||
| WiiUtils.cpp | ||
| WiiUtils.h | ||