Commit Graph

14 Commits

Author SHA1 Message Date
Soren Jorvang e648c6d68b Overhaul of OS X real Wiimote support.
Fixes a number of problems, including unreliable connection setup, 
frequent disconnections, busy-waiting and shutdown deadlocks.

Motion Plus and nunchuk hot swapping now work and Wiiuse does a small
amount of queueing to prevent occasional dropped packets. The OS X 
bluetooth stack has no internal input buffering and while a worker  
thread can easily keep up with data coming from the Wiimote, the rest
of Dolphin can easily get behind if it is blocked by disk I/O or 
similar. Mostly the Wiimote protocol recovers from dropped packets,   
but sometimes the Wiimote would get out of sync and send a disconnect.
I wonder if the other platforms might benefit from a bit of queueing
at this layer as well.
 
Still doesn't support multiple devices, as I kept changing my mind 
about how best to do it. I only have one Wiimote anyway..
 
One improvement to the Wiimote plugin that would be really nice would
be for the scan for new devices to operate continuously or periodically
like on a real Wii rather than just for 5 seconds at startup..   


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5640 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-09 19:36:08 +00:00
snzgoo c344502524 wiiuse buildfix nonwin32, mea culpa.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5412 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-26 10:49:12 +00:00
snzgoo 06f0bc91ee Just a small WIIUSE[WIN32] update to avoid dependencies @wiimote_plugin in my next commit.
You can check whether WM_DEVICECHANGE got triggered by a Wiimote.(Pair-up arrival/removal)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5410 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-25 22:39:47 +00:00
Sonicadvance1 47f3c5bc31 Forgot about this. Nobody wants WiiUse debugging on. Also, Real Wiimote works with this one, because I forgot to remove the -1! Huzza!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4593 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-19 22:58:36 +00:00
Sonicadvance1 3af4c50af1 Clean up Wiiuse to allow less _WIN32 defines. Windows side now spits out regular packets, and takes in regular packets. Like a normal OS should :} This shouldn't break Windows wiimote, Linux Wiimote doesn't work with this revision. Will require the new plugin which doesn't have emulated Wiimote at all.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4591 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-19 22:47:57 +00:00
death2droid 5a7fbd63c2 Wiiuse: Nunchuck:Standarise the nunchuck code to be more like the one present in libogc
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4321 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-26 04:52:02 +00:00
Shawn Hoffman 72f443c5ce revert r4308 - that change was executed quite badly. Let's try and keep things sane...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4310 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-21 20:05:42 +00:00
death2droid 035155754e Wiiusesrc: Alot more back porting. Still needs more work.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4308 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-21 13:46:12 +00:00
death2droid 0e3baaa6ab Wiiuse:Backport some changes from the libogc version of wiiuse.
Still got a lot to back port :(.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4307 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-20 13:31:32 +00:00
Shawn Hoffman 9ae7fe20af wiiusesrc: change back to .c files, in order to more easily diff with "official" wiiuse
wiiusesrc: enable building with windows/msvc. In order to build you need to install WDK, then build. wiiuse.vcproj uses WDK exclusively, and ignores other include/lib paths. Change the paths in wiiuse.vcproj if your version of WDK differs.
wiiuse: update compiled windows libs

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4295 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-18 00:51:13 +00:00
death2droid fa7daf298b Added someone's addition to Wiiuse that allows some Wii balance board features.
http://www.wiiuse.net/forums/viewtopic.php?f=3&t=181&sid=a9460693620dd73fed22b10259a610b4

This is hasn't being built and is untested.

If anyone has the required hid files can they send them to me please on the forum.
Anyway this shouldn't break anything at all.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3304 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-01 08:39:05 +00:00
tmator cf8220dc9c fix osx build, and first step to get real wiimotes on osx
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2277 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-16 21:12:00 +00:00
bushing e6fe5ec42f set svn:eol-style=native for Externals/**.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1437 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-08 04:36:27 +00:00
fires.gc c208b1bc60 added special wiiuse version
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1072 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-05 16:46:30 +00:00