Calculator blog

Musings and comments about our common interest


Published on by

Use this java emulator...

We have a page about RPN: why it is a better way to use a calculator. So far it is embryonic - we need to go much further in the description. We need to have something simple enough to send to one of our friends, and attractive enough so that he gets interested in it.

I wanted to include an applet of an RPN calculator, but I have problems in storing files in this server - since is not mine. So far I have not been able to include a proper Java RPN calculator - yet.

What I have found is a nice site with emulators in several environments/operating systems - one of them as Java.


You will see that is a nice example. You can start practising with'll probably want to hone your skills with it...just in case...

By the way: it is a very good tool for RPN training. Just make sure to open the window as big as you can: on the right side you will see the stack and the registers, and see the effect of what you're doing on the processor.

Of course: no liabilities accepted if the machine is not a perfect replica of HP 15c. I have not tried to program it, and just tried some examples with complex data; but did not do a full review of it.

Read entire post
Published on by

Ramblings about technical issues of scientific new calculators

Imagine a hypotetical calculator reissue. Imagine now that you are confronted with the following question: would you keep the calculator that everybody loves exactly "as is", or would you try to improve upon what many have considered the perfect calculator?

Picture yourself as well confronted with the fact that everybody else wants new calculators being developed (refresh the graphic family, low end and high end, etc.), and that this reissue has strong appeal only to a small group of engineers (around 100.000 units were produced in its first incarnation).

A new development to extend the features of that loved calculator (like including algebraic entry, multiplying its memory) would detract from your current development programs. The fact that the original firmware is there only in the form of a ROM, without any other documentation or support, does not help, either.

According to the information that we have, it comes as no surprise that the firmware would be exactly equal to the original model, i.e. limited to 65 registers. HP would think it's better to avoid glitches and problems using a proven solution. However, according to a source linked to emulator design, it would not be too difficult to move it up to 128 registers. More than that could be substantially more complex. But that might be our community's task (the reissue would come with the same adaptor found in the HP30b)

If you'd plan to go that way, it would be good to buy 2 calculators: one to experiment with, and the one that stays "factory" (you will not be able to keep the original firmware once flashed)

Just imagine what can be done with 128 registers! Or imagine if you can have 2 memory spaces- just like what's been done with the wp34s: you could keep 2 sets of programs according to your needs; or have one set with your programs (close to full memory used up), and one set empty, for heavy matrix utilisation. 

Comments welcomed!!

Read entire post
Published on by

A HP15c reissue - but not the real deal

I have read in the internet about a new venture whose aim is to reissue a HP15c clone. You can find about it here: 


HP 15c reissue


They show as well some renderings of how the machine would look like:


Rendered pictures


And you can see that they have been able to produce a working prototype:


working protoype


There are some informations about price - around 69 CHF. Having lived in Switzerland myself, I can attest that it is not the cheapest country around by a long shot, and still this is a very good price.

There are several considerations when you think about it:

  1. How is it working? It may be a port of the "non-pareil" family of emulators, running the original ROM. In this case, while hobbyist intent may get through, producing longer series of a copyrighted software may get the producer in trouble. In the alternative case (all features having been programmed by them in an operational emulation of the original, as opposed to an emulation of the hardware and running the original ROM), then it is a dangerous road, for the original HP15c ROM was one of the highest points of the computer era, when it comes to accuracy of the algorithms, cleverness of the layout, number of features implemented, ROM size, etc. A daunting peak to climb - in your first attempt.
  2. Screen. While they could have worked with salvaged HP12c screens (all voyager screens could be used for all models - if you look at your 12c at an angle you will see the GRAD indicator - while the 12c does not have trigonometrics) they have developed a dot-matrix screen. While readability seems to be good, it is by no means the same thing as the original.
  3. Keyboard. At this stage, we have just seen renderings and we do not know the materials used and the key feedback. However, we HP-lovers feel that the keyboard is one of the key success factors of the calculators of the golden age - of which 15c is one of the peaks. You cannot know how it will feel until some of us actually test the machine and report.
  4. Speed. It always was one of the problems of the voyager family - even when compared with the slow HP41c (clocked at more than twice the speed). This machine claims speeds 60x ; we know that the new HP12c, working on a similar processor, has been able to do 150x - and from the new 12c (called henceforth 12c+) to a 15c+, you just need to port the ROM and a new keyboard engraving.
  5. If you want to take the risk, you will not go into bankruptcy if you try. This said, there are some other very interesting developments going on - namely the HP41CL from Monte, where you can spend your hard-earned cash. I would get both if I can, but in the end...
  6. ... I prefer to wait for the real thing. I will probably get it sooner. Enough said.


Read entire post
Published on by

How I have configured my HP15c for financial duties (IV)

Finally, I include date calculations. The one I use more is the HP12c's DDAYS operation. I then set to find in the web software for it. I did not find it for the 15c, but I did for the 42s, that I then adapted. Attention - it has been modified to cater for European date format: dd.mmyyyy - you will have to go to the part where it decomposes the number into the parts and then change a few lines there.

The strategy is just to convert the date format to Julian number, convert the other date, and subtract. Fortunately, the DtoJ subroutine does not consume all 4 stack registers - or we would not be able to subtract them!

Once entered, you will still have 16 registers left. (we assume that we have set 11 registers for program use: from register 0 to .1 (so that you can enter the investment + 10 years + the number of years for the IRR program seen in past article). These 16 free registers allow you to invert a 4x4 matrix, or to solve 2 equation systems with the same coefficient matrix (a typical thing when you're solving structure problems - you apply the same set of linear equations to different conditions)

Here it is (and I have finished with it. The only possible addition would be the DATE+ function. The D->J is a part of the DDAYS program; We would just need to create the J->D - at the expense of losing necessary registers!)



Read entire post
More about: HP 15c, hp15c, hp15c+
Published on by

How I have configured my HP15c for financial duties (III)

The NPV and IRR are other favourites. There is another program in the Advanced Functions Handbook, that allows for up to 24 groups of cashflows (assuming you do not have any other program in memory!) and using 68 steps. However, as I said before, in my company we limit Capital Expenditure Proposal analysis to 10 years, so that I set to make a shorter program for 10 cashflows.

Register 0 is for the initial investment. Register ,1 contains the number of years to calculate (good to limit the loop and increase speed). Registers 1 to ,0 contain the flows of each year.

The system takes X as discount rate (in %). It can be then used to find the IRR through the Solve feature, entering a bracket of guesses in X and Y.


Now we come to a weighted average calculator. In many occasions I need to get the average margin of all the brands we sell.

But the weighting in HP12c works inverse as I would do. It calculates the average of Y weighted by X, instead of the average of x weighted by Y.

The calculators is mine and I do as I want with it ;-), so I will put it here, together with a cash discount calculation/comparison. We assign the weighted average to the same key, i.e. GSB 0:

One of the typical decisions in my job is to decide on cash discounts - both when buying and selling. I want to compare the cash discount % with a yearly rate - and then decide. I put the standard payment days in Y, and the discount % in X, and get the equivalent yearly interest that I am getting (if I'm buying) or I'm paying (if I'm selling)

Here it is:



Read entire post
Published on by

How I have configured my HP15c for financial duties (II)

Here you have a small function missing in the 15c: the %T !!

I have placed it close to its siblings: in the GSB 7 key:


I loved its simplicity since I saw it in an HP41cv manual:


Read entire post
Published on by

How I have configured my HP 15c for financial duties

As I have mentioned before, most of my duties involve financial calculations in an industrial environment.

The calculator I prefer among all, because of its simplicity (no menus) and its portability (fits in my jacket and occupies very limited space in a crowded desk, is the HP15.

Here is a dump of the program memory:

Let's start with an oldie, in the version that appears in the Advanced Functions handbook - no change needed. It uses the A to E keys in User mode, following the standard n -i- PV- PMT-FV. One key for entering the data and placing the program pointer in the right place; then R/S to execute:


I will continue in the next few blogs with the rest of the memory. For the sake of engineer futility, I have left space enough for a 3x3 + 3 equation system if some time was needed - and it has not been the case so far !!

Time Value of Money
2 STO 1
3 R/S
4 GSB .1
6 R/S
7 RCL*0
8 RCL 5
9 X<>Y
10 -
11 LST X
12 RCL+3
13 X=0?
14 GTO .0
15 /
16 CHS
17 TEST 4
18 GTO .0
19 LN
20 RCL 6
21 LN
22 /
23 STO 1
24 RTN
25 LBL B
26 STO 2
27 R/S
28 ,
29 2
31 EEX
32 CHS
33 3
34 CF 1
35 SOLVE .3
36 GOTO .4
37 GOTO .0
38 LBL .4
39 EEX
40 2
41 *
42 STO 2
43 RTN
44 LBL C
45 STO 3
46 R/S
47 GSB .1
48 GSB 2
49 CHS
50 STO 3
51 RTN
52 LBL D
53 STO 4
54 R/S
55 1
56 STO 4
57 GSB .1
58 RCL 3
59 GSB 2
60 X<>Y
61 /
62 CHS
63 STO 4
64 RTN
65 LBL E
66 STO 5
67 R/S
68 GSB .1
69 RCL+3
70 RCL+7
71 CHS
72 STO 5
73 RTN
74 LBL .1
75 SF 1
76 1
77 RCL 2
78 /
79 LBL .3
80 STO 8
81 1
82 STO 0
83 +
84 TEST 4
85 GOTO .0
86 STO 6
87 F?0
88 STO 0
89 RCL 1
90 CHS
91 Y^X
92 STO 7
93 1
94 X<>Y
95 -
96 X=0?
97 GOTO .0
98 RCL*0
99 RCL 4
100 RCL/8
101 *
102 F?1
103 RTN
104 RCL+3
105 LBL 2
106 RCL 5
107 RCL*7
108 +
109 RTN
Read entire post
Published on by

New flashing service

Today I have received a USB to com adaptor. Since most of our computers are laptops and quite new, we did not have serial adapters. I have then proceeded to update a 12c+ with the latest available software. In this particular case, it did not increase speed (it was already 150 times faster, so I am not deceived), but it corrected a number of issues compared with the original firmware.

We have decided to offer firmware flashing as a service for our purchases of a calculator. It will have a 10 € charge. The rules:

  • Calculators elegible for firmware flashing are HP10bII+, HP20b, HP30b, HP12c (ARM version)
  • The customer supplies the firmware through email.
  • The calculator to be flashed will be a new, out-of-the-box (or plastic package!). The serial number and proof of purchase bits of the packaging will be included in the shipping to the customer. (It is the customer decision to register the calculator in HP's website). Sorry, we will not flash calculators not brand new!

One of the most exciting projects is the repurposing of the hp20b and hp30b financial calculators with ultra-slick scientific firmware. The project is called wp34s and is run by Marcus von Cube, Walter Bonin and Paul Dale (in no specific order!).

You can find it on

There have been a number of releases (build number was 800 at the time of writing), and you can check whether you like the software by running the included .exe file and testing the features. The .exe file has the advantage of having the right labels on the keys!

I have not yet tested the flasher cable and software on a HP30b but I plan to do it shortly. I will then report on the results!

Read entire post