mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-24 23:11:14 +01:00
DimitriPilot3
bb827eb837
Apply (a variation of) the first patch attached to issue 4608. This should limit the amount of ACL packet loss due to the 200Hz timing (which is now 150Hz if you disable Wiimote Speaker) and the handling of the ACL pool when it's occasionally full (which this improves by dropping one packet instead of letting the "pointers" overlap which would make packets unreachable).
See comment #6 for more details on the changes to WII_IPC_HLE_Device_usb. In addition to that, rework some comments a bit (such as those from the original patch; plus Ayuanx's one about maintaining Wiimote timing, which lost relevance since r7272 which made Wiimote::Update timing independent from IPC timing), and remove an unused global variable (event for watchdog hack)... In short, this should address *some* of the Wiimote disconnection and/or "forgotten extension" problems that appeared with r7272 and/or r7394. To prevent the "ACL queue is full" warnings from appearing (View->Show Log), pay attention to the amount of enabled Wiimotes (use as few as possible, connect the extra Wiimotes only when needed), and make sure to disable the "Disable Wiimote Speaker" option (if unneeded or causing problems) in the game properties. If possible, make sure to use real Wiimotes instead of emulated ones, as well. If Wiimotes disconnect forever (and cannot be reconnected using the Alt+Fx hotkeys), open the Wiimote config window, set the faulty Wiimote's type to "None", close/reopen the window, and set the previous Wiimote type back. Note that it's not a *complete* fix for issue 4608! This only fixes about half (or maybe third) of the possible causes of this issue... But at least this should make the accurate Wiimote emulation (I mean, with the limitation of the ACL queue included) more usable in some cases (such as multi-player). Nope, I didn't (and can't yet) perform in-depth tests on the real hardware myself (unlike some developers), I just rely on the given "accurate" code and numbers (such as the 10-packet limit implemented by godisgovernment)... Maybe I'll get to fixing other problem "causes" (if I feel like doing it), maybe not in a while... After all, I have other hobbies, and it's the summer holidays for me... Anyway, feel free to test and comment. Update issue 4667 Update issue 4608 Update issue 4604 Update issue 4583 Update issue 4436 Update issue 4353 Update issue 4013 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7675 8ced0084-cf51-0410-be5f-012b33b47a6e
Dolphin-emu - The Gamecube / Wii Emulator ========================================== Homesite: http://dolphin-emulator.com/ Project Site: http://code.google.com/p/dolphin-emu Dolphin-emu is a emulator for Gamecube, Wii, Triforce that lets you run Wii/GCN/Tri games on your Windows/Linux/Mac PC system. Open Source Release under GPL 2 Project Leaders: F|RES, ector Team members: http://code.google.com/p/dolphin-emu/people/ Please read the FAQ before use: http://code.google.com/p/dolphin-emu/wiki/Facts_And_Questions System Requirements: * OS: Microsoft Windows (2000/XP/Vista or higher) or Linux or Apple Mac OS X. * Processor: Fast CPU with SSE2 supported (recommended at least 2Ghz). Dual Core for speed boost. * Graphics: Any graphics card that supports Direct3D 9 or OpenGL 2.1. [Command line usage] Usage: Dolphin [-h] [-d] [-l] [-e <str>] [-b] [-V <str>] [-A <str>] -h, --help Show this help message -d, --debugger Opens the debugger -l, --logger Opens the logger -e, --exec=<str> Loads the specified file (DOL,ELF,WAD,GCM,ISO) -b, --batch Exit Dolphin with emulator -V, --video_backend=<str> Specify a video plugin -A, --audio_emulation=<str> Low level (LLE) or high level (HLE) audio [Libraries] Cg: Cg Shading API (http://developer.nvidia.com/object/cg_toolkit.html) *.pdb = Program Debug Database (use these symbols with a program debugger) [DSP Plugins] Plugin_DSP_HLE: High Level DSP Emulation Plugin_DSP_LLE: Low Level DSP Emulation [Video Backends] Direct3D9: Render with Direct3D 9 Direct3D11: Render with Direct3D 11 OpenGL: Render with OpenGL + Cg Shader Language [Sys Files] totaldb.dsy: Database of symbols (for devs only) font_ansi.bin/font_sjis.bin: font dumps setting-usa/jpn/usa.txt: config files for Wii [Support Folders] Cache: used to cache the ISO list Config: emulator configuration files Dump: anything dumped from dolphin will go here GC: Gamecube memory cards GameConfig: holds the INI game config files Load: high resolution textures Logs: logs go here Maps: symbol tables go here (dev only) OpenCL: OpenCL code ScreenShots: screenshots are saved here Shaders: post-processing shaders StateSaves: save states are stored here Wii: Wii saves and config is stored here
Languages
C++
88.5%
Kotlin
4.9%
C
2.3%
CMake
1.2%
Objective-C++
1%
Other
1.8%