


Version 0.9.3 prerelease (2011.01.30):




* added: German translation made by




Moritz Beleites <morbel at gmx.net>








Version 0.9.2 (2010.09.24):




* added: Italian translation made by




Damiano Monaco <dmonax at gmail.com>




* added: menu: edit>swap (ctrl+W)




swapping the input for the output edit








Changes from TTMath 0.9.2 relating to TTCalc:




* fixed: Big::Add() sometimes incorrectly rounded the last bit from its mantissa




* fixed: Big::ToString method




in some cases when in the output string the exponent should be equal zero




the method changes the exponent to one so the last digit from the mantissa




was lost












Version 0.9.1 (2010.02.07):




* fixed: the pad window didn't take into account following options (from display tab):




grouping, input commas and parameter separators




* updated: Chinese translation








Changes from TTMath 0.9.1 relating to TTCalc:




* fixed: the parser didn't use characters for changing the base (# and &)




those characters were skipped




(this bug was introduced in 0.9.0)




* fixed: added in the parser: operator's associativity




operator ^ (powering) is rightassociative:




sample: 2^3^4 is equal 2^(3^4) and it is: 2.41e+24




previously was: 2^3^4 = (2^3)^4 = 4096




* changed: in Big::ToString() the base rounding is made only if the result value




would not be an integer, e.g. if the value is 1.999999999999 then




the base rounding will not be done  because as the result would be 2




* added: IEEE 754 halftoeven rounding (bankers' rounding) to the following




floating point algorithms: Big::Add, Big::Sub, Big::Mul, Big::Div












Version 0.9.0 (2009.11.25):




* fixed: when 'C' button was pressed, the cursor was not placed in the edit window




* added: Pad window  a multiline edit window




* added: Checking for update dialog box




also the program can check automatically for an update at startup




* added: there are some new buttons on the standard tab




 (...)  the whole expression is surrounded by brackets (ctrl+0 short cut)




 1/(...)




 ;




 %  a new percentage operator




 floor/ceil/min/max/sqrt/root/gamma




* added: some new options on display tab:




 grouping




 input decimal point




 parameters separated by




* changed: precision:




Medium  512 bits mantissa, 64 bits exponent




Big  1024 bits mantissa, 128 bits exponent








Changes from TTMath 0.9.0 relating to TTCalc:




* added: operator percentage




e.g. 100050% = 1000(1000*0,5) = 500




* added: function frac(x)  returns a value without the integer part




(only fraction remains)




* changed: algorithms in sqrt(x) and root(x ; n)




they were not too much accurate for some integers




e.g. Root(16;4) returned a value very closed to 2 but not exactly 2




* changed: added specializations to Big::ToString() when the base is equal 4, 8 or 16




the previous version was not accurate on some last digits (after the comma operator)




consider this binary value (32 bit mantissa):




base 2: 1.1111 1111 1111 1111 1111 1111 1110 101




previous ToString() gave:




base 4: 1.33333333333332




base 8: 1.777777777




base 16: 1.FFFFFF




now we have:




base 4: 1.3333333333333222




base 8: 1.77777777724




base 16: 1.FFFFFFEA












Version 0.8.7 prerelease (2009.09.16):




* added: new language: Swedish




translation made by: Lars 'Bafvert' Gafvert <lars.gafvert at gmail dot com>




* changed: version of the TTMath library: 0.9.0 prerelease now








Changes from TTMath 0.9.0 prerelease relating to TTCalc:




* added: gamma() function




* changed: factorial() function is very fast now












Version 0.8.6 (2009.06.30):




* added: new language: Russian




translation made by: Vladimir Gladilovich <vdgladilovich at gmail dot com>












Version 0.8.5 (2009.06.18):




* added: new language: Chinese




translation made by: Juis <zsyfly at gmail dot com>




* changed: version of the TTMath library: 0.8.5 now








Changes from TTMath 0.8.5 relating to TTCalc:




* fixed: Big::Mod(x) didn't correctly return a carry




and the result was sometimes very big (even greater than x)




* changed: factorial() function is much faster now












Version 0.8.4 (2009.05.08):




* added: new language: Danish




translation made by: Rune Bisgaard Vammen <runebisgaard at gmail dot com>












Version 0.8.3 (2009.04.06):




* fixed: calculating the size of the main window




now it looks good on MS Vista and when a user changes size of some




widgets such as a border, font size, etc.




* changed: variables and functions are casesensitive now, e.g.




'x' is not the same as 'X'




* changed: precision:




small  the same as previous




medium  288 bits for the mantissa, 64 bits for the exponent




big  864 bits for the mantissa, 128 bits for the exponent




previous were:




medium  192 bits for the mantissa, 64 bits for the exponent




big  288 bits for the mantissa, 96 bits for the exponent




* changed: new version of TTMath bignum library: 0.8.3




* added: when a user presses CTRL+C then the result will be




copied into the clipboard (if the current control which




has a focus is not an edit control, or if it is an edit




but has no selection)




* added: when a user presses CTRL+V then the text from the clipboard




will be copied into the edit control




(the focus can be anywhere but it cannot be on another edit control)




* added: 'decimal point' option on the display tab




* added: variables and functions can have underline characters




in their names




* added: 'remove trailing zeroes' option on 'display' tab




* added: new language: Spanish




translation made by Alejandro S. Valdezate




alesanval at gmail dot com




* added: on display tab: we can select 'deg' 'rad' or 'grad' for calculating




in such functions: sin,cos,tan,cot,asin,acos,atan,acot




* added: when the program exits new variables and functions are read from




the configuration file and then the file is saved




(if you have inserted some variables or functions in a different




instance of TTCalc those variables or functions were previously




skipped)




* removed: 'cut off last non valid digits' on 'rounding' option




on 'display' tab








Changes from TTMath 0.8.3 relating to TTCalc:




* fixed: Big::Add incorrectly rounded 'this' when both exponents were equal




it caused that sometimes when adding a zero the result has changed




this had impact among other things on FromString() method




"0,8" had different binary representation from "0,80"




* fixed: Big::Pow(const Big<exp, man> & pow)




it's using PowInt() only when pow.exponent is in range (man*TTMATH_BITS_PER_UINT; 0]




previously the powering 'hung' on an input like this: "(1+ 1e10000) ^ 10e100000000"




(there was 10e100000000 iterations in PowInt())




* fixed: in function DegToRad(const ValueType & x, ErrorCode * err = 0) it is better




to make division first and then mutliplication  the result is more




accurate especially when x is: 90,180,270 or 360




* fixed: the parser didn't correctly treat operators for changing the base




(radix)  operators '#' and '&', e.g.:




'#sin(1)' was equal '0'  there was a zero from '#' and then




it was multiplied by 'sin(1)'




the parser didn't check whether Big::FromString() has actually




read a proper value  the method Big::FromString() didn't have




something to report such a situation




* fixed: Big::FromString() when the base is 10, the method reads the scientific




part only if such a part it correctly supplied, e.g:




'1234e10', '1234e+10', '1234e5'




previous '1234e' was treated as: '1234e0' (now parsing stops on 'e' and




the 'e' can be parsed by other parsers, e.g. the mathematical




parser  now in the parser would be: '1234e' = '1234 * e' = '3354,3597...' )




* changed: in the parser: the form with operators '#' and '&' is as follows:




[+][#&]numeric_value




previous was: [+][#&][+]numeric_value




* changed: the parser is allowed to recognize values which




begin with a dot, e.g '.5' is treated as '0.5'




* added: functions to the parser: gradtorad(grad), radtograd(rad), degtograd(deg),




degtograd(d,m,s), gradtodeg(grad)




* added: a short form of multiplication




(without the '*' character) e.g. '5y'




(it's used only if the second parameter is a variable




or function)












Version 0.8.2 portable (2007.07.01):




* added: the portable version of the program TTCalc




it uses *.ini config file from the same folder where




is the executable file, and it's much smaller in size




(in the portable version there's only one kind




of precision and the program is packed with UPX 




the Ultimate Packer for eXecutables)




there are no other differences between version 0.8.1 and this one












Version 0.8.1 (2007.04.17):




* changed: on win9x the configuration file is in a folder like:




"c:\windows\data application\ttcalc\" now




* changed: the program uses the TTMath 0.8.1 now




* added: from TTMath 0.8.1:




root(x, index), bitand(x,y), bitor(x,y), bitxor(x,y)




/band(x,y), bor(x,y), bxor(x,y)/




asinh(x), acosh(x), atanh(x), acoth(x) /atgh(x), actgh(x)/




* changed: from TTMath 0.8.1: calculations are much faster now




especially the factorial() function




* changed: from TTMath 0.8.1: the way of parsing operators












Version 0.8.0 (2007.04.02):




* added: the del key deletes a variable or a function now




(if the focus is on the list)




* added: a user can change the names of variables or functions now




* changed: the program uses TTMath 0.8.0 now




* added: functions: from TTMath 0.8.0:




DegToDeg(deg, min, sec), DegToRad(deg), DegToRad(deg, min, sec),




RadToDeg(rad), Ceil(x), Floor(x), Sqrt(x), Sinh(x), Cosh(x),




Tanh(x) /Tgh(x)/, Coth(x) /Ctgh(x)/




* added: help




* changed: from TTMath 0.8.0:




renamed: CTan() into Cot() or Ctg()




renamed: ACTan() into ACot() or ACtg()




Factorial() has a history log now (it can remember last




10 calculated values)




* fixed: the vertical size of the main window when a user uses a different




size of the window caption (especially under the Windows XP Luna)




* fixed: on Windows 9x: the program hung when a user clicks on a control




on the first tab




* fixed: when a user started navigating from the keyboard the program showed




a wrong variable or a funtion in the edit dialog












Version 0.7.3 (2007.03.08):




* added: the program shows some kind of errors itself




* added: checking whether an user has inserted a correct value of a variable




or a function




* fixed: navigation from the keyboard




* changed: the esc key selects the entire input text now (in the input edit)




* added: a test when the program is being starded which checks if the




coordinates of the main window actually pointing at the valid area (for




example when someone took his configuration file into a new computer and




the new computer has a smaller screen)












Version 0.7.2 (2007.02.28):




* added: buttons Sgn and Mod




* changed: the button 'err' is active when there's actually an error now




* added: buttons: ASin, ACos, ATan, ACTan




* fixed: the program didn't save the current language into the configuration file




* fixed: the second thread didn't read the main window correctly and it caused




small problems when an user was typing into the first edit control












Version 0.7.1 (2007.02.08):




* added: button 'err' (error) on the first tab




* changed: the input edit can have 2048 characters now




* added: remembering the vertical size into the config file




* fixed: a problem with the 'tab' key




* added: a message 'Calculating...' when an user clicks on the 'err' button




during calculating something
