Change markdown extension from mkd to md
This commit is contained in:
@@ -1,417 +1,417 @@
|
||||
WiiUse Changelog
|
||||
================
|
||||
|
||||
Fork, located at <http://github.com/rpavlik/wiiuse>
|
||||
|
||||
Original project:
|
||||
|
||||
- <http://wiiuse.net/>
|
||||
- <http://wiiuse.sourceforge.net/>
|
||||
- <http://sourceforge.net/projects/wiiuse/>
|
||||
|
||||
v0.15 -- ???
|
||||
------------
|
||||
|
||||
Added:
|
||||
|
||||
- Callback API with constant-size wiimote_callback_data_t.
|
||||
Added to more easily support a ctypes python binding, generated
|
||||
by and included with RPythonic http://code.google.com/p/rpythonic/
|
||||
Thanks to hartsantler for this feature.
|
||||
|
||||
- Ability to build as a static library - must define WIIUSE_STATIC in
|
||||
client app as well as choosing the appropriate option when building
|
||||
WiiUse. The default is still a shared library (dll/so). Merged from
|
||||
paulburton and added to build system.
|
||||
|
||||
- Initial MotionPlus support. Thanks to admiral0 for the initial pull
|
||||
request merging from fwiine, and to Jan Ciger Reviatech SAS for building
|
||||
on it with fwiine and WiiC code as well as additional code. Try it out
|
||||
in the example by pressing 1 to start and 2 to stop.
|
||||
|
||||
- Full Mac support using Apple's native Bluetooth stack, based on [wiic](http://wiic.sourceforge.net/).
|
||||
|
||||
Fixed:
|
||||
|
||||
- Properly disable rumbling when told to. Thanks to Jeff Baker from
|
||||
(Inv3rsion, LLC.)(http://www.inv3rsion.com/)
|
||||
|
||||
- Builds properly now on mingw (both cross-compile and native).
|
||||
|
||||
- Improved reliability on Windows when running an app twice without dis-connecting
|
||||
the Wiimote (came as a part of the MotionPlus support.)
|
||||
|
||||
Changed:
|
||||
|
||||
- Improved header includes using feedback from (include-what-you-use)[iwyu]
|
||||
|
||||
- Additional internal function `wiiuse_millisleep()` to reduce the number
|
||||
of `ifdef`s scattered through the code.
|
||||
|
||||
- Provide endianness-conversion and buffer/unbuffer functions, rather than
|
||||
a jumble of function-style macros and raw type punning. This should
|
||||
fix all aliasing warnings.
|
||||
|
||||
[iwyu]:http://code.google.com/p/include-what-you-use/
|
||||
|
||||
v0.14 -- 2 May 2011
|
||||
-------------------
|
||||
Added:
|
||||
|
||||
- Support for redirecting or disabling messages: function
|
||||
`wiiuse_set_output` in `wiiuse.h`. The preprocessor symbol
|
||||
`WIIUSE_HAS_OUTPUT_REDIRECTION` indicates the presence of this feature.
|
||||
Thanks to Johannes Zarl for this handy feature!
|
||||
|
||||
- Doxyfile and "doc" target to the build system, to easily make use of
|
||||
the documentation already in the code, along with doc cleanups and
|
||||
improvements. (rp)
|
||||
|
||||
- Added balance board code to example (Paul Burton, rp)
|
||||
|
||||
Fixed:
|
||||
|
||||
- Off-by-two overflow in IR dot ordering - thanks to Karl Semich (xloem on GitHub)
|
||||
|
||||
- Documentation typo fix - thanks to Johannes Zarl
|
||||
|
||||
- Check malloc results. (rp)
|
||||
|
||||
- Initialize an array entirely. (rp)
|
||||
|
||||
- Fixed reading of balance board data. (rp)
|
||||
|
||||
Changed:
|
||||
|
||||
- Cleaned up README. (rp)
|
||||
|
||||
- Removed references to the LGPL/noncommercial license, since it's
|
||||
confusing and not useful in a practical sense. See, e.g.,
|
||||
<http://lists.fedoraproject.org/pipermail/legal/2010-November/001470.html>
|
||||
|
||||
- Renamed bundled workaround stdint.h header for Visual Studio, which
|
||||
we still have to use on MSVC 2010 for some unknown reason. (rp)
|
||||
|
||||
|
||||
v0.13.1 -- 11 November 2010
|
||||
---------------------------
|
||||
Fixed:
|
||||
|
||||
- Fix crashers due to unchecked pointer use.
|
||||
|
||||
- [Windows] Fix crashers due to unchecked pointer use.
|
||||
|
||||
v0.13 -- 11 November 2010
|
||||
-------------------------
|
||||
Added:
|
||||
- Support for Wii Balance Board ("wiiboard"): your code can
|
||||
`#ifdef EXP_WII_BOARD` (support based in part on code from TU-Delft)
|
||||
|
||||
- CMake-based cross-platform build system
|
||||
|
||||
- Version defines in `wiiuse.h`
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Linux] Bluez issue with not initializing structure on newer kernels
|
||||
|
||||
- Use `stdint.h` types for guaranteed type size independent of platform
|
||||
|
||||
- Bundle a suitable `stdint.h` for MSVC builds
|
||||
|
||||
- Setting IR to off before handshake complete actually respected now.
|
||||
(fix via Harald <Gotterdammerung@web.de>)
|
||||
|
||||
Changed:
|
||||
|
||||
- Old makefiles and Visual Studio projects removed.
|
||||
|
||||
- CMake allows easy building of binary packages with a uniform
|
||||
directory structure: .dll/.exe in bin, .lib/.so in lib, .h in
|
||||
include.
|
||||
|
||||
v0.12 -- 2 Apr 2008
|
||||
-------------------
|
||||
Added:
|
||||
|
||||
- API function `wiiuse_set_ir_sensitivity()`
|
||||
|
||||
- Macro `WIIUSE_GET_IR_SENSITIVITY()`
|
||||
|
||||
- Event type `WIIUSE_READ_DATA`
|
||||
|
||||
- Event type `WIIUSE_UNEXPECTED_DISCONNECT`
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Linux] Ability to try to `select()` nothing
|
||||
|
||||
- [Linux] Changed Makefile to include debug output when compiling in debug mode
|
||||
|
||||
Changed:
|
||||
|
||||
- `wiiuse_set_nunchuk_orient_threshold()` now takes a`wiimote_t` pointer
|
||||
|
||||
- `wiiuse_set_nunchuk_accel_threshold()` now takes a `wiimote_t` pointer
|
||||
|
||||
- `wiiuse_read_data()` generates an event `WIIUSE_READ_DATA` rather than
|
||||
executing a callback
|
||||
|
||||
|
||||
v0.11 -- 25 Feb 2008
|
||||
--------------------
|
||||
|
||||
Added:
|
||||
|
||||
- API function `wiiuse_set_nunchuk_orient_threshold()`
|
||||
|
||||
- API function `wiiuse_set_nunchuk_accel_threshold()`
|
||||
|
||||
- Event type `WIIUSE_NUNCHUK_INSERTED`
|
||||
|
||||
- Event type `WIIUSE_NUNCHUK_REMOVED`
|
||||
|
||||
- Event type `WIIUSE_CLASSIC_CTRL_INSERTED`
|
||||
|
||||
- Event type `WIIUSE_CLASSIC_CTRL_REMOVED`
|
||||
|
||||
- Event type `WIIUSE_GUITAR_HERO_3_CTRL_INSERTED`
|
||||
|
||||
- Event type `WIIUSE_GUITAR_HERO_3_CTRL_REMOVED`
|
||||
|
||||
Fixed:
|
||||
|
||||
- Added some missing function prototypes to wiiuse.h
|
||||
|
||||
- [Linux] Fixed Makefile to link libmath and libbluetooth
|
||||
|
||||
- Status event is set when a status report comes in
|
||||
|
||||
- Orientation threshold not being saved in lstate
|
||||
|
||||
v0.10 -- 11 Feb 2008
|
||||
--------------------
|
||||
Added:
|
||||
|
||||
- Real dynamic linking (by noisehole)
|
||||
|
||||
- Changed from callback to SDL style
|
||||
|
||||
- Guitar Hero 3 controller support
|
||||
|
||||
- API function `wiiuse_set_accel_threshold()`
|
||||
|
||||
- API function `wiiuse_version()`
|
||||
|
||||
- Macro `WIIUSE_USING_SPEAKER()`
|
||||
|
||||
- Macro `WIIUSE_IS_LED_SET(wm, num)`
|
||||
|
||||
- `wiiuse_init()` now autogenerates unids
|
||||
|
||||
- `orient_t::a_roll/a_pitch`
|
||||
|
||||
- `wiiuse_resync()`
|
||||
|
||||
- `wiiuse_cleanup()`
|
||||
|
||||
- `wiiuse_set_timeout()`
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Windows] Fixed bug where it did not detect expansions on startup
|
||||
|
||||
- Renamed `INFO/WARNING/DEBUG` macros to `WIIUSE_*` (by noisehole)
|
||||
|
||||
- Updated Makefiles (by noisehole)
|
||||
|
||||
- Fixed incorrect roll/pitch when smoothing was enabled
|
||||
|
||||
- Fixed nunchuk and classic controller flooding events when significant changes occurred
|
||||
|
||||
- Fixed bug where IR was not correct on roll if IR was enabled before handshake
|
||||
|
||||
Removed:
|
||||
|
||||
- `wiiuse_startup()`, no longer needed
|
||||
|
||||
v0.9 -- 3 Nov 2007
|
||||
------------------
|
||||
Fixed:
|
||||
|
||||
- Can now use `include/wiiuse.h` in C++ projects.
|
||||
|
||||
- HOME button works again.
|
||||
|
||||
- IR now functions after expansion is connected or removed.
|
||||
|
||||
v0.8 -- 27 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 8
|
||||
|
||||
- Exported all API functions for usage with non-C/C++ languages.
|
||||
|
||||
- Changed event callback to only trigger if a significant state change
|
||||
occurs.
|
||||
|
||||
Added:
|
||||
|
||||
- `wiimote_t::lstate` structure
|
||||
|
||||
Fixed:
|
||||
|
||||
- Bug 1820140 - Buffer overflow in `io_nix.c`. Thanks proppy.
|
||||
|
||||
v0.7 -- 19 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 7
|
||||
|
||||
- Renamed Linux build from `wii.so` to `wiiuse.so`
|
||||
|
||||
- Changed version representation from float to const char*.
|
||||
|
||||
Added:
|
||||
|
||||
- [Windows] BlueSoleil support.
|
||||
|
||||
- [Windows] Bluetooth stack auto-detection (WinXP SP2, Bluesoleil,
|
||||
Widdcomm tested).
|
||||
|
||||
- [Windows] API function `wiiuse_set_bluetooth_stack()`.
|
||||
|
||||
- Calculates yaw if IR tracking is enabled.
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Windows] Problem where a connection is made to a wiimote that does
|
||||
not exist.
|
||||
|
||||
- [Windows] Issue that occurred while using multiple wiimotes.
|
||||
|
||||
v0.6 -- 16 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.6.
|
||||
|
||||
- Ported to Microsoft Windows.
|
||||
|
||||
- Improved IR tracking.
|
||||
|
||||
- Default IR virtual screen resolutions changed depending on 16:9 or 4:3.
|
||||
|
||||
Added:
|
||||
|
||||
- `src/msvc/` and `api/msvc/` - Microsoft Visual C++ 6.0 project files.
|
||||
|
||||
v0.5 -- 13 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.5.
|
||||
|
||||
- Greatly improved IR tracking.
|
||||
|
||||
- Renamed function `wiiuse_set_ir_correction()` to `wiiuse_set_ir_position()`.
|
||||
|
||||
Added:
|
||||
|
||||
- API function `wiiuse_set_aspect_ratio()`
|
||||
|
||||
Fixed:
|
||||
|
||||
- When rolling around 180 degree rotation smoothing would not be seemless.
|
||||
|
||||
v0.4 -- 08 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.4.
|
||||
|
||||
- Greatly improved classic controller joystick functionality.
|
||||
|
||||
- Changed all functions named `wiimote_*()` to `wiiuse_*()`
|
||||
|
||||
- Renamed many macros from `WIIMOTE_*` to `WIIUSE_*`
|
||||
|
||||
|
||||
Added:
|
||||
|
||||
- IR support
|
||||
|
||||
- New `WIIMOTE_CONTINUOUS` flag to set continuous reporting
|
||||
|
||||
- Macro `IS_JUST_PRESSED()`
|
||||
|
||||
- Macro `WIIUSE_USING_ACC()`
|
||||
|
||||
- Macro `WIIUSE_USING_EXP()`
|
||||
|
||||
- Macro `WIIUSE_USING_IR()`
|
||||
|
||||
- API function `wiiuse_set_ir()`
|
||||
|
||||
- API function `wiiuse_set_ir_vres()`
|
||||
|
||||
- API function `wiiuse_set_ir_correction()`
|
||||
|
||||
- `gfx/` - A small OpenGL example that renders IR data
|
||||
|
||||
Fixed:
|
||||
|
||||
- Sometimes classic controller would only report infinite angle and magnitude for joysticks.
|
||||
|
||||
|
||||
v0.3 -- 10 Sept 2007
|
||||
--------------------
|
||||
Changed:
|
||||
|
||||
- Moved license to GPLv3.
|
||||
|
||||
- Bumped API version to 0.3.
|
||||
|
||||
Added:
|
||||
|
||||
- Support for Classic Controller
|
||||
|
||||
- Smoothing for roll and pitch values of the wiimote and nunchuk.
|
||||
|
||||
- API: `wiimote_set_flags()` to set or disable wiimote options.
|
||||
|
||||
- API: `wiimote_set_smooth_alpha()` to set smoothing alpha value.
|
||||
|
||||
Fixed:
|
||||
|
||||
- When the wiimote accelerates the roll or pitch is unreliable and was
|
||||
set to 0. It now remains at previous tilt value.
|
||||
|
||||
- If no event callback was specified then no events would be processed
|
||||
internally.
|
||||
|
||||
v0.2 -- 25 Aug 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.2.
|
||||
|
||||
Added:
|
||||
|
||||
- Nunchuk support.
|
||||
|
||||
- Ability to write to flash memory.
|
||||
|
||||
Fixed:
|
||||
|
||||
- Roll and pitch rotation now ranges from -180 to 180 degrees
|
||||
(previously -90 to 90).
|
||||
|
||||
- Bug when reading data from flash memory would read wrong address.
|
||||
|
||||
v0.1 -- 23 Feb 2007
|
||||
-------------------
|
||||
|
||||
- Initial release
|
||||
WiiUse Changelog
|
||||
================
|
||||
|
||||
Fork, located at <http://github.com/rpavlik/wiiuse>
|
||||
|
||||
Original project:
|
||||
|
||||
- <http://wiiuse.net/>
|
||||
- <http://wiiuse.sourceforge.net/>
|
||||
- <http://sourceforge.net/projects/wiiuse/>
|
||||
|
||||
v0.15 -- ???
|
||||
------------
|
||||
|
||||
Added:
|
||||
|
||||
- Callback API with constant-size wiimote_callback_data_t.
|
||||
Added to more easily support a ctypes python binding, generated
|
||||
by and included with RPythonic http://code.google.com/p/rpythonic/
|
||||
Thanks to hartsantler for this feature.
|
||||
|
||||
- Ability to build as a static library - must define WIIUSE_STATIC in
|
||||
client app as well as choosing the appropriate option when building
|
||||
WiiUse. The default is still a shared library (dll/so). Merged from
|
||||
paulburton and added to build system.
|
||||
|
||||
- Initial MotionPlus support. Thanks to admiral0 for the initial pull
|
||||
request merging from fwiine, and to Jan Ciger Reviatech SAS for building
|
||||
on it with fwiine and WiiC code as well as additional code. Try it out
|
||||
in the example by pressing 1 to start and 2 to stop.
|
||||
|
||||
- Full Mac support using Apple's native Bluetooth stack, based on [wiic](http://wiic.sourceforge.net/).
|
||||
|
||||
Fixed:
|
||||
|
||||
- Properly disable rumbling when told to. Thanks to Jeff Baker from
|
||||
(Inv3rsion, LLC.)(http://www.inv3rsion.com/)
|
||||
|
||||
- Builds properly now on mingw (both cross-compile and native).
|
||||
|
||||
- Improved reliability on Windows when running an app twice without dis-connecting
|
||||
the Wiimote (came as a part of the MotionPlus support.)
|
||||
|
||||
Changed:
|
||||
|
||||
- Improved header includes using feedback from (include-what-you-use)[iwyu]
|
||||
|
||||
- Additional internal function `wiiuse_millisleep()` to reduce the number
|
||||
of `ifdef`s scattered through the code.
|
||||
|
||||
- Provide endianness-conversion and buffer/unbuffer functions, rather than
|
||||
a jumble of function-style macros and raw type punning. This should
|
||||
fix all aliasing warnings.
|
||||
|
||||
[iwyu]:http://code.google.com/p/include-what-you-use/
|
||||
|
||||
v0.14 -- 2 May 2011
|
||||
-------------------
|
||||
Added:
|
||||
|
||||
- Support for redirecting or disabling messages: function
|
||||
`wiiuse_set_output` in `wiiuse.h`. The preprocessor symbol
|
||||
`WIIUSE_HAS_OUTPUT_REDIRECTION` indicates the presence of this feature.
|
||||
Thanks to Johannes Zarl for this handy feature!
|
||||
|
||||
- Doxyfile and "doc" target to the build system, to easily make use of
|
||||
the documentation already in the code, along with doc cleanups and
|
||||
improvements. (rp)
|
||||
|
||||
- Added balance board code to example (Paul Burton, rp)
|
||||
|
||||
Fixed:
|
||||
|
||||
- Off-by-two overflow in IR dot ordering - thanks to Karl Semich (xloem on GitHub)
|
||||
|
||||
- Documentation typo fix - thanks to Johannes Zarl
|
||||
|
||||
- Check malloc results. (rp)
|
||||
|
||||
- Initialize an array entirely. (rp)
|
||||
|
||||
- Fixed reading of balance board data. (rp)
|
||||
|
||||
Changed:
|
||||
|
||||
- Cleaned up README. (rp)
|
||||
|
||||
- Removed references to the LGPL/noncommercial license, since it's
|
||||
confusing and not useful in a practical sense. See, e.g.,
|
||||
<http://lists.fedoraproject.org/pipermail/legal/2010-November/001470.html>
|
||||
|
||||
- Renamed bundled workaround stdint.h header for Visual Studio, which
|
||||
we still have to use on MSVC 2010 for some unknown reason. (rp)
|
||||
|
||||
|
||||
v0.13.1 -- 11 November 2010
|
||||
---------------------------
|
||||
Fixed:
|
||||
|
||||
- Fix crashers due to unchecked pointer use.
|
||||
|
||||
- [Windows] Fix crashers due to unchecked pointer use.
|
||||
|
||||
v0.13 -- 11 November 2010
|
||||
-------------------------
|
||||
Added:
|
||||
- Support for Wii Balance Board ("wiiboard"): your code can
|
||||
`#ifdef EXP_WII_BOARD` (support based in part on code from TU-Delft)
|
||||
|
||||
- CMake-based cross-platform build system
|
||||
|
||||
- Version defines in `wiiuse.h`
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Linux] Bluez issue with not initializing structure on newer kernels
|
||||
|
||||
- Use `stdint.h` types for guaranteed type size independent of platform
|
||||
|
||||
- Bundle a suitable `stdint.h` for MSVC builds
|
||||
|
||||
- Setting IR to off before handshake complete actually respected now.
|
||||
(fix via Harald <Gotterdammerung@web.de>)
|
||||
|
||||
Changed:
|
||||
|
||||
- Old makefiles and Visual Studio projects removed.
|
||||
|
||||
- CMake allows easy building of binary packages with a uniform
|
||||
directory structure: .dll/.exe in bin, .lib/.so in lib, .h in
|
||||
include.
|
||||
|
||||
v0.12 -- 2 Apr 2008
|
||||
-------------------
|
||||
Added:
|
||||
|
||||
- API function `wiiuse_set_ir_sensitivity()`
|
||||
|
||||
- Macro `WIIUSE_GET_IR_SENSITIVITY()`
|
||||
|
||||
- Event type `WIIUSE_READ_DATA`
|
||||
|
||||
- Event type `WIIUSE_UNEXPECTED_DISCONNECT`
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Linux] Ability to try to `select()` nothing
|
||||
|
||||
- [Linux] Changed Makefile to include debug output when compiling in debug mode
|
||||
|
||||
Changed:
|
||||
|
||||
- `wiiuse_set_nunchuk_orient_threshold()` now takes a`wiimote_t` pointer
|
||||
|
||||
- `wiiuse_set_nunchuk_accel_threshold()` now takes a `wiimote_t` pointer
|
||||
|
||||
- `wiiuse_read_data()` generates an event `WIIUSE_READ_DATA` rather than
|
||||
executing a callback
|
||||
|
||||
|
||||
v0.11 -- 25 Feb 2008
|
||||
--------------------
|
||||
|
||||
Added:
|
||||
|
||||
- API function `wiiuse_set_nunchuk_orient_threshold()`
|
||||
|
||||
- API function `wiiuse_set_nunchuk_accel_threshold()`
|
||||
|
||||
- Event type `WIIUSE_NUNCHUK_INSERTED`
|
||||
|
||||
- Event type `WIIUSE_NUNCHUK_REMOVED`
|
||||
|
||||
- Event type `WIIUSE_CLASSIC_CTRL_INSERTED`
|
||||
|
||||
- Event type `WIIUSE_CLASSIC_CTRL_REMOVED`
|
||||
|
||||
- Event type `WIIUSE_GUITAR_HERO_3_CTRL_INSERTED`
|
||||
|
||||
- Event type `WIIUSE_GUITAR_HERO_3_CTRL_REMOVED`
|
||||
|
||||
Fixed:
|
||||
|
||||
- Added some missing function prototypes to wiiuse.h
|
||||
|
||||
- [Linux] Fixed Makefile to link libmath and libbluetooth
|
||||
|
||||
- Status event is set when a status report comes in
|
||||
|
||||
- Orientation threshold not being saved in lstate
|
||||
|
||||
v0.10 -- 11 Feb 2008
|
||||
--------------------
|
||||
Added:
|
||||
|
||||
- Real dynamic linking (by noisehole)
|
||||
|
||||
- Changed from callback to SDL style
|
||||
|
||||
- Guitar Hero 3 controller support
|
||||
|
||||
- API function `wiiuse_set_accel_threshold()`
|
||||
|
||||
- API function `wiiuse_version()`
|
||||
|
||||
- Macro `WIIUSE_USING_SPEAKER()`
|
||||
|
||||
- Macro `WIIUSE_IS_LED_SET(wm, num)`
|
||||
|
||||
- `wiiuse_init()` now autogenerates unids
|
||||
|
||||
- `orient_t::a_roll/a_pitch`
|
||||
|
||||
- `wiiuse_resync()`
|
||||
|
||||
- `wiiuse_cleanup()`
|
||||
|
||||
- `wiiuse_set_timeout()`
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Windows] Fixed bug where it did not detect expansions on startup
|
||||
|
||||
- Renamed `INFO/WARNING/DEBUG` macros to `WIIUSE_*` (by noisehole)
|
||||
|
||||
- Updated Makefiles (by noisehole)
|
||||
|
||||
- Fixed incorrect roll/pitch when smoothing was enabled
|
||||
|
||||
- Fixed nunchuk and classic controller flooding events when significant changes occurred
|
||||
|
||||
- Fixed bug where IR was not correct on roll if IR was enabled before handshake
|
||||
|
||||
Removed:
|
||||
|
||||
- `wiiuse_startup()`, no longer needed
|
||||
|
||||
v0.9 -- 3 Nov 2007
|
||||
------------------
|
||||
Fixed:
|
||||
|
||||
- Can now use `include/wiiuse.h` in C++ projects.
|
||||
|
||||
- HOME button works again.
|
||||
|
||||
- IR now functions after expansion is connected or removed.
|
||||
|
||||
v0.8 -- 27 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 8
|
||||
|
||||
- Exported all API functions for usage with non-C/C++ languages.
|
||||
|
||||
- Changed event callback to only trigger if a significant state change
|
||||
occurs.
|
||||
|
||||
Added:
|
||||
|
||||
- `wiimote_t::lstate` structure
|
||||
|
||||
Fixed:
|
||||
|
||||
- Bug 1820140 - Buffer overflow in `io_nix.c`. Thanks proppy.
|
||||
|
||||
v0.7 -- 19 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 7
|
||||
|
||||
- Renamed Linux build from `wii.so` to `wiiuse.so`
|
||||
|
||||
- Changed version representation from float to const char*.
|
||||
|
||||
Added:
|
||||
|
||||
- [Windows] BlueSoleil support.
|
||||
|
||||
- [Windows] Bluetooth stack auto-detection (WinXP SP2, Bluesoleil,
|
||||
Widdcomm tested).
|
||||
|
||||
- [Windows] API function `wiiuse_set_bluetooth_stack()`.
|
||||
|
||||
- Calculates yaw if IR tracking is enabled.
|
||||
|
||||
Fixed:
|
||||
|
||||
- [Windows] Problem where a connection is made to a wiimote that does
|
||||
not exist.
|
||||
|
||||
- [Windows] Issue that occurred while using multiple wiimotes.
|
||||
|
||||
v0.6 -- 16 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.6.
|
||||
|
||||
- Ported to Microsoft Windows.
|
||||
|
||||
- Improved IR tracking.
|
||||
|
||||
- Default IR virtual screen resolutions changed depending on 16:9 or 4:3.
|
||||
|
||||
Added:
|
||||
|
||||
- `src/msvc/` and `api/msvc/` - Microsoft Visual C++ 6.0 project files.
|
||||
|
||||
v0.5 -- 13 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.5.
|
||||
|
||||
- Greatly improved IR tracking.
|
||||
|
||||
- Renamed function `wiiuse_set_ir_correction()` to `wiiuse_set_ir_position()`.
|
||||
|
||||
Added:
|
||||
|
||||
- API function `wiiuse_set_aspect_ratio()`
|
||||
|
||||
Fixed:
|
||||
|
||||
- When rolling around 180 degree rotation smoothing would not be seemless.
|
||||
|
||||
v0.4 -- 08 Oct 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.4.
|
||||
|
||||
- Greatly improved classic controller joystick functionality.
|
||||
|
||||
- Changed all functions named `wiimote_*()` to `wiiuse_*()`
|
||||
|
||||
- Renamed many macros from `WIIMOTE_*` to `WIIUSE_*`
|
||||
|
||||
|
||||
Added:
|
||||
|
||||
- IR support
|
||||
|
||||
- New `WIIMOTE_CONTINUOUS` flag to set continuous reporting
|
||||
|
||||
- Macro `IS_JUST_PRESSED()`
|
||||
|
||||
- Macro `WIIUSE_USING_ACC()`
|
||||
|
||||
- Macro `WIIUSE_USING_EXP()`
|
||||
|
||||
- Macro `WIIUSE_USING_IR()`
|
||||
|
||||
- API function `wiiuse_set_ir()`
|
||||
|
||||
- API function `wiiuse_set_ir_vres()`
|
||||
|
||||
- API function `wiiuse_set_ir_correction()`
|
||||
|
||||
- `gfx/` - A small OpenGL example that renders IR data
|
||||
|
||||
Fixed:
|
||||
|
||||
- Sometimes classic controller would only report infinite angle and magnitude for joysticks.
|
||||
|
||||
|
||||
v0.3 -- 10 Sept 2007
|
||||
--------------------
|
||||
Changed:
|
||||
|
||||
- Moved license to GPLv3.
|
||||
|
||||
- Bumped API version to 0.3.
|
||||
|
||||
Added:
|
||||
|
||||
- Support for Classic Controller
|
||||
|
||||
- Smoothing for roll and pitch values of the wiimote and nunchuk.
|
||||
|
||||
- API: `wiimote_set_flags()` to set or disable wiimote options.
|
||||
|
||||
- API: `wiimote_set_smooth_alpha()` to set smoothing alpha value.
|
||||
|
||||
Fixed:
|
||||
|
||||
- When the wiimote accelerates the roll or pitch is unreliable and was
|
||||
set to 0. It now remains at previous tilt value.
|
||||
|
||||
- If no event callback was specified then no events would be processed
|
||||
internally.
|
||||
|
||||
v0.2 -- 25 Aug 2007
|
||||
-------------------
|
||||
Changed:
|
||||
|
||||
- Bumped API version to 0.2.
|
||||
|
||||
Added:
|
||||
|
||||
- Nunchuk support.
|
||||
|
||||
- Ability to write to flash memory.
|
||||
|
||||
Fixed:
|
||||
|
||||
- Roll and pitch rotation now ranges from -180 to 180 degrees
|
||||
(previously -90 to 90).
|
||||
|
||||
- Bug when reading data from flash memory would read wrong address.
|
||||
|
||||
v0.1 -- 23 Feb 2007
|
||||
-------------------
|
||||
|
||||
- Initial release
|
||||
@@ -1,306 +1,306 @@
|
||||
WiiUse README
|
||||
=============
|
||||
|
||||
Semi-Official Fork, located at <http://github.com/rpavlik/wiiuse>
|
||||
|
||||
Issue/bug tracker: <https://github.com/rpavlik/wiiuse/issues>
|
||||
|
||||
Mailing list: <wiiuse@librelist.com> - just email to subscribe. See
|
||||
<http://librelist.com/browser/wiiuse/> for archives and
|
||||
<http://librelist.com/> for more information.
|
||||
|
||||
Changelog: <https://github.com/rpavlik/wiiuse/blob/master/CHANGELOG.mkd>
|
||||
|
||||
About
|
||||
-----
|
||||
|
||||
Wiiuse is a library written in C that connects with several Nintendo
|
||||
Wii remotes. Supports motion sensing, IR tracking, nunchuk, classic
|
||||
controller, Balance Board, and the Guitar Hero 3 controller. Single
|
||||
threaded and nonblocking makes a light weight and clean API.
|
||||
|
||||
Distributed under the GPL 3+.
|
||||
|
||||
This is a friendly fork, prompted by apparent non-maintained status
|
||||
of upstream project but proliferation of ad-hoc forks without
|
||||
project infrastructure. Balance board support has been merged from
|
||||
[TU-Delft][1] cross-referenced with other similar implementations in
|
||||
embedded forks of WiiUse in other applications. Additional community
|
||||
contributions have since been merged. Hopefully GitHub will help the
|
||||
community maintain this project more seamlessly now.
|
||||
|
||||
Patches and improvements are greatly appreciated - the easiest way
|
||||
to submit them is to fork the repository on GitHub and make the
|
||||
changes, then submit a pull request. The "fork and edit this file"
|
||||
button on the web interface should make this even simpler.
|
||||
|
||||
[1]: http://graphics.tudelft.nl/Projects/WiiBalanceBoard
|
||||
|
||||
|
||||
Authors
|
||||
-------
|
||||
|
||||
Fork Maintainer: Ryan Pavlik <rpavlik@iastate.edu> or <abiryan@ryand.net>
|
||||
|
||||
Original Author: Michael Laforest < para > < thepara (--AT--) g m a i l [--DOT--] com >
|
||||
|
||||
Additional Contributors:
|
||||
|
||||
- dhewg
|
||||
- Christopher Sawczuk @ TU-Delft (initial Balance Board support)
|
||||
- Paul Burton <https://github.com/paulburton/wiiuse>
|
||||
- Karl Semich <https://github.com/xloem>
|
||||
- Johannes Zarl <johannes.zarl@jku.at>
|
||||
- hartsantler <http://code.google.com/p/rpythonic/>
|
||||
- admiral0 and fwiine project <http://sourceforge.net/projects/fwiine/files/wiiuse/0.13/>
|
||||
- Jeff Baker/Inv3rsion, LLC. <http://www.inv3rsion.com/>
|
||||
- Jan Ciger - Reviatech SAS <jan.ciger@reviatech.com>
|
||||
- Gabriele Randelli and the WiiC project <http://wiic.sourceforge.net/>
|
||||
- Juan Sebastian Casallas <https://github.com/jscasallas/wiiuse>
|
||||
- Lysann Schlegel <https://github.com/lysannkessler/wiiuse>
|
||||
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
Audience
|
||||
--------
|
||||
This project is intended for developers who wish to include support
|
||||
for the Nintendo Wii remote with their third party application.
|
||||
|
||||
|
||||
Platforms and Dependencies
|
||||
--------------------------
|
||||
Wiiuse currently operates on both Linux and Windows. You will need:
|
||||
|
||||
### For Linux: ###
|
||||
|
||||
- The kernel must support bluetooth
|
||||
|
||||
- The BlueZ bluetooth drivers must be installed
|
||||
|
||||
- If compiling, you'll need the BlueZ dev files (Debian/Ubuntu package
|
||||
libbluetooth-dev)
|
||||
|
||||
|
||||
### For Windows: ###
|
||||
|
||||
- Bluetooth driver (tested with Microsoft's stack with Windows XP SP2)
|
||||
|
||||
- If compiling, Microsoft Windows Driver Development Kit (DDK)
|
||||
|
||||
|
||||
### For Mac: ###
|
||||
|
||||
- Mac OS X 10.2 or newer (to have the Mac OS X Bluetooth protocol stack)
|
||||
|
||||
|
||||
### For either platform: ###
|
||||
|
||||
- If compiling, [CMake](http://cmake.org) is needed to generate a makefile/project
|
||||
|
||||
|
||||
Compiling
|
||||
---------
|
||||
You need SDL and OpenGL installed to compile the (optional) SDL example.
|
||||
|
||||
### Linux & Mac: ###
|
||||
|
||||
$ mkdir build
|
||||
|
||||
$ cd build
|
||||
|
||||
$ ccmake .. [-DCMAKE_INSTALL_PREFIX=/usr/local] [-DCMAKE_BUILD_TYPE=Release]
|
||||
|
||||
OR
|
||||
|
||||
$ cmake-gui ..
|
||||
|
||||
$ make [target]
|
||||
|
||||
If `target` is omitted then everything is compiled.
|
||||
|
||||
Where `target` can be any of the following:
|
||||
|
||||
- *wiiuse* - Compiles `libwiiuse.so`
|
||||
|
||||
- *wiiuseexample* - Compiles `wiiuse-example`
|
||||
|
||||
- *wiiuseexample-sdl* - Compiles `wiiuse-sdl`
|
||||
|
||||
- *doc* - Generates doxygen-based API documentation in HTML and PDF
|
||||
format in `docs-generated`
|
||||
|
||||
Become root.
|
||||
|
||||
# make install
|
||||
|
||||
`libwiiuse.so` is installed to `CMAKE_INSTALL_PREFIX/lib`
|
||||
`wiiuse-example` and `wiiuse-sdl` are installed to `CMAKE_INSTALL_PREFIX/bin`
|
||||
|
||||
|
||||
### Windows: ###
|
||||
|
||||
The CMake GUI can be used to generate a Visual Studio solution.
|
||||
|
||||
You need the install the Windows DDK (driver development kit) to compile
|
||||
wiiuse. You can download this from here:
|
||||
<http://www.microsoft.com/whdc/devtools/ddk/default.mspx>
|
||||
|
||||
You might also need to install the latest Windows SDK.
|
||||
|
||||
|
||||
Using the Library
|
||||
-----------------
|
||||
|
||||
To use the library in your own program you must first compile wiiuse as
|
||||
a module. Include `include/wiiuse.h` in any file that uses wiiuse.
|
||||
|
||||
For Linux you must link `libwiiuse.so` ( `-lwiiuse` ). For Windows you
|
||||
must link `wiiuse.lib`. When your program runs it will need
|
||||
`wiiuse.dll`.
|
||||
|
||||
|
||||
Known Issues
|
||||
------------
|
||||
|
||||
On Windows using more than one wiimote (usually more than two wiimotes)
|
||||
may cause significant latency.
|
||||
|
||||
If you are going to use Motion+, make sure to call wiiuse_poll or wiiuse_update
|
||||
in a loop for some 10-15 seconds before enabling it. Ideally you should be checking
|
||||
the status of any expansion (nunchuk) you may have connected as well.
|
||||
Otherwise the extra expansion may not initialize correctly - the initialization
|
||||
and calibration takes some time.
|
||||
|
||||
|
||||
### Mac OS X
|
||||
|
||||
Sometimes you may not be able to connect to the device, even if it is discoverable.
|
||||
If that happens open the Bluetooth Preferences, select the Nintendo device on the
|
||||
list and remove it (by clicking on the minus sign). Close the Preference Pane and
|
||||
try again.
|
||||
|
||||
Acknowledgements by Michael Laforest
|
||||
------------------------------------
|
||||
<http://wiibrew.org/>
|
||||
|
||||
> This site and their users have contributed an immense amount of
|
||||
> information about the wiimote and its technical details. I could
|
||||
> not have written this program without the vast amounts of
|
||||
> reverse engineered information that was researched by them.
|
||||
|
||||
Nintendo
|
||||
|
||||
> Of course Nintendo for designing and manufacturing the Wii and Wii remote.
|
||||
|
||||
BlueZ
|
||||
|
||||
> Easy and intuitive bluetooth stack for Linux.
|
||||
|
||||
Thanks to Brent for letting me borrow his Guitar Hero 3 controller.
|
||||
|
||||
Known Forks/Derivative Versions
|
||||
-------------------------------
|
||||
The last "old upstream" version of WiiUse was 0.12. A number of projects
|
||||
forked or embedded that version or earlier, making their own improvements.
|
||||
A (probably incomplete) list follows, split between those whose improvements
|
||||
are completed integrated into this new mainline version, and those whose
|
||||
improvements have not yet been ported/merged into this version. An eventual
|
||||
goal is to integrate all appropriate improvements (under the GPL 3+) back
|
||||
into this mainline community-maintained "master fork" - contributions are
|
||||
greatly appreciated.
|
||||
|
||||
### Forks that have been fully integrated: ###
|
||||
- [TU Delft's version with Balance Board support](http://graphics.tudelft.nl/Projects/WiiBalanceBoard)
|
||||
|
||||
- Added balance board support only.
|
||||
|
||||
- Integrated into mainline 0.13.
|
||||
|
||||
### Forks not yet fully integrated: ###
|
||||
- [libogc/WPAD/DevKitPro](http://wiibrew.org/wiki/Libogc)
|
||||
|
||||
- Started before the disappearance of the original upstream
|
||||
|
||||
- Focused on Wiimote use with Wii hardware
|
||||
|
||||
- Functions renamed, copyright statements removed
|
||||
|
||||
- Additional functionality unknown?
|
||||
|
||||
- git-svn mirror found here: <https://github.com/xloem/libogc-wiiuse>
|
||||
|
||||
- [fwiine](http://sourceforge.net/projects/fwiine/files/wiiuse/0.13/)
|
||||
|
||||
- Created an 0.13 version with some very preliminary MotionPlus support.
|
||||
|
||||
- Integrated into branch `fwiine-motionplus`, not yet merged pending
|
||||
alternate MotionPlus merge from WiiC by Jan Ciger.
|
||||
|
||||
- [DolphinEmu](http://code.google.com/p/dolphin-emu/source/checkout)
|
||||
|
||||
- Embedded, converted to C++, drastically changed over time and
|
||||
mostly unrecognizable now.
|
||||
|
||||
- A mostly intact version is here:
|
||||
<http://code.google.com/p/dolphin-emu/source/browse/?name=2.0#git%2FExternals%2FWiiUseSrc%2FSrc>
|
||||
|
||||
- Added Mac support
|
||||
|
||||
- Added code to handle finding and pairing wiimotes on windows, see:
|
||||
<http://code.google.com/p/dolphin-emu/source/browse/Source/Core/Core/Src/HW/WiimoteReal/IOWin.cpp>
|
||||
|
||||
- Fully modified version of the IO code is here:
|
||||
<http://code.google.com/p/dolphin-emu/source/browse/#git%2FSource%2FCore%2FCore%2FSrc%2FHW%2FWiimoteReal>
|
||||
|
||||
- [paulburton on github](https://github.com/paulburton/wiiuse)
|
||||
|
||||
- Added balance board support - skipped in favor of the TU Delft version.
|
||||
|
||||
- Added static library support - not yet added to the mainline.
|
||||
|
||||
- [KzMz on github)](https://github.com/KzMz/wiiuse_fork)
|
||||
|
||||
- Started work on speaker support.
|
||||
|
||||
- [WiiC](http://wiic.sourceforge.net/)
|
||||
|
||||
- Dramatically changed, C++ API added.
|
||||
|
||||
- MotionPlus support added.
|
||||
|
||||
- Added Mac support.
|
||||
|
||||
- DolphinEmu PPA: used to have a WiiUse 0.13
|
||||
|
||||
- Added Mac support.
|
||||
|
||||
- Unknown other changes - not yet investigated.
|
||||
|
||||
- Source package zipped up and available here:
|
||||
<https://github.com/rpavlik/wiiuse/downloads>
|
||||
|
||||
Other Links
|
||||
-----------
|
||||
- Thread about MotionPlus: <http://forum.wiibrew.org/read.php?11,32585,32922>
|
||||
|
||||
Original project:
|
||||
- SourceForge page: <http://sourceforge.net/projects/wiiuse/>
|
||||
- Archived pages of the original project:
|
||||
- http://web.archive.org/web/*/http://wiiuse.net/
|
||||
WiiUse README
|
||||
=============
|
||||
|
||||
Semi-Official Fork, located at <http://github.com/rpavlik/wiiuse>
|
||||
|
||||
Issue/bug tracker: <https://github.com/rpavlik/wiiuse/issues>
|
||||
|
||||
Mailing list: <wiiuse@librelist.com> - just email to subscribe. See
|
||||
<http://librelist.com/browser/wiiuse/> for archives and
|
||||
<http://librelist.com/> for more information.
|
||||
|
||||
Changelog: <https://github.com/rpavlik/wiiuse/blob/master/CHANGELOG.mkd>
|
||||
|
||||
About
|
||||
-----
|
||||
|
||||
Wiiuse is a library written in C that connects with several Nintendo
|
||||
Wii remotes. Supports motion sensing, IR tracking, nunchuk, classic
|
||||
controller, Balance Board, and the Guitar Hero 3 controller. Single
|
||||
threaded and nonblocking makes a light weight and clean API.
|
||||
|
||||
Distributed under the GPL 3+.
|
||||
|
||||
This is a friendly fork, prompted by apparent non-maintained status
|
||||
of upstream project but proliferation of ad-hoc forks without
|
||||
project infrastructure. Balance board support has been merged from
|
||||
[TU-Delft][1] cross-referenced with other similar implementations in
|
||||
embedded forks of WiiUse in other applications. Additional community
|
||||
contributions have since been merged. Hopefully GitHub will help the
|
||||
community maintain this project more seamlessly now.
|
||||
|
||||
Patches and improvements are greatly appreciated - the easiest way
|
||||
to submit them is to fork the repository on GitHub and make the
|
||||
changes, then submit a pull request. The "fork and edit this file"
|
||||
button on the web interface should make this even simpler.
|
||||
|
||||
[1]: http://graphics.tudelft.nl/Projects/WiiBalanceBoard
|
||||
|
||||
|
||||
Authors
|
||||
-------
|
||||
|
||||
Fork Maintainer: Ryan Pavlik <rpavlik@iastate.edu> or <abiryan@ryand.net>
|
||||
|
||||
Original Author: Michael Laforest < para > < thepara (--AT--) g m a i l [--DOT--] com >
|
||||
|
||||
Additional Contributors:
|
||||
|
||||
- dhewg
|
||||
- Christopher Sawczuk @ TU-Delft (initial Balance Board support)
|
||||
- Paul Burton <https://github.com/paulburton/wiiuse>
|
||||
- Karl Semich <https://github.com/xloem>
|
||||
- Johannes Zarl <johannes.zarl@jku.at>
|
||||
- hartsantler <http://code.google.com/p/rpythonic/>
|
||||
- admiral0 and fwiine project <http://sourceforge.net/projects/fwiine/files/wiiuse/0.13/>
|
||||
- Jeff Baker/Inv3rsion, LLC. <http://www.inv3rsion.com/>
|
||||
- Jan Ciger - Reviatech SAS <jan.ciger@reviatech.com>
|
||||
- Gabriele Randelli and the WiiC project <http://wiic.sourceforge.net/>
|
||||
- Juan Sebastian Casallas <https://github.com/jscasallas/wiiuse>
|
||||
- Lysann Schlegel <https://github.com/lysannkessler/wiiuse>
|
||||
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
Audience
|
||||
--------
|
||||
This project is intended for developers who wish to include support
|
||||
for the Nintendo Wii remote with their third party application.
|
||||
|
||||
|
||||
Platforms and Dependencies
|
||||
--------------------------
|
||||
Wiiuse currently operates on both Linux and Windows. You will need:
|
||||
|
||||
### For Linux: ###
|
||||
|
||||
- The kernel must support bluetooth
|
||||
|
||||
- The BlueZ bluetooth drivers must be installed
|
||||
|
||||
- If compiling, you'll need the BlueZ dev files (Debian/Ubuntu package
|
||||
libbluetooth-dev)
|
||||
|
||||
|
||||
### For Windows: ###
|
||||
|
||||
- Bluetooth driver (tested with Microsoft's stack with Windows XP SP2)
|
||||
|
||||
- If compiling, Microsoft Windows Driver Development Kit (DDK)
|
||||
|
||||
|
||||
### For Mac: ###
|
||||
|
||||
- Mac OS X 10.2 or newer (to have the Mac OS X Bluetooth protocol stack)
|
||||
|
||||
|
||||
### For either platform: ###
|
||||
|
||||
- If compiling, [CMake](http://cmake.org) is needed to generate a makefile/project
|
||||
|
||||
|
||||
Compiling
|
||||
---------
|
||||
You need SDL and OpenGL installed to compile the (optional) SDL example.
|
||||
|
||||
### Linux & Mac: ###
|
||||
|
||||
$ mkdir build
|
||||
|
||||
$ cd build
|
||||
|
||||
$ ccmake .. [-DCMAKE_INSTALL_PREFIX=/usr/local] [-DCMAKE_BUILD_TYPE=Release]
|
||||
|
||||
OR
|
||||
|
||||
$ cmake-gui ..
|
||||
|
||||
$ make [target]
|
||||
|
||||
If `target` is omitted then everything is compiled.
|
||||
|
||||
Where `target` can be any of the following:
|
||||
|
||||
- *wiiuse* - Compiles `libwiiuse.so`
|
||||
|
||||
- *wiiuseexample* - Compiles `wiiuse-example`
|
||||
|
||||
- *wiiuseexample-sdl* - Compiles `wiiuse-sdl`
|
||||
|
||||
- *doc* - Generates doxygen-based API documentation in HTML and PDF
|
||||
format in `docs-generated`
|
||||
|
||||
Become root.
|
||||
|
||||
# make install
|
||||
|
||||
`libwiiuse.so` is installed to `CMAKE_INSTALL_PREFIX/lib`
|
||||
`wiiuse-example` and `wiiuse-sdl` are installed to `CMAKE_INSTALL_PREFIX/bin`
|
||||
|
||||
|
||||
### Windows: ###
|
||||
|
||||
The CMake GUI can be used to generate a Visual Studio solution.
|
||||
|
||||
You need the install the Windows DDK (driver development kit) to compile
|
||||
wiiuse. You can download this from here:
|
||||
<http://www.microsoft.com/whdc/devtools/ddk/default.mspx>
|
||||
|
||||
You might also need to install the latest Windows SDK.
|
||||
|
||||
|
||||
Using the Library
|
||||
-----------------
|
||||
|
||||
To use the library in your own program you must first compile wiiuse as
|
||||
a module. Include `include/wiiuse.h` in any file that uses wiiuse.
|
||||
|
||||
For Linux you must link `libwiiuse.so` ( `-lwiiuse` ). For Windows you
|
||||
must link `wiiuse.lib`. When your program runs it will need
|
||||
`wiiuse.dll`.
|
||||
|
||||
|
||||
Known Issues
|
||||
------------
|
||||
|
||||
On Windows using more than one wiimote (usually more than two wiimotes)
|
||||
may cause significant latency.
|
||||
|
||||
If you are going to use Motion+, make sure to call wiiuse_poll or wiiuse_update
|
||||
in a loop for some 10-15 seconds before enabling it. Ideally you should be checking
|
||||
the status of any expansion (nunchuk) you may have connected as well.
|
||||
Otherwise the extra expansion may not initialize correctly - the initialization
|
||||
and calibration takes some time.
|
||||
|
||||
|
||||
### Mac OS X
|
||||
|
||||
Sometimes you may not be able to connect to the device, even if it is discoverable.
|
||||
If that happens open the Bluetooth Preferences, select the Nintendo device on the
|
||||
list and remove it (by clicking on the minus sign). Close the Preference Pane and
|
||||
try again.
|
||||
|
||||
Acknowledgements by Michael Laforest
|
||||
------------------------------------
|
||||
<http://wiibrew.org/>
|
||||
|
||||
> This site and their users have contributed an immense amount of
|
||||
> information about the wiimote and its technical details. I could
|
||||
> not have written this program without the vast amounts of
|
||||
> reverse engineered information that was researched by them.
|
||||
|
||||
Nintendo
|
||||
|
||||
> Of course Nintendo for designing and manufacturing the Wii and Wii remote.
|
||||
|
||||
BlueZ
|
||||
|
||||
> Easy and intuitive bluetooth stack for Linux.
|
||||
|
||||
Thanks to Brent for letting me borrow his Guitar Hero 3 controller.
|
||||
|
||||
Known Forks/Derivative Versions
|
||||
-------------------------------
|
||||
The last "old upstream" version of WiiUse was 0.12. A number of projects
|
||||
forked or embedded that version or earlier, making their own improvements.
|
||||
A (probably incomplete) list follows, split between those whose improvements
|
||||
are completed integrated into this new mainline version, and those whose
|
||||
improvements have not yet been ported/merged into this version. An eventual
|
||||
goal is to integrate all appropriate improvements (under the GPL 3+) back
|
||||
into this mainline community-maintained "master fork" - contributions are
|
||||
greatly appreciated.
|
||||
|
||||
### Forks that have been fully integrated: ###
|
||||
- [TU Delft's version with Balance Board support](http://graphics.tudelft.nl/Projects/WiiBalanceBoard)
|
||||
|
||||
- Added balance board support only.
|
||||
|
||||
- Integrated into mainline 0.13.
|
||||
|
||||
### Forks not yet fully integrated: ###
|
||||
- [libogc/WPAD/DevKitPro](http://wiibrew.org/wiki/Libogc)
|
||||
|
||||
- Started before the disappearance of the original upstream
|
||||
|
||||
- Focused on Wiimote use with Wii hardware
|
||||
|
||||
- Functions renamed, copyright statements removed
|
||||
|
||||
- Additional functionality unknown?
|
||||
|
||||
- git-svn mirror found here: <https://github.com/xloem/libogc-wiiuse>
|
||||
|
||||
- [fwiine](http://sourceforge.net/projects/fwiine/files/wiiuse/0.13/)
|
||||
|
||||
- Created an 0.13 version with some very preliminary MotionPlus support.
|
||||
|
||||
- Integrated into branch `fwiine-motionplus`, not yet merged pending
|
||||
alternate MotionPlus merge from WiiC by Jan Ciger.
|
||||
|
||||
- [DolphinEmu](http://code.google.com/p/dolphin-emu/source/checkout)
|
||||
|
||||
- Embedded, converted to C++, drastically changed over time and
|
||||
mostly unrecognizable now.
|
||||
|
||||
- A mostly intact version is here:
|
||||
<http://code.google.com/p/dolphin-emu/source/browse/?name=2.0#git%2FExternals%2FWiiUseSrc%2FSrc>
|
||||
|
||||
- Added Mac support
|
||||
|
||||
- Added code to handle finding and pairing wiimotes on windows, see:
|
||||
<http://code.google.com/p/dolphin-emu/source/browse/Source/Core/Core/Src/HW/WiimoteReal/IOWin.cpp>
|
||||
|
||||
- Fully modified version of the IO code is here:
|
||||
<http://code.google.com/p/dolphin-emu/source/browse/#git%2FSource%2FCore%2FCore%2FSrc%2FHW%2FWiimoteReal>
|
||||
|
||||
- [paulburton on github](https://github.com/paulburton/wiiuse)
|
||||
|
||||
- Added balance board support - skipped in favor of the TU Delft version.
|
||||
|
||||
- Added static library support - not yet added to the mainline.
|
||||
|
||||
- [KzMz on github)](https://github.com/KzMz/wiiuse_fork)
|
||||
|
||||
- Started work on speaker support.
|
||||
|
||||
- [WiiC](http://wiic.sourceforge.net/)
|
||||
|
||||
- Dramatically changed, C++ API added.
|
||||
|
||||
- MotionPlus support added.
|
||||
|
||||
- Added Mac support.
|
||||
|
||||
- DolphinEmu PPA: used to have a WiiUse 0.13
|
||||
|
||||
- Added Mac support.
|
||||
|
||||
- Unknown other changes - not yet investigated.
|
||||
|
||||
- Source package zipped up and available here:
|
||||
<https://github.com/rpavlik/wiiuse/downloads>
|
||||
|
||||
Other Links
|
||||
-----------
|
||||
- Thread about MotionPlus: <http://forum.wiibrew.org/read.php?11,32585,32922>
|
||||
|
||||
Original project:
|
||||
- SourceForge page: <http://sourceforge.net/projects/wiiuse/>
|
||||
- Archived pages of the original project:
|
||||
- http://web.archive.org/web/*/http://wiiuse.net/
|
||||
- http://web.archive.org/web/*/http://wiiuse.sourceforge.net/
|
||||
Reference in New Issue
Block a user