Releases: projectM-visualizer/projectm-eval
projectm-eval v1.0.3
This bugfix releases fixes some additional differences found in comparison to ns-eel2, mainly due to the original library not honoring floating-point exceptions in the assembly implementation of many functions. Those changes include:
- Return
0.0instead of0.9inlog()andlog10()functions. - Return
0.0instead ofInfinpow()function if the base is0.0and the exponent negative. - Return
0.0if the fast inverse square root functioninvsqrt()resolves toNaN. - Add a small amount (
0.0001) to float values going intofreembuf()to avoid indexing the wrong block due to rounding errors.
To further make sure all functions work as expected, some standard C types were changed to fixed-sizes types and unit tests were implemented for all available expression functions and operators.
Thanks to @OfficialIncubo for testing and making the changes!
projectm-eval v1.0.2
This bugfix release fixes issues with bitwise and logical AND and OR, which were not correctly parsed and assigned. Specifically, it fixes the following operators:
- The bitwise
&and|operators were missing an implementation and the scanner previously assigned wrong functions to those operators (they were executed as modulo%and pow^). - The logical/boolean
&&and||operators were mapped to the bitwiseband()and.bor()functions.
The internal functions implementing those operators were renamed to more cleraly state whether they implement bitwise or boolean AND/OR, resolving the abiguity of the b prefix of some functions.
projectm-eval v1.0.1
This small patch release adds a pkg-config file on UNIX if projectm-eval is installed as a static library for use in other projects.
No other functional changes in this release, so if you're not using pkg-config in your toolchain, there's no need to update.