Commit Graph

15 Commits

Author SHA1 Message Date
snzgoo f6d844dac1 MAJOR and long ago overdue wiiuse and real wiimote sourcecode cleanup. Removed "recording" in old wiimote plugin and other not necessary functions(EEPROM reading, we 'll just do a reconnect instead to use default accel calibration data etc). Recording is not needed anymore(playback of recorded moves should be still working). Everything the recording feature offered, the new wiimote plugin does as well and even more. The cleanup will ease the port of the real wiimote feature into new wiimote plugin, which is still only offering emulated wiimote support. Billiard said he's now on it.:)
Wiimotes are now slighty more responsive and multiple wiimotes should harmonize now slighty better. This clean up was requested/inevitable and should have be done way more earlier. This "might" break osx/linux builds, so please test. If your aware of any "real wiimote" issues please post it in the comments as well(dont forget to state your OS).

Known wiimote issues:
1.) Possible wiimote disconnect on pressing the home button
2.) 1-2 Possible wiimote disconnects directly after starting a game
3.) Rumble causes lag. I don't think this is a wiimote plugin issue itself, I'm not sure tho. It would be interesting to know whether the lag still happens on emulated wiimotes as well, when the game tries to rumble.
4.) Connecting(pairing up and refreshing) a 2nd/3rd/4th real wiimote while having a game running/paused, might swap player slots and cause disconnects at that moment.
If u have more issues, feel free to post them, to have them all here collected once more to get a brief overview.
Apart from that, increase the wiimote read timeout @settings(20-200). If your  expecting frequent disconnects, restart dolphin, and don't open the wiimote gui before playing instead directly start games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5788 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-26 02:08:30 +00:00
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