Today I took the HP41 to class, and...


first the teacher took it away from me to play with it, cause his 41 is broken and he hadn't seen one for a while :)

But thats not the reason for this post.
We did microcontroller stuff today and I needed to convert from decimal to hexadecimal. Now why does the HP41 not support that? Is there a module that does that?

I don't really need it, as I have a HP16C emulator for the HP48, wich is a lot nicer than using the 48 without the emulator. Also have a 16C, but its too mint to take it to class :)




As far as I know, ADVANTAGE ROM is the one that has direct binary-related handling functions for the HP41.

I am not sure if there are other HP original ROM that has them. Some not-original HP ROM (thirdy-part manufacturing) offer some sort of internal data handling and will accept and show hex representations.

I wrote some routines at the time I was graduating as an Electrical Engineer that allow 32-bit binary manipulation. They were based in the HP16C repertoire and offer some practical applications. If you wanna try them out, send me an e-mail and I'll send you the listings and how to use them. I'm preparing the definitve document so I can post it at the Museum's library. Another contributor has already tested the programs (I just do not like to mention names before asking if I can) and he found them usefull and added some important remarks, suggestions and even an extra routine. If you are interested, you can also help me enhancing them the necessary way.

Let me know.

Luiz (Brazil)

Edited: 17 July 2003, 7:19 a.m.


Hi, Harry:

Harry posted:" I needed to convert from decimal to hexadecimal. Now why
does the HP41 not support that? Is there a module that does that?"

The Advantage ROM module does that, and much, much more. Matter of fact, it gives the HP-41C nearly all advanced functions present in all Voyager series calculators (HP-12C, HP-15C, and HP-16C) and then a lot more, including full matrix operations, solve, integrate, boolean operations, base conversions, Time Value of Money, complex number operations, vector operations, differential equations and many others. It is a 12K (!!) ROM, and it shows.

Also, most of its advanced functions are implemented in machine code (not user code or synthetic programming), and they run extremely fast and use the least user resources possible (for example, the matrix function MSYS can solve a system of N linear equations in N unknowns in a *single* step (say 37 MSYS), and using NO numbered storage registers (it can work directly with matrices dimensioned and stored in Extended Memory), so it can run at SIZE 000 !!!

In my not-so-humble opinion, it's the best module ever made for the 41C, in terms of practical, all-purpose usability, for both students and technical professionals. There are other very interesting modules, but either they are far too specialized and low-level, or else they are written in user-code/synthetics and so can't really compete in terms of speed or convenience.

I would very heartily advise you to get the Advantage ROM really ASAP. It will solve your present hexadecimal problem, and will enhance your HP-41C power and usability 1000% for any other tasks you may contemplate in the future.

Best regards from Valentin Albillo.


Thanks, sounds like i HAVE to have that module.
I currently have (thats what my second 41 from ebay came with) a "Financial 1", "X Functions", and "Stat 1" module.
Does the Advantage module include all the functions of these modules?



The Advantage ROM does include basic Time Value of Money functionality. It does use Extended Memory for all matrix capabilities, if available, even defining a special matrix file type in EM. This means you can define very large matrices and work with them without using any of the numbered registers (000 and upwards) in main RAM, so avoiding conflicts with any other programs you might have.

Whatever the case, trust me and get one fast. You'll be delighted with it, I really think that having an HP-41C without the
Advantage ROM is actually wasting that wonderful machine's potential, your teacher won't believe his/her eyes when you demonstrate even a small part of its capabilities.

Best regards from V.


How does it handle complex numbers?
Do I get a complex stack, or does it use the x/z register for the real and the y/t register for the imaginary part?

I would rather have a complex stack like the 42s has.



Fifty-fifty. You do get a complex stack, with all typical stack operations available, but it's only 2 levels high. Nevertheless, it's quite useable and you can perform basic arithmetic plus many other functions, trascendentals included. Which is better, they can be used both in an interactive way and as non-interactive calls from your own programs.

By the way, the HP42S doesn't actually have a "complex stack", it's more like it can store a complex number in a single stack register. The only HP calculator featuring a true complex stack is the HP-15C. What's the difference, you say ? Well, in the HP-15C you can enter a complex number in the X stack register without losing your complex number already present in the T stack register. That you can't do in an HP42S, because it does need to use both X & Y stack registers to enter a single complex value. The HP-15C will do that using just the X register, in both its real and complex incarnations.

Best regards from V.


Yah, I get what you are saying. But I never had a problem with that.

BTW, on the 15C, to change the sign of a complex number you have to press: "f", "Re<>Im", "CHS", "f", "Re<>Im", "CHS".
thats 6 (!) keystrokes.
Is there an easyer way to do that? Ok, "1", "chs", "*" would do, but that would mean loosing the t register again ;)

I don't really use the 15C for complex operations anyway, as I like to have both parts of the number displayed at the same time.
And I had to write a program to be able to store complex numbers.



Harry --

You sound like a knowledgeable collector, too! I also have the 15C, 16C, 41CV, and 42S, as does Valentin and many others here.

I'll echo Valentin's comment about the Advantage Pac being the best one made for the 41 -- certainly the best one made by HP. (I have one, too.) Expect to pay > $40 on eBay for one. There are some details regarding the Advantage module that should be pointed out:

1. The complex-number support is the RPN-code routines originally developed for the Math Pac. It is not nearly as complete and easy-to-use as the complex-number functionality in the 15C and 42S.

2. The binary/octal/hexadecimal conversions, while micro-coded, are somewhat cumbersome and designed for unsigned integers only. Again, no match for the 42S/32S/20S, etc...

3. The curve fitting routines, I believe, are the ones in the Stat module you have.

Regarding complex-number functions, the 42S would be closest to ideal if its "COMPLEX" command brought up the two-level menus of the HP-28C "CMPLX" and 48G "CMPL" functions.

The 28C/S is also quite good, but it doesn't allow computations in polar mode or display polar-mode values. Conversions must be perfomed, 15C-like.

Regarding complex-number support on RPL machines:

1. Does anyone know how to enter a complex-valued number in polar form on a 48G or 49G? I'm stumped! Rectangular-coordinate entry is assumed, even in "POLAR" mode (R < Z annunciator); there seems to be no P->R conversion on RPL machines (28C, 48G, 49G) that works on two real-valued arguments.

2. Try this on a 49G in "FIX 5" display mode :


I get the following pop-up menu:

1. 00000RE
2. 00000IM
3. 00000CONJ
4. 00000ARG
5. 00000ABS
6. 00000i

In addition to the bug, it's not even the same menu as the one provided by option 9 under the "MTH" function. What a POS! I assume that there's a downloadable ROM upgrade, but this product is beyond patches...


I am not quite sure if I understand your question, but this is what I think you asked:
You want to enter a number not by real and imaginary part, but by "Betrag" (don't know the english word) and Argument.
This is done by opening brackets, typing the "Betrag" (still don't know the english word :)), then <right-shift> <SPC> ( that angle thing next to pi on the SPC key), then the argument followed by <Enter>.

I hope this is what you asked.



If I could design a 42SII+ (entirely mythical of course, it is not going to happen), I would put a key labelled "i" somewhere on it, with a shifted function of the angle symbol. To enter a complex number in rectangular form, key in the real part, press "i" and key in the imaginary. For polar form, key in the magnitude, press shift "i", and enter the angle. The calculator would convert the entered number to the current display format if necessary. The COMPLEX function could then bring up a menu of useful complex operations as CMPL does on the 48.

There are at least a couple of ways to enter a polar coordinate form complex number into a 48. One is as Harry suggests, use the parentheses and the angle key (R-shift SPC). Another is to first convert it to rectangular form, with the real part in stack level 2 and the imaginary in stack level 1 then use the R->C command. You are correct, there is no high-level command on the 48 to convert to rectangular, but you can write a simple program to do it and call it ->REC (like the 42S) or P->R or whatever you like. You could use sines and cosines and such to do the work, of course. There is however, a processor level command (probably not the right term, all you 48 experts please forgive me) that does the job. It kind of annoyed me that the command is in the machine but HP did not make it a high level command with a name, so I access the function using the following routine:

Polar to Rectangular:

Angle in stack level 2, magnitude in level 1


returns the imaginary in level 2 and real in level 1. I guess you could leave out the second SWAP, and the numbers would be ready to do a R->C on, but I follow the old convention for polar to rectangular (and rectangular to polar) operations on values on stack level 1 and 2 (equivalent to x and y on 4-level stack machines).

Rectangular to Polar:

imaginary in level 2 and real in level 1


returns the angle in stack level 2, magnitude in level 1

Using the parentheses and the angle key, it takes 5 keystrokes (not counting keying in the numbers) to get a polar form complex number into the 48. If you assign the above functions to a custom menu to which you also assign the built in R->C command, it takes four keystrokes. If you leave the second SWAP out of the programs, it only takes three.

For your info, I have read that using SYSEVAL is somewhat dangerous. Something about crashing the system if you type in the hex number wrong. The above programs have not caused any problems for me, but use at your own risk.


Hi, Karl;

the HP49G is actualy a hard-to-deal calculator. I like its resources, but operating it is another story.

You need the angle sign, easily found in the HP48G's keyboard; in the HP49G, it's the right-shifted ALPHA simbol in the [6] key. Let's suppose you wnat to enter 10|_45º, right? Try this:

[left-shift] [()] 10
[ALPHA] [right-shift] [6]
45 [ENTER]

If everything is right, you'll see:

To visualize it in polar mode, you should go to [MODE] menu and change Coor. System set.

Hope this helps.

Best regards.

Luiz (Brazil)


You all answered my questions.

Looks as though the 48 has everything you might want in complex-number support, except "intuitiveness" of use. The 49G is something else -
[ALPHA][Rshift][UNITS] to insert an angle symbol? Good grief!


...or you could use this little program:



HP-41C Standard Applications book, which was later sold as a Pac (should be cheap on eBay).

The program is limited and uses 141 instructions, though...


I don't think the 41C Standard Applications Pac was ever sold as a complete pac with module and manual. For a while the manual was included with the machine. You could send in a coupon to get the module. It arrived in an antistatic zip lock bag mailed in a foam padded bag. The module was also sold in a small box like the 82106A memory module, but it was way too small for the manual.


David --

Aha -- so *that's* how it was done! I bought a cobbled-together 41CV package with a stapled Standard Apps book from November 1981. I also have on loan a 41C from 1980 that apprently came with a spiral-bound Standard Apps book from August 1980.

I have seen "Standard Apps" packages with modules available on eBay. Since most of the programs are trivial, or were improved and provided with other Pacs (e.g., Time, Stat, Financial, Math, Advantage) later, these "Standard Apps" packages don't command high prices.


For a long time I thought that all the Standard Pac modules were sent out in the padded envelope. Then a couple of months back I got one in the small box. You obviously had to get the manual separately (if you did not get it with the calculator).


The HP-IL Development ROM also has very nice radix
entry/display routines (in assembler).



Tell your teacher to show up here, and we'll get HIS '41 fixed. (Think of the extra credit that might be worth!)

Possibly Related Threads...
Thread Author Replies Views Last Post
  Google honors Grace Hopper today Don Shepherd 19 3,762 12-10-2013, 07:06 PM
Last Post: Bill (Smithville, NJ)
  HP-42S celebrates its 25th anniversary today!!! Yriarte 7 1,729 10-31-2013, 05:56 PM
Last Post: Massimo Gnerucci (Italy)
  So I took a test with my Prime today ... kris223 12 2,086 09-25-2013, 07:19 PM
Last Post: kris223
  How do you reply to this? [What are the benefits of a graphing calculator outside of class?] Pier Aiello 12 2,084 08-28-2013, 07:34 AM
Last Post: Eddie W. Shore
  Emulators for iOS on sale today Bruce Bergman 3 997 05-24-2013, 03:54 PM
Last Post: BShoring
  HP 35 Pretty Good Purchase Today! Norman Dziedzic 1 885 03-05-2013, 12:52 AM
Last Post: Dan Lewis
  Today's Haul Les Koller 8 1,988 08-07-2012, 01:34 PM
Last Post: Eddie W. Shore
  aOT--Coolest thing I saw today Matt Agajanian 6 1,379 04-11-2012, 01:54 AM
Last Post: Nick_S
  Got my 55 today Matt Agajanian 0 559 04-02-2012, 05:20 PM
Last Post: Matt Agajanian
  Repurposing the HP20b in an engineering class Peter Murphy (Livermore) 4 1,052 12-31-2011, 10:02 AM
Last Post: Marcus von Cube, Germany

Forum Jump: