ReadMe file for rpCalc

a reverse polish notation calculator

Written by Doug Bell
Version 0.8.1 (Linux), 0.8.0 (Windows)



rpCalc started out as a small program written to try out various Python GUI toolkits. But I ended up using it all the time (it's much quicker to pull it up than to pull an actual HP calculator out of the desk), and I made several improvements. So I decided to make it available to others who also like RPN calculators.

Since I'm not in the software business, I'm making this program free for anyone to use, distribute and modify, as long as it is not incorporated into any proprietary programs. If you like the software, feel free to let others know about it. And let me know what you think - my e-mail address is doug101 AT bellz DOT org


Legal Issues

rpCalc is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either Version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. See the LICENSE file provided with this program for more information.

System Requirements


rpCalc requires the following libraries:

If these libraries are not be available for your distribution, an earlier version of rpCalc (0.6.0) that depends on older libraries is still available.


Using the files provided in the binary distribution, rpCalc should run on any computer running Windows XP, Vista, 7, 8 or 10.



Extract the source files from the rpcalc tar file, and then change to the rpCalc directory in a terminal. For a basic installation, simply execute the following command as root: python

If your distribution defaults to Python 2.x, you may need to substitute python3 for python in these commands.

To see all install options, use: python -h. To install rpCalc with a different prefix (the default is /usr/local), use: python -p /prefix/path


To install for all users, execute the rpCalc-x.x.x-install-all.exe file. Administrator permissions are required.

To install for a single user (administrator rights are not required), execute the rpCalc-x.x.x-install-user.exe file.

For a portable install, execute the rpCalc-x.x.x-install-user.exe file, uncheck the shortcuts and uninstaller tasks, and check the portable config task.

Using rpCalc


If you know how to use an RPN calculator (like some Hewlett-Packard models), you know how to use rpCalc. It stores previous results in four registers (usually labeled X, Y, Z and T), and the numbers are entered before the operators.

The quickest way to enter numbers and the four basic operators is to use the number pad on the keyboard. For the other keys, the name on the key can be typed (not case-sensitive). What has been typed shows in the box below the keys. The tab key may be used to automatically complete a partially typed command. Of course, the mouse may also be used to hit any key.

A few keys have unusual labels to allow them to be typed: "RCIP" is 1/X, "tn^X" is 10^X, "R<" rolls the stack back (or down), "R>" rolls the stack forward (or up), "x<>y" is exchange, "CLR" clears the registers, and "<-" is backspace.

A few commands ("STO", "RCL" and "PLCS") prompt for a number from zero through nine. This number will be the memory register number or the number of decimal places for the display.

Information Windows

A menu can be displayed by hitting the Esc key or by clicking on the main number (LCD) display with the right mouse button. This menu includes commands to display a list of registers, a calculation history list, and a memory contents list. These commands will show a new window with the requested information. The extra window is tabbed to toggle between the three lists. Buttons on the window can be used to copy the numbers to the calculator (X-register) or to the clipboard (with buttons to copy either all decimal places or the formatted fixed decimal place number).

The register list shows the current contents of each register (X, Y, Z and T). The numbers are shown to full precision, with all available decimal places shown.

The history list shows algebraic equations for every calculation that was done in the current rpCalc session. The numbers are shown to the same precision as the main display.

The memory list shows the current contents of the ten memory registers (0-9). The numbers are shown to the same precision as the main display.

Alternate Bases

An alternate base window can be shown from the display context menu (right-click the LCD or hit the Esc key). This window shows the hexadecimal, octal and binary equivalents of the number in the X-register, rounded to the nearest integer.

The Hex, Octal, Binary and Decimal buttons are used to change the input mode to that base. There are also keyboard shortcuts (Alt-x, Alt-o, Alt-b and Alt-d) that do the same thing. Any typed number is then interpreted using the current base. The current mode is kept until the user changes it.

Prefixes consisting of a zero followed by the base code (x, o, b or d) can be used to temporarily change the input mode. For example, "0x56c" enters the hex number 56c (1388 in decimal). The input mode goes back to decimal after hitting enter or using a function. Note that the alternate base window must be displayed for these prefixes to function.

When using non-decimal input modes, the decimal equivalent of the entry is still displayed on the main LCD. Also, when in hex input mode, commands beginning with letters A-F can only be typed if a colon (":") is used as a command prefix.

There is also a Copy Value button that copies the value of the current input mode base to the clipboard for use in other applications.

The option dialog has a setting for a limit on the number of bits. Numbers larger than the limit will display "overflow" in the alternate base window. There is also a setting to show negative numbers as a two's complement number.


The OPT key will show an options dialog box. This includes settings for startup conditions, display parameters, angle units, alternate bases and extra views.

The startup options include whether to save the register entries between sessions and whether to open the extra data or alternate base windows when starting rpCalc.

The display options include several number formatting settings. The number of decimal places, use of space as a thousands separator and various exponent and engineering notation (exponents divisible by three) options can be set. There are also settings for viewing all four RPN registers on the main display and for hiding the LCD highlight (clearer for some resolution and window size settings).

The extra views section includes buttons for showing the extra data window, the alternate base window, and this readme file. The number of saved equations in the history list can also be set.

Revision History

February 4, 2017 - Release 0.8.1 (Linux only)

January 15, 2017 - Release 0.8.0

December 6, 2015 - Release 0.7.1

January 26, 2014 - Release 0.7.0

October 14, 2008 - Release 0.6.0

October 3, 2006 - Release 0.5.0

March 12, 2004 - Release 0.4.3

November 17, 2003 - Release 0.4.2

July 14, 2003 - Release 0.4.1

April 30, 2003 - Release 0.4.0

February 27, 2003 - Release 0.3.0

May 28, 2002 - Release 0.2.2a

May 16, 2002 - Release 0.2.2

September 8, 2001 - Release 0.2.1

August 30, 2001 - Release 0.2.0

August 20, 2001 - Release 0.1.2

August 10, 2001 - Release 0.1.1

July 2, 2001 - Release 0.1.0

Questions, Comments, Criticisms?

I can be contacted by email at: doug101 AT bellz DOT org
I welcome any feedback, including reports of any bugs you find. Also, you can periodically check back to for any updates.