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.0
instead of0.9
inlog()
andlog10()
functions. - Return
0.0
instead ofInf
inpow()
function if the base is0.0
and the exponent negative. - Return
0.0
if 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.