Yellow/higher items are listed first and
considered more newsworthy for your attention.


1.94

    (2021-09-27)

Fixed installation issue.

1.93

    (2021-09-26)

  • Fixed sums containing >= or <= within if statement such as: "if(30>=29, 5, 6)"
  • Added a signing certificate back!
  • Something like 0.1 * £-100 was not equal to 0.1 * -£100. It is now, and both equal £-10.00.
  • Added in an earlier version, but forgot to mention the new "madev" function, otherwise known as the "MAD" or "mean absolute deviation". According to some sources, this is potentially more useful than the standard deviation in most common every day scenarios. Drama and controversy here and here.
  • User functions with capital letters didn't work before. They do now.
  • Added cap(n, low, high) function. So it caps n between the next two numbers given. Examples: cap(25, 20,30) = 25, cap(19, 20,30) = 20, cap(31, 20,30) = 30. Also added basic capmax(a,b) and capmin(a,b) functions.
  • Added to documentation
  • Added examples to user functions file, to help users created Javascript functions.

    1.92

        (2020-06-09)

  • Countries which use the comma as the decimal point can now use the percentage symbol within functions

    1.91

        (2020-05-23)

  • In v1.90, sums using negative E-notation numbers produced erroneous results due to incorrect order of operation. Example: 1 / 10e-2 produced 0.001, but now correctly produces 10.
  • If the "Close OpalCalc sends to tray" option is ticked, pressing the Esc key now closes to tray instead of quitting.
  • Added random number generator functions (using this algorithm): rnd(maxn), rnds(seed), rndi(maxn), rndis(seed,maxn)
  • Added mil and electron volt unit, radioactivity units, along with tidying up the calorie energy units
  • Fixed bug with crash on startup when using Windows-wide beta UTF-8 support feature (now using RichEdit50 instead of RichEdit20)
  • Opening Options window doesn't unnecessarily come up with the "You may wish to untick: 'Clear sheet when sent to tray'" notice now as it sometimes did before.

    1.90

        (2018-11-12)

  • Many sums involving incompatible units now throw a warning as they should
  • The filepaths for saving settings will now not be confused with saving general calculation sheets.
  • Fixed fetching of last currency conversion data if offline or there was an issue accessing the online data.
  • Prior multiplication symbols weren't properly handled if there was a colon/semi-colon after a "line commenting" quote (example: "2×2 ' 3*3 : 4*4"). Now fixed.
  • Sums such as $10million / $5million now work
  • Typing in certain numbers next to certain units (e.g: m²) won't automatically 'superscript' the number now. Use Alt+2 or Alt+3 etc. to get the equivalent.
  • Disabled answer popup when in answer column, since it was quite flickery. Also changed cursor in answer section to reduce flicker further.
  • Hotkey on Windows startup now works first time. Also even if the window is showing, if the window is not in focus, then the hotkey will now activate it and bring it to the front Michael Weiner

    1.89

        (2018-03-03)
    Fixed resolution bug which affected the Options and Notation window

    1.88

        (2018-02-28)
  • Optionally, closing Opalcalc (using the top right x button, or simply pressing Escape) will now automatically send it to the tray! This makes it a lot quicker when starting it up again, as you just single click it back from the tray to bring it back to life. Optionally, you can automatically clear the sheet when it gets sent to the tray too. As a further convenience, if you open up extra Opalcalc windows, these will quit if you close them, leaving only the last one to not quit, but simply minimize to the tray.
  • To avoid a certain class of bugs, symbols, words and numbers before the @ keyword are now ignored, so make sure to start time calculations with the @ symbol (including variable assignments).
  • Certain sums with E-notation (e.g: "1/2e3") now compute properly
  • Added PSI unit (in addition to equal lbforce\in² unit)
  • Highlighting all text and pressing backspace will now clear the sheet as you'd expect
  • Using the round() function was inconsistent before: halves were sometimes rounded down instead of up - now they always round up.

    1.87

        (2017-03-21)
  • It's now possible to get the sums to align right (instead of the usual left). Simply press Ctrl+R to toggle between them.
  • Added cotan functions
  • Fixed interpretation of 'e' in certain hex numbers such as x`a1e0
  • E notation (e.g: 5e3 = 5000) can now use the decimal point (e.g: 5e3.5 = 15,811.388)
  • Added padding symbol for custom notation. One useful technique is to make the padding symbol a space. Combined with "Pad/chop major digits" ticked, a high enough value for "Pad left", the "Thousands separator" unticked, and a fixed width font produces output numbers which are aligned by the decimal point.

    1.86

        (2016-07-05)
  • Global hotkey is now saved properly.

    1.85

        (2016-06-10)
  • Fixed 'Keep on top' functionality so that Options and Quicksearch window keep on top of the main window when opened, plus other minor related fixes.

    1.84

        (2016-06-06)
  • Moved "Update Opalcalc" menu item to help menu.
  • Minor fixes and tweaks in Quick search window

    1.83

        (2016-06-05)
  • Adjusted Export window to use Ctrl+E shortcut
  • Quick search window now uses Ctrl+Q shortcut and be closed using Escape



    1.82

        (2016-06-05)
  • Since Opalcalc doesn't save custom functions automatically since the previous version, there needed to be a way to easily save them. This can now be achieved via the dropdown menu.
  • Double clicking an empty sheet doesn't crash Opalcalc now (recent bug in the last version).
  • New option to allow decimal point to be forced as the standard period (.) even for countries which usually use a comma. Saves having to go change the Windows Region and language settings.
  • Added geometric absolute function (gabs()).
  • Fixed crash upon double click in empty main window (crept in the last version).
  • QuickSearch window now has a shortcut and selection functionality.

    1.81

        (2016-02-09)
  • Fixed crash if the function separator symbol (List separator) was to the pip | symbol.

    1.80

        (2016-02-16)
    It's been a year since Opalcalc was last updated. An entire laundry list of features and minor bugs has built up during that time, and most have made this tasty 1.80 release. Perhaps the biggest feature is the ability to send OpalCalc to the tray and back again with a simple global hotkey. After, live web currencies now update again.

    Ever since OpalCalc was first released, I don't recall a single time someone said "You've made such-and-such worse", let alone "Can I have an older version?". It only gets better and better. Thanks again to our supporters who have upgraded to the full version of Opalcalc and sent in bug reports.


  • Live currencies are supported again after being broken for months!
  • OpalCalc now allows you to use a global keyboard shortcut to send it to the tray and back again! (default is Ctrl+Comma)
  • Fixed potential line misalignment issues
  • Many sums (such as taking the square root of a negative number) now equal "NaN" ('not a number') instead of "error" as previously.
  • Removed other annoying 'ding' sounds when using PageUp, PageDown, Backspace, Home or End keys.
  • Boolean logic now outputs as True/False instead of 1 or 0
  • Added Indian style thousands separator where commas are inserted every two digits instead of three.
  • Fixed units containing the \ symbol. For example: "btu\hour"
  • Superscript numbers now act as exponential similar to normal math notation (e.g: 4² = 16 or (8-4)³·²=84.448506). Use the Alt key and a number (or minus key or decimal symbol) to activate the superscript symbols.
  • Added percentchange(x,y) function to imitate Soulver's "x as a % on y" syntax. For example: percentchange(50,200) = 300%
  • Custom functions are not automatically saved anymore when you type them into OpalCalc. This saves it from clogging up the text file with loads of scrap temporary functions.
  • Two new somewhat minimalist colour modes "Comment day" and "Comment night". Both distinguish comments more easily (bright green)
  • Sortable date/time format now works with @now
  • Functions with more than one parameter can now work with square brackets.
  • Reduced border and splitter size slightly for a neater look
  • Fixed display of output when dividing H:M:S time units by normal time units
  • Square brackets can be used to create functions rather than just call them.
  • Quick search now lists custom functions, custom variables, and custom units.
  • Fixed Fibonacci function
  • Added iterated logarithm function (use with care, certain numbers may take a LONG time!)
  • Corrected display of answers involving currency where the dimension of the current was not equal to one.
  • Functions with reserved Javascript names (e.g: "super") now display a warning if you try to create them.
  • Double clicking a number now includes the decimal point if there is one.
  • Reverse polish notation sums previously used spaces to separate numbers and operators. Now they use the thousands separator symbol (usually a comma or dot) to allow for negative numbers more easily.
  • Closing multiple OpalCalcs at once won't bring up an error message anymore
  • Sums such as 4!(2) work now
  • Four new functions based on combination and permutation (both with branching off to allow repetition/duplicates): combinations(e,s), combinationsr(e,s), permutations(e,s), permutationsr(e,s). 'e' represents the number of elements, and 's' represents the number of states within each element.

    1.75

        (2015-02-27)
    An update has been a long time in coming. It's mostly a bug-fix release, but a few features have been added too, notably reverse Polish notation, and more options to save when you close OpalCalc. Oh, and that annoying "Ding!" sound when you scroll too far has gone forever (thanks to Anu N for pointing this out!). I'm sure he won't mind me quoting him: "The sound I get when I move the cursor too much down is irritating. Really irritating. And quite unnecessary as well. Maybe an option to disable it?". No sooner said than done!

  • Hooray - there's no annoying 'ding' sound if the cursor overshoots the document!
  • Online documentation has been updated to reflect the latest versions of Opalcalc
  • Clicking the Options window made the main Opalcalc window come to the front unnecessarily. This is now fixed.
  • RPN (Reverse Polish notation) is now supported! Just start the line with a backslash symbol (\).
  • If you used variables involving units of time and tried to copy/paste these sums or open them from a file, such variables wouldn't previously be recognized. (Thanks to Gabriel M for spotting this!).
  • 'st', 'th' etc. are now allowed in dates. For example, 'th' in "25th December".
  • Pasting text into OpalCalc from programs such as Microsoft OneNote now works correctly.
  • More options for when you'll be asked to save your document if you close OpalCalc. "Never", "Always", and anything in between.
  • New special variable - "anscount". This will give how many numbers are in your last sum. So "6+7+8" would have an anscount of three.
  • Minor colour coding changes: The "ans" in "$ans" is now highlighted. Using the mouse to click inside brackets will now highlight them (only using the cursor keys worked before). And fixed colouring of special words and variables when used in number-base sums.
  • Fixed "Workday" example, by adding 'clear' keyword.
  • Fixed use of the 'e' letter in non-ten number base sums. For example, "x`1e4" will not be treated as exponential notation.
  • Added cubic mile and cubic kilometre units.
  • Spaces in numbers are now supported when used in conjunction with units. This affects countries such as France who may use the space instead of commas (or periods) as a thousands separator.
  • Sums such as "(10m/2m)m" produced an error before. Not anymore.

    1.74

        (2014-08-29)
  • Very small numbers combined with measurement units were previously scrambled when referenced. Example: Something like "0.00001 miles" would produce an error or incorrect figure when used in a future calculation (referenced as a variable, answer, total etc.). This awful bug has now been fixed for good.
  • Sums such as "5/4cm" will now result in "1.25 cm" rather than "1.25 /cm". The latter is more technically correct as the sum was originally treated as "5/(4cm)", but it is now treated as "(5/4)cm" which is how most people will interpret it. If you're ever unsure, always use brackets to be on the safe side.
  • You can now log sheets to disk upon closing of Opalcalc. Useful for storing all past calcs automatically. To open the text log file, go to Options (window) -> "Open user path" (button) -> "calc-log.txt" (file).
  • Single parameter functions by themself on a line will calculate the answer to the previous sum automatically. For example "9", followed by "sqrt" on the next line will result in 3 without having to type "sqrt(ans)".
  • In the "Custom Notation options" window, GUI elements are now automatically disabled/enabled according to what's relevant.
  • The buttons "Open prog path" and "Open user path" and have been added to the Options window. The latter is ommitted in the portable version as they both equal the same folder.

    1.73

        (2014-08-07)
  • OpalCalc now never asks to save on quit if "Load last session on startup" is ticked.
  • More robust scientific notation. For example, variables which contain the capital letter 'E' are now treated properly when case sensitive custom variables are switched on. Also sums such as "2E-4 cm" don't now require brackets around "2E-4" to register properly as 0.0002 cm.

    1.72

        (2014-07-10)
    The big news in this release is calculations can often be up to 50%-100% faster than before. That affects everything from moving the cursor to scrolling the sheet to updating a giant list of sums. OpalCalc feels much more fluid as a result. Compare scrolling through the tutorial with the cursor keys on 1.72 versus an earlier version. You'd have to go all the way back to version 1.33 for that kind of speed, and 1.72 beats even that (by about 10%) from some brief testing. The reason behind the speedup is mostly (though not entirely) due to not obfuscating the program via (an old version of) Eazfuscator.NET. That gives the program less 'protection' for reverse engineering, but I put the user experience above that.

  • Calculations and navigation can often be up to 50%-100% faster than before.
  • An option now to allow case-sensitive custom variables. Useful for when you're trying to imitate a textbook or website's style more precisely.
  • The shortcut icon now has the ".exe" removed from "Opalcalc.exe".
  • Sometimes, the right panel would be out of sync with the left. This has been fixed.
  • The 'Window on top' option is remembered after closing and reopening the program.
  • Misc tweaks to editing/selection process
  • If a search for text has found no matches, any previous selection (from a user selection, or previous match) is now unselected.
  • You can now type something like "4pm - 1 hour", but without the spaces if you wish ("4pm-1 hour"), and the correct result will now be returned.

    1.71

        (2014-05-27)
  • Live help is more intelligent. Before when the mouse moved, the last help shown was cleared, sometimes unintentionally. Now it stays put. Pressing return however will now clear the help.
  • New option - "Always ask to save on quit" means you'll never lose your work again if you accidentally press the close button. Even with this option turned off (default), if you create a sheet more than 100 characters long, this save message will come up now too.
  • Using # as a shortcut to plus is now an option independent from the "PC symbols: * / instead of × ÷" option
  • Using X as a shortcut to multiply is now completely independent from the "PC symbols: * / instead of × ÷" option. You can set things up so that when you press X, the asterisk symbol will appear.
  • Alt+C (and Ctrl+Alt+C) doesn't now make a 'ding' sound when pressed.
  • Other minor tweaks/fixes to the handling of the X key, asterisk key, multiply symbol, and their use in context with quoting out parts of the sum.
  • New operator word added - "at" which simply acts as divide. For example, something like "50m at 25m/sec" will equal "2 sec".

    1.70

        (2014-04-09)
    The Easter release sees a veritable banquet of tasty features for the discerning calculator user. A big thanks goes to BlackLion over at the Sonic Transformed forum for finding various bugs along with suggesting many ideas to improve OpalCalc. Features now include better commenting support so you can have URLs after the quote (previously the colon in the URL would blank out the whole sum). A word wrap option has also been added (Ctrl+W), and the GUI has been tweaked somewhat. Plenty more features and bug fixes including...

  • Use of the colon (example in URLs) AFTER a quote has been used to ignore the rest of the line is now usable without any sums before the quote being ignored. For example, the following sums will result in an answer of $20 and 30 respectively, where before both lines would have been ignored due to the colon:
    20$ 'caramels, very tasty!: 10*5 bags
    10+10+10 ' See http://foo.com
  • Disabling 'word wrap' has been featured. Turn on and off by simply pressing Ctrl+W or through the Options window.
  • The Save/Save as button is now save only. The "Save as..." button has moved to the main menu where it naturally belongs. The "Open" function has also been added to the main menu. Small bugs are also resolved when the Open window was cancelled.
  • Added median function.
  • Sums involving units which cancelled out during part of the sum sometimes added an unnecessary warning. This has now been removed. An example would have been: (18gbit / 10 mbit/second) as hours = 0.5 hours [warning: mixed types]
  • Sums that had times with decimal parts were mis-interpreted in "comma-decimal-point" countries. e.g: "3600,1 seconds as time" would previously result in 10 hours instead of 1 hour.
  • Square brackets [ and ] don't now convert to ( and ) by default. You can change this back easily in the options though. Bear in mind, [ and ] act like ( and ) anyway. The difference is just cosmetic.
  • To allow easier identification of multiple OpalCalc taskbar instances, the filename is followed by the program title instead of the other way around. I have also removed the path - it now just shows the filename.
  • OpalCalc can now export in CSV and TSV (CSV but with tabs instead of commas)
  • You can now effectively use "per" in conjunction with units (e.g: miles per hour).
  • Zipped version of Opalcalc now brings up offer of tutorial on first opening the program
  • PC Symbols * and / are now automatically chosen over × and ÷ if the user chooses not to have the letter 'x' as multiply. "PC Symbols" has also become the default factory setting.
  • Crashes would happen after opening the Print window followed by Print Preview (or Page setup) afterwards. This is now fixed.
  • Double quotation marks are now allowed in the sum
  • Spacing issues have been fixed when exporting sheets with the "Spaces" Gap Type. Try to use fixed width fonts (such as Courier) in both Opalcalc and your external text program for maximum effectiveness, especially if you have tabs within the sum (you can't go wrong with the brilliant Fixedsys Excelsior font).
  • When browsing directories (and other places), the OpalCalc icon should now be fixed and in high resolution. If you find this is not the case, it may be that Windows hasn't updated the old thumbnail cache yet (due to a bug in Windows), so either wait a while (hours, days, weeks?), or visit this page and follow the top answer to resolve that.

    1.67

        (2014-02-23)
  • Built in constants such as phi and fifth were calculated incorrectly for sums such as "1/fifth" (expanding to 1/1/5 instead of 1/(1/5) or simply 1/0.2). All of these have now been fixed.
  • Pressing the PageUp/PageDown keys now keep both panes synced (whilst before, the answers on the right may not reflect the sums on the left.
  • Sections which follow a colon or semicolon are usually ignored. However, if two colons are used (e.g: a URL followed by a colon), then OpalCalc sometimes inserted spaces between certain symbols and numbers. This should now be fixed.

    1.66

        (2014-02-09)
  • Upon first pressing 'x' for the very first time, OpalCalc will now give the user the option to use the multiplication symbol, or the alphabetical letter. This will make things clearer for everyone.

    1.65

        (2014-02-02)
  • Fixed potential mismatch between panes when opening a file, if lines become wrapped.
  • You can now use currency in conjunction with other unit types. For example you might want to calculate fuel prices using something like "3$/liter * 5 liters". This is now possible to do. Previously I disabled currency in unit style calculations because beginners may want to see the answer to "£3*6 days" as "£18" instead of "£18 days" (the latter being more technically correct, at the cost of some apparent intuitivity from the former). However, I have reverted to consistency. Feedback appreciated on this topic if you have any thoughts!
  • If "Use built in constants and units" was turned off, sums containing constants such as "k" in "10*(5*k + 1)" (where k=1), would result in 51 instead of 60. This is now fixed.

    1.64

        (2014-01-09)
  • Update which should make OpalCalc startup a bit 'cleaner'. Let me know if there's any problems at the usual email otherwise.
  • Boolean arithmetic now works again. False and True now output as 0 and 1 respectively.

    1.63

        (2014-01-07)
  • Small update which tweaks the installer/uninstaller to acknowledge Quicklaunch/desktop shortcut options broken in 1.62.

    1.62

        (2014-01-01)
    The 2014 New Year's release brings about.... well not too much to be honest. That's not a bad thing, but instead shows how stable and feature-complete OpalCalc is by now. A word of warning though - the letter 'x' is now used by default to mean multiplication (so it may interfere with any occurrences in your previous OpalCalc documents). This feature is for our more 'casual' users who prefer (and even expect) such a shortcut. It is easily disabled in the Options windows, so don't panic if you hate it.

  • Option to use the letter 'x' as a shortcut to multiplication (enabled by default).
  • You can now disable the inbuilt, units and special vars so you can use these variables yourself!
  • A .NET problem of some kind was fixed, so OpalCalc is now compatible with some rarer setups of Windows XP.
  • In rare circumstances, functions that are written but not saved will now not produce an error when loading last session at startup.
  • Software is now signed with a proper certificate to ensure verification.
  • Fixed occasional misaslignment of lines when resizing window.
  • For compatibility reasons with certain uninstaller software, uninstaller is now 32 bit instead of 64 bit.

    1.61

        (19/02/2013)
    Even as the developer, I use OpalCalc quite a lot, and it's the day to day work which helps me to find quicker and simpler ways of improving OpalCalc. One such example is the "Zero orphan variables" feature (Ctrl+=) which allows you to clear all variable assignments ready for you to input new values (without constant backspacing). In 1.61, this is improved further.

  • Option to allow toggling of the "Main" toolbar for a cool minimalist look. Use with caution, as the only way to get it back again is press F2 (or Ctrl+F4). Thanks to Bernd K for suggesting this!
  • Saved (stored) user variables which are percentages now work properly.
  • Option to allow just one instance of OpalCalc. This can allow you to bind OpalCalc to the Calculator button on the keyboard etc.
  • Size of text cursor on bootup is now correct (and immediate pastes into the window are smoother, without the 'flash' from before).
  • You can now override the default angle mode setting on a line basis. For example, "sin(50) as gradian" = 0.70710678.
  • The "Zero orphan variables" feature now removes the "0" value in the document completely (leaving just "n = " for example), ready for immediate value replacement by the user (the value is still automatically set to 0 behind the scenes however).
  • Installer now checks again with the user to see if they want .NET installed (if they don't have it).

    1.60

        (11/01/2013)
  • The portable versions of OpalCalc wouldn't extract properly under certain programs. This should be fixed now.
  • In version approx 1.30 and earlier, functions could use constants such as pi and global variables (providing they don't clash with the parameter variables). This functionality has now been restored for good.
  • I removed the "Month/date" mode. You should now use the "Long date" mode (which includes the year, as well as month/date). This was due to potential ambiguity when calculating something "@15 Nov 2011", then: "ans - 1year".
  • As well as the words 'Pi' and 'Tau', the symbols have also been added. See here and here for more info on Tau.

    1.58

        (26/12/2012)
  • For regions which usually use the same symbol for function seperator symbol as the decimal symbol (rare ones such as Spanish-Costa Rica), the function seperator symbol now becomes the semicolon (previously Opalcalc threw a warning message then crashed).
  • Closing the application via Esc or from the menu will now close if a sub-window was previously opened. Before it didn't.
  • Sums such as "90 minutes as time" have been fixed for regions which use the dot as a time separator.

    1.57

        (23/12/2012)
  • $, € and @ on certain keyboards work again over v1.55/1.56. Thanks to aberg from Neowin.net for pointing this out!

    1.56

        (22/12/2012)
    A few semi-major tweaks over 1.55
  • Potential bug fix on bootup over 1.55
  • Since version 1.43, an annoying clock symbol is shown in some parts of the GUI during startup of OpalCalc. This is now fixed for 1.56 giving a smoother experience.
  • You can now convert from seconds, or minutes/hours to the new special 'time' unit, overriding the "Default time unit" given in the "Options" window. An example is best apt to describe this one: 100 minutes as time (= 01:40:00). Or try: 1hour + 2minutes + 3seconds as time (= 01:02:03).

    1.55

        (21/12/2012)
    2012 Xmas edition: A long awaited update with tons of GUI tweaks and enhancements along with plenty of minor bug fixes.

    Thank you to everyone who's sent in feature/bug reports - we managed to give away around $50 to $100 in rewards. Not as much as I was 'hoping' for to be honest, but on the other hand, maybe it shows how far OpalCalc has come as not much needed fixing. We'll probably do something like it again soon - in the meantime, please send in any further bug reports, and we might pay you anyway.


  • There were multiple occasions when a selection of text required a second click, causing frustration (at least subconciously). For example, copy, undo, redo, zoom in/out, copy/clear line, would 'disable' text selection, until you mouse-clicked again. Not any more.
  • Spacing between operators has been overhauled. Firstly, spaces can be inserted between operators even if modulus or programmer syntax is enabled. Secondly, spaces can now also optionally be inserted between × and ÷ operators (as well as the old - and +). Thirdly, sums such as "4 + -3" or "test:-5" or "-5 '(beginning of line)" or "pow(3,-2)" won't now insert the unnecessary space before or after the '-' symbol. Fourthly, if quotes are used to comment the beginning or end of the line (; or : or '), then the minus and plus symbols won't now be used in those contexts.
  • Functions using the parameter as the exponent now use proper operator precedence. An example would be: "f(n) = 3^n + 1". Calling f(2) now returns 10 instead of the faulty 27. Related errors were fixed too.
  • F12 now removes the line altogether, rather than just clearing the line. I've found it surprisingly handy. If you want to just clear the line like before, Ctrl+X (without anything selected) will pretty much do the same.
  • Live help has been improved. Most operators are supported (apart from + - / * ( ) to avoid info overload). It now also displays the unit assigned to a variable if there is one, and the unit type next to the unit (e.g.: "hour (time)" or "centimeter (length)").
  • A new more professional installer! It's quicker, smarter and the size reduced from 650k to 500k too.
  • For scientific notation, you can now use small 'e' as well as capital 'E'. Example: 4e3 = 4000.
  • Hovering over the answer will show the answer in a tooltip (handy if the answer would otherwise go past the right edge of the window.
  • Overhaul for the "Show all Q+A" window. The menu item: "Show all Q+A" is now called "Export worksheet...". In that window, you can now save/copy worksheets with a tab (and the new 'spaces' gap) separating the sums and answers. (The 'spaces' gap is useful in a reader with fixed-width fonts). Font colours have also been fixed if you try adjusting gap spacing or the gap format, where the colour scheme was something other than "Snow". Also fixed text colouring for new lines using the "Equals" gap format.
  • Better unit handling and unit error detection. Firstly you can now have compound unit types AFTER the 'as' or 'in' keyword (e.g.: "5metres/second as miles/hour"). In regards to error handling, things are a lot 'safer'. For example, saying "10cm^2 + 5cm" or "3miles/hour as hour" will report a 'mixed types' warning next to the answer. Also, sums with the "as" or "in" specifier will now warn you if there are mismatched units. For example, "1000 cm + 1ft as watt" or "1000 cm + 1watt as cm" will add a warning.
  • When active, currencies update daily now without throwing an unnecessary message box to alert the user.
  • The number pad's dot or comma should act as a decimal separator now regardless of country or keyboard type.
  • You can now use percentages inside function calls (e.g.: "pow(3,2+10%)")
  • Functions can now use 'shorthand' notation by allowing (for example) variables next to numbers (i.e. "myfunc(n) = 5n").
  • The .otxt filetype is (optionally) automatically associated with OpalCalc on install
  • Searching is now case insensitive
  • Alt+C doesn't now beep when you press it
  • Other small bug fixes and tweaks

    1.51

        (18/07/2012)
    A careless oversight in 1.50 from me has already netted someone $15. Keep the bugs coming in! (see 1.50 update below for details)
  • Pressing return after clearing an existing line produced an error due to a new feature added in 1.50. This is now fixed.

    1.50

        (17/07/2012)
    A milestone in the life of OpalCalc - we've reached version 1.50! To celebrate, we're giving away free copies of the full version along with prizes up to $50 if you can find any minor or serious bugs in OpalCalc v1.50. This is partially for fun, partially for promoting OpalCalc, and obviously to help refine OpalCalc even further. The most serious bugs found will be awarded anything from $20-$50*. Small bugs may receive a full copy of OpalCalc, so send in any unexpected answers to your sums, installation problems, or GUI flaws; the more the merrier!

    This version offers a lot in the way of new features and bug fixes. Specifically, currencies work again (+25 new ones), UTC support is included, there are better shortcuts for cutting/pasting lines, and variables with negative numbers are more properly handled.

    * Disclaimer: The promotion may end at any time, and prize winners must use Paypal to receive any cash prizes. Our decision on the payment amount is final. Any amounts awarded will be publicly announced in around 2 months in this section (though names of winners may remain anonymous if they wish).


  • Currencies work again (broke in last month).
  • Variables equal to negative numbers now correctly calculate when used later with exponentiation and similar high priority operators. (e.g. n=-5 and n^2 now outputs currectly). This has been broken since v1.16, but now it's added to the 'acid test', it will never break again.
  • Variables can now be assigned negative percentage values
  • More consistent keys for copying/cutting lines. If nothing is selected Ctrl+X now cuts the whole sum, while Ctrl+C copies the sum. Alt+C copies the answer and Ctrl+Alt+C copies the sum AND answer.
  • 25 new currencies to bring the total to 90. New ones included are: xpf,ugx,tnd,syp,scr,rsd,pyg,mdl,mga,mkd,mur,mvr,lak,khr,hrk,gtq,gmd,ghs,fjd,bsd,bmd,bgn,bdt,bam,awg
  • Added two new colour modes - "High contrast" and "Black and white".
  • Numbers can now temporarily be represented in other bases (without changing the global output base). For example, "255 as hex", or "255 as g`" will equal 'ff'.
  • Potential speedup on cold boot of OpalCalc
  • Added UTC time support, specifically options to "Interpret input as UTC time" and "Produce output in UTC time".
  • Added new option to distinguish between percentage and modulus for the % symbol (previously, only the "programmer syntax" option covered this).
  • Added new option to disable OpalCalc adding spaces between - and + symbols.
  • Opening the options window is instant after the first time now.
  • To prevent edge cases involving DST such as: "@28/10/2012 + 1 day = 28/10/2012" (when the clocks go back in the UK), I have now disabled the hour lost/gained in modes which don't also specify the time (as well as the date). Modes include: "Short date", "Long date", "Month/day", "Year/month". With the time shown as well, such queries will act as before: "@28/10/2012 + 1 day = 28/10/2012 23:00"
  • "norm5" function has been replaced by "map". In addition, you can map numbers to and from logarimithic space (not just linear) with the functions: "map", "maplog", "maploglin", "maplinlog" (corresponding to "linear to linear", "log to log", "linear to log", and "log to linear", respectively).
  • Overhauled "About OpalCalc" window

    1.46

        (15/06/2012)
    Crucial upgrade for anyone who works with variables.
  • Using divide in conjunction with variables was broke since v1.35. This is now fixed.
  • OpalCalc won't now allow creation of a function with a name from an already existing permanent variable.

    1.45

        (20/05/2012)
    Out of Beta at last (for now)! OpalCalc's biggest new feature this time is the ability to copy the answer to the clipboard by holding down Ctrl and pressing C (this only works if nothing is highlighted, otherwise, it'll copy the highlighted section instead). Also, if nothing is highlighted, Ctrl+X will copy the sum to the clipboard. Thanks go to Rusty for suggesting this idea!

  • If nothing's selected, Ctrl+C now copies the current answer to the clipboard (or last answer if current is blank).
  • If nothing's selected, Ctrl+X now copies the current sum to the clipboard (or last sum if current sum is blank).
  • The "Prefs -> Autosave prefs on exit" setting is saved after adjustment without the user having to save at that point.
  • As a special case, Opalcalc now handles remainders. Use x/y and then add "rem" on the end (without the quotes). Example: "7/3 rem" would equal "2 rem 1".
  • The 'copy' button now works if any of the output is selected (only input worked before)
  • Printing now remembers the saved margins without needing to open the Page Setup dialog.
  • Added new functions to convert from and to Kelvin: f2k(), k2f(), k2c(), c2k()
  • Added different type of 'cups' as a volume measurement
  • Cursor moves to end of document when opening a file.

    1.44b

        (16/05/2012)
  • Restore factory settings crashed in 1.43b due to an oversight. This is working again.
  • Clearing the document will now remove the associated filename too (if any is loaded).
  • Miscellaneous fixes when you initially opened an OpalCalc text file (.otxt) from outside OpalCalc to begin with.
  • Other fixes relating to the "Load last session on Startup" option.

    1.43b

        (09/05/2012)
  • Shift + F1 now opens the last session, even if you didn't save it (providing OpalCalc was previously closed). In addition, an option has been added to automatically restore the last session on startup
  • In certain user setups, opening OpalCalc could produce messages including "Warning: Couldn't locate 'units.txt' file". This should now be fixed.
  • In other apparently rare user setups, opening Opalcalc will produce a "NullReferenceException" crash. This is now also fixed.
  • OpalCalc can now open associated files if you open them from outside OpalCalc (usually from Windows Explorer).
  • Print margin settings can now save properly again.
  • Custom notation set window doesn't keep opening when changing other options now.
  • When the print window or "All Q+A" window was opened before, the colour scheme of the main window turned to "Snow". This is now fixed.
  • Opalcalc now remembers the printer used
  • Ctrl + P now opens the print window instead of the print preview window (Ctrl + Shift + P opens the print preview window now).
  • Moving or resizing the window previously indicated a saved file had been changed (* in the titlebar). Now this is fixed.

    1.42b

        (10/04/2012)

  • Demo version percentages work properly again (full version was okay)
  • Use of the thousands separator can now be used with currency (e.g.: $5,000)
  • Functions menu now lists ALL built in functions. Many were missed off before due to a bug.
  • Incorporated rgb2hex() and hex2rgb() functions to allow for quick sums like: rgb2hex(255,128,0) = #ff8000
  • Documentation revised and tidied up
  • Countries which use ; as a parameter delimiter can now use : to comment in time lines as long as the @ symbol is placed afterwards (e.g.: "Meeting 2: @5:00:00")

    1.41b

        (07/04/2012)
  • Often, a normal pocket calculator will allow calculations like "cos x" or "sqrt 16". Previously, OpalCalc needed brackets, but now you can write sums without them if you prefer. This is just one of the ways we're trying to simplify writing expressions in OpalCalc. Likewise, something like "average 10,20,30,40" will also work. If you need operators to act on any of those numbers, you will to use brackets in that case however - e.g. "average(10, 20+1, 30, 40)".
  • Fixed financial formatting of numbers which initially contained currency, but the answer doesn't (e.g. 2$/3$ equalled 0.67 before, now it's 0.66666667).
  • More intelligent handling of operator words like "of", "per" and "plus"

    1.40b

        (04/04/2012)
    This version brings a veritable feast of features, including a shorter load time, a new options window, full .NET 4.0 compatiblity, and a couple of new colour schemes! Most of the hard work has been put into OpalCalc's load time - it's now about 1.5x quicker to load on all PCs. Often an increase in features comes at a price; and that price is usually performance, but OpalCalc 1.40b has probably never been quicker (350 milliseconds bootup time on a good PC). To partially help with this, many of the menu options (which tend to eat up about 5ms each alone) have now been moved into a separate window, so if you're hunting for a feature, press F2 (or the new GUI button), and chances are you'll find it in there.

    If you're upgrading, due to the new GUI button, I recommend you "restore factory settings" (help menu) just once to reposition the toolbars to a good position (or at least manually move them yourself).

  • Approx. 1.5x faster loading time!
  • Now runs on PCs which only have .NET 4 installed (before, .NET 3.5 was needed)
  • New options window (press F2). This allows you to try various features out and see them update live in the editor. Previously, you had to keep opening the menu repeatedly.
  • Hovering the mouse over a variable or unit will display its value.
  • Two new colour schemes! ("Peachy" and "Volcano"). You can also change the saturation of the text or GUI to suit your tastes.
  • GUI menus now use the selected colour scheme to match the rest of the GUI
  • Opening the font dialog window will remember the last font used.
  • Added "per" key word to mean divide.

    1.36b

        (19/03/2012)
  • Tweaks to time compatibility, and can now say things like: "@today 4:00".
  • Added ** to emulate the exponential operator ^

    1.35b

        (16/03/2012)
    An update at last! First just to say thanks to everyone who voted for OpalCalc in the Digital London Startup Challenge (it received 8 votes in the end, but the judges didn't take it through to the next round for whatever reasons). Anyway, OpalCalc is better than ever. A lot of code has changed behind the scenes, ultimately for the better (and to make the code more portable), but it's marked beta, just while any final bugs are ironed out (please contact me if you find one).
            Since nearly the first version of OpalCalc, I've used unit/regression testing to test its integrity, and this release checks almost a thousand test sums! In other words, OpalCalc can only improve in terms of accuracy, so if you find any sums that don't answer as you'd expect, email me, and I'll probably not only fix them, but add them to the giant 'Acid Test' list!


  • Units are much more clever now, allowing squared or cubed exponents. Stuff like "1year÷1week", "50£ × (1year÷1week)" works, and "5cm*5cm = 25cm^2
  • Times and dates work more solidly now, especially for non-UK/US countries and when using them with variables and maths.
  • New searchable functions/units window allows you to quickly search for a unit or function (see first option in the 'Pi' menu).
  • A bug caused extra copies of defaultPrefs.txt to float around locations where .otxt files were saved (portable version of OpalCalc in WinXP only?). This should now be fixed.
  • In the "About OpalCalc" window, it now lists the program and user settings directory.
  • Other bits and pieces.

    1.34

        (02/02/2012)
    Accuracy has been improved, a few bugs fixed and the trig section of OpalCalc has been rejigged and extended (see below for more details). Gradians have been added, and it's worth mentioning the existing 'turn' angle mode which is very rarely seen in other calculators (if ever), but is actually surprisingly useful. It's based around 1, instead of say, 360 for the 'degree' angle mode). See this forum thread for more info.
  • Previously, if high precision mode wasn't enabled, sums could sometimes accumulate subtle errors (due to rounding) when reusing answers from existing sums. Now, high precision for numbers is maintained 'behind the scenes' even if only a few decimal places are used for display purposes.
  • Trigonometric functions have been overhauled with a new menu (found under "Symbols / syntax") to determine what angle mode 'sin', 'cos', and 'tan' should use. You can override the menu option by specifying a letter before the function name ('r'=radian, 't'=turn, 'g'=grad (new!), 'd'=degree. For example 'gcos' means use the cosine function with the 'gradian' angle mode). If you used the special rsin/rcos/rtan functions before, these have been changed to tsin/tcos/ttan ('t' meaning turn). rsin/rcos/rtan now use the 'radian' angle mode.
  • Adjusted and fixed colours for user defined functions (and the variables/parameters in them).
  • A star is displayed in the title bar to indicate an unsaved document. A warning will also be displayed when the user tries to close the program without saving first (doesn't apply to docs which have never been saved).
  • Sufficiently specific fractions of a time such as "@10pm - 1.234day" now don't produce an error.
  • Page setup margins are now saved as preferences for printing purposes
  • Option added in Prefs menu to open up the prefs folder that OpalCalc saves to (for misc purposes).
  • Thousands separator now correctly displays in "All Q+A" window (and print out).
  • OpalCalc won't now allow you to create a variable from one of the existing function names

    1.33

        (15/01/2012)
  • Upgrading from v1.20 (or earlier) to 1.32 sometimes caused a crash (which was easily resolvable, but still). This new release fixes that.
  • "Use programmer syntax" option is now remembered in saved preferences

    1.32

        (12/01/2012)
  • At the request of at least 3 users, we have now implemented a more WYSIWIG printing routine where the columns can be aligned properly (you can set the spacing too).
  • If a capital letter was used for keywords such as Total (capital T), this amount was previously wrongly included for future totals. This is not the desired behaviour of OpalCalc, so it has been fixed
  • "hour:min" time unit output mode works properly again.
  • Comments can have the @ symbol in now without the notation being affected.
  • Ctrl+P shortcut for print preview added

    1.31

        (02/01/2012)
    Version 1.31 is out now for paid users, who will sometimes use a slightly more up-to-date version than demo users. Happy new year all!
  • Fixed global operations on time/date values when the Date/time format doesn't contain a time
  • Non-English day names can be used more freely in the date.
  • Opening of files which contained a variable on the first line 'froze' all variables until the cursor was moved up/down.
  • Help bar informs 'window is on top' (or not) when respective button (or F10) is pressed.

    1.30

        (22/12/2011)
    Many thanks again to all of you who have helped support OpalCalc! The biggest improvement in this release is better live help.
  • The value of variables are now displayed in the help toolbar when the cursor is over them
  • Context help is generally better now as it is prompted over the whole range of a word rather than just the end
  • Keyword "in" is allowed now (as well as "as") when converting units. This was tricky to add because of the potential mixup with 'in' meaning 'inch' instead. However OpalCalc should respond to the proper context through intelligent reasoning.
  • Changed 'total' colour from magenta to cyan, to distinguish from "as"/"in" keywords
  • For new users, OpalCalc starts without the Edit toolbar now. I've also added a menu item to toggle this more easily. Feedback by existing users regarding this would be appreciated.
  • Mini tutorials now work in demo version
  • Added % and currency conversion examples to Example sums

    1.29

        (4/12/2011)
  • Numbers with leading zeros now work properly (e.g.: 016 or 0000800.5)

    1.28

        (4/12/2011)
    Bug fixes and tweaks mostly...
  • Countries which use the . symbol as a date separator are now supported
  • For countries which use the , symbol as a decimal point, "Show all answers" displays as such
  • OpalCalc now remembers when the window is maximized after reboot (and also remembers the Q+A window's location/size)
  • Added option to disable contacting the web for latest currency information
  • Program is more stable when resizing window when a "@now" token is used
  • Halved speed of font resizing when using the mouse wheel

    1.27

        (1/12/2011)
  • Better support for countries which use the space as a thousands separator
  • "Example sums..." dropdown in the help menu

    1.26

        (1/12/2011)
    New features are great in software, but often this can be at the expense of speed and performance. In particular, we feel the start up time of OpalCalc is very important, and this release has brought about a substantial speedup for many PCs (mainly desktop I would imagine). This makes it feel much more snappy when you're just wanting to perform a quick calc.
  • OpalCalc load time has decreased from around 1.5 seconds to about 0.7 for many (most?) CPUs, especially perhaps desktop CPUs.

    1.25

        (27/11/2011)
  • Added 'now' and 'today' keywords for dynamic times!
  • Startup screen for first time use now asks user if they want to see the tutorial
  • Tweaked tutorial

    1.24

        (25/11/2011)
  • Pressing the # key before a : symbol isn't automatically converted to a plus now.
  • Tweaked tutorial

    1.23

        (24/11/2011)
    More of a bug fix in this version, but there is at least one new feature...
  • This one's inspired from Soulver - pressing the # key now imitates the + key (for the sum parts anyway). You can turn off this feature from the "Symbol->PC Symbols" menu.
  • Custom functions now work again (many did before, but not longer ones due to the recent restructuring of OpalCalc)
  • In v1.20 and v1.22, an error was thrown when subtracting a variable which was itself negative. This is fixed and double negatives are also allowed generally.
  • Percentage system is more robust now.
  • New experimental total called 'vtotal'. This works like 'total', but also includes variable declarations as part of the total (e.g: n=5)
  • Tidied up search menu
  • Thousand, million, billion etc. are now attached to number so that sums such as "1/2billion" works correctly

    1.22

        (21/11/2011)
    The biggest new feature in this update is full unicode support so that non-Latin based languages can be used. Many thanks go to Marc C for suggesting many of the other features for this release. As usual, if anyone finds any glitches or feature suggestions, send them to me here
  • Unicode support! Now non-Latin characters can be used in the document, including variables.
  • In the help menu, look for the option "Restore factory settings" to immediately set OpalCalc back to 'normality'. This was also previously in the Prefs menu, but now it's easier to access.
  • Font support, so you can use your own preferred fonts (see the documentation for some recommended font styles). Finally your dreams of using wonderful fonts such as 'Comic Sans' in OpalCalc can be realized.
  • Having comments before setting variables broke from 1.16 to 1.20. Now it's fixed again.
  • You can now start a line with the divide or multiply symbol and the "answer" term will be automatically inserted.
  • Search feature (Ctrl+F to search, and F2 or F3 to search backwards or forwards).
  • Selected ranges can now be enclosed by brackets by presing Ctrl+]
  • Functions with the exponential operator in sometimes broke before (i.e.: "func(n) = 2^n"), but is now fixed.
  • Implemented gamma function, and you can use decimal factorial numbers (e.g. 2.5! = 3.323351)
  • You can now use Ctrl and a number to obtain subscript numbers (useful for using in variables)
  • "to" is properly coloured (only for time lines now).
  • Other misc fixes

    1.20

        (16/11/2011)
    We've slogged away at this great release which implements many more of your requested features. If there's still a feature you want (even if you've already asked), feel free to ask again. Major features in this release include time/date support, better performance (speed), and improved variable support. We hope you like it!
  • Time and date support!! See the main page and docs for more info
  • OpalCalc docs will now save with the extension ".otxt" to show that it's not a normal text file. Just be aware that when you try to load/save documents saved with previous OpalCalc versions, that your old files will be hidden unless you change to the "All" option
  • "New window" menu item to allow multiple documents open at once. This could previously also be achieved via Windows through Shift+Left left mouse button on the program's icon, though some of you may not have known this
  • Speed improved. Opalcalc is much faster with unquoted text, and up to 10x faster calculations in relatively unusual circumstances (using "ans" and units a lot).
  • Custom stored variables now need to be edited from the text file ("Open user defined variables" in menu). This allows for capital letters to be used freely in variable naming now
  • You can now toggle on/off the Edit and Help toolbars
  • Imrpoved documentation. All functions and menu options are in one table now
  • Built in special variables are now magenta and colored differently to your own variables
  • Custom units can now be used alongside custom stored variables in the saved text file
  • Removed crash at approx 1000-2000 line limit (and the limit itself)
  • "ans" or "answer" will now find the nearest non-blank answer and use that instead of immediately relying on whatever's just above
  • If your currency isn't among the 60 currencies supported so far, then now you can at least add/update them manually
  • Divide and multiply symbols revert back to / and * when used in quoted/ignored word sections
  • Factory defaults are different with a more compact layout now. You can still resize bigger of course
  • "Auto save prefs on exit" is now the default option from the beginning
  • You can now clear all 'orphan' variables (orphan meaning not relying on another variable) by pressing Shift+F1
  • Now shows open file name in titlebar along with "OpalCalc v1.20"
  • One can now copy all text with a button in the "Show all Q+A" window. Also, I moved the "Save all Q+A" option to that window
  • Pressing F10 to toggle "Stay on top" doesn't lose focus from the text area now
  • Added "Appearance" main menu item (and put in the "colour scheme" submenu and F2/F3 show/hide menu items)
  • Tidied up the number base menu
  • Fixed bug which prevented creation of variables which happened to contain special words (e.g. 'total' in 'totaltime')

    1.16

        (2011-10-25)
  • Changing default currency and removing the thousands separator now work again
  • Recursion issues improved (particularly message box popping up occasionally).

    1.15

        (2011-10-24)
    A big thanks to everyone who's contributed and sent in ideas. We've worked very hard to implement most of your suggestions in this 1.15 update, and added printing support along with much better support for countries which use the comma as a decimal point.
  • Printing now available
  • Fixed notation output and other misc stuff for regions which use the comma as a decimal point (such as South America, Europe, and Russia)
  • Foreign letters such as ä, Ö, ß are now counted as letters/words, and can be freely inserted into the sum
  • You can now create your own measurement units (useful for language translation purposes too)
  • Superscript digits 2 and 3 are supported for many units such as cm³ or inch² etc. (simply type 2 or 3 after the unit, and it will automatically convert)
  • Standard Windows selection shortcuts now work: Shift/Ctrl + left/right/up/down/home/end
  • Units have been revamped and are now case insensitive. Each unit has no dot in it now, and cm2 for example can be used instead of sqcm
  • General input is now also case insensitive including function names and variables
  • Colon character can now be freely used again as the "Ignore Behind" operator
  • Fixed colour coding of operator words like 'plus'
  • Option to save settings on program close by default
  • Added trillion constant
  • Split out special vars and constants
  • "Check for update" link for OpalCalc full version
  • Using something like "ans%" works now
  • OpalCalc now automatically ignores the thousands seperator for any input
  • Q+A window now uses full colour formatting
  • OpalCalc icon resolution improved

    1.11

        (2011-10-14)
  • Added f2c() and c2f() functions to convert from Fahrenheit to Celsius and vice versa ( e.g. c2f(20) = 68 ).
  • Currencies are generally quicker to load (and let you know when updated).
  • The standard deviation ("stdev") has changed to the more common sample type ("pstdev" is now the old population type). Similar goes for variance.

    1.10

        (2011-10-13)
  • The comma and period is automatically swapped round to cater for many European countries
  • You can set the $ symbol to 10 different dollar types now (look under Symbols/syntax -> Dollar type)
  • Default output currency can be set (look under Symbols/syntax -> Default output currency)
  • In addition to "Save as...", "Save" has been added (so it overwrites the loaded file),
  • Over 60 currencies now (compared to about 30 before), and they should be more accurate

    1.06

  • Esc now functions as quit (F4 changes the colour scheme now)
  • Added half, third, quarter, etc., and can now use constant variables in association with 'of' keyword
  • Fixed units with backward slash in and added common names for existing units
  • F2/F3/F4 keys are not cut/copy/paste anymore (use Ctrl X/C/V instead), as I need these keys for future purposes
  • Added a couple more notation sets (with no comma separators)
  • A few other minor fixes and tweaks

    1.05

  • Variable assigment lines are now not included in sum when total/subtotal/count etc. is used.
  • Improved colour of context help in window

    1.04

  • Fixed data measure unit figures
  • Terms such as $40k evaluate properly now
  • Added insert date or time
  • Any lines with totals or subtotals are now completely ignored by new totals/subtotals.
  • Undo/Redo slightly tidier
  • The operator word 'of' only functions now when next to a percentage mark, freeing up the word for arbitrary use more easily.

    1.03

  • Quicker and less error-prone boot of OpalCalc on many PCs.
  • Menus are highlighted lime green now too.

    1.02

    - Fixed major bug which caused crash on startup if the user selected "PC symbols" and then went on to save these as default prefs.

    1.01

    - Minor tweaks and fixes