stk-code_catmod/lib/wiiuse/CHANGELOG.mkd
2018-11-28 11:18:32 -08:00

12 KiB

WiiUse Changelog

De-facto official fork, located at http://github.com/wiiuse/wiiuse

Original project (0.12 and earlier):

v0.15.4 -- 28-Nov-2018

Fixed:

  • Windows build - verified to work on VS Community 2017 from fresh install.

Changed:

  • Removed WCONST macro of questionable value - it made some struct members "const" for consuming software, but non-const within the library. Made it too complex to maintain. Shouldn't really affect usage (doesn't change layout, etc.), but noted separately because it is technically a (very minor) API change.
  • Removed broken links to old project web sites.

v0.15.3 -- 25-Nov-2018

Fixed:

  • Fixed forgotten version number
  • Fixed library installation prefix on 64bit systems

v0.15.2 -- 25-Nov-2018

Fixed the L2CAP channel setup on Linux, now we use only the interrupt/data channel (0x13) and not the control channel (0x11). This finally fixes the RVL-CNT-01-TR (gen 2) Wiimote. The control channel is still kept open, in case something needs it in the future.

Cleaned the indentation by running the code through clang-format.

v0.15.1 -- 20-Nov-2018

"Brown paper bag" release - missed some build-related pull requests before tagging 0.15.

v0.15 -- 20-Nov-2018

Roll-up release of accumulated changes - library has been "stable" now for some time

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.

Fixed:

  • Properly disable rumbling when told to. Thanks to Jeff Baker from Inv3rsion, LLC.

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

  • Build system fixes.

Changed:

  • Improved header includes using feedback from (include-what-you-use)iwyu

  • Additional internal function wiiuse_millisleep() to reduce the number of ifdefs 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.

  • Cleaned up README and CHANGELOG.

  • Migrated repo to its own organization on GitHUb.

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:

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 awiimote_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