MD5 SUMS -------- 45275fb1105b1f9c033fb7d637de733a *ttcalc-0.9.3-bin.zip 865f255247e56d8eca27142fbc830e3b *ttcalc-0.9.3-setup.exe 61c320c5c7e40c001e3c61ffc40f0f51 *ttcalc-0.9.3-src.zip 44ef799a27b01d303301d8c5bf76b561 *ttcalc-portable-0.9.3-bin.zip CHANGELOG --------- Version 0.9.3 (2011.06.04): * added: German translation made by Moritz Beleites * added: on display tab: an option how many digits should be grouped * changed: the way how buttons on display tab work suppose we have "123+34+56" in the first edit, then select (by mouse or a keyboard) "123+34" similar as you would like to copy them to the clipboard, then press a button let we say "sin" - the result is: "sin(123+34)+56" * updated: Chinese translation * fixed: ttcalc didn't correctly delete variables/functions from its config file so when you restarted the program you still had the deleted variables/functions * fixed: option: "parameters separated by" was not correctly read from the config file Version 0.9.2 (2010.09.24): * added: Italian translation made by Damiano Monaco * 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 right-associative: 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 half-to-even 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. 1000-50% = 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 * 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 Version 0.8.5 (2009.06.18): * added: new language: Chinese translation made by: Juis * 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 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 case-sensitive 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 & 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+ 1e-10000) ^ 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', '1234e-5' 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