Files
libwiiuse/CHANGELOG.mkd
2011-09-09 09:45:41 -05:00

408 lines
9.2 KiB
Markdown

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.
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).
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 occured
- 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 occured 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