HP HP-42S User manual

An Alternative HP-42S/Free42 Manual
Version 0.7 ─January 2010
Author: José Lauro Strapasson, Brazil
[email protected] http://joselauro.com/42s.pdf
With contributions by Russ Jones, Manhattan Beach, California
Copyright (C) 2010 José Lauro Strapasson.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU
Free Documentation License, Version 1.3 or any later version published by the Free Software
Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of
the license is included in the section entitled "GNU Free Documentation License".
For more information visit the Free Software Foundation at http://www.fsf.org

Contents
1 Introduction..........................................................................................................................................3
2 Basic Operations ..................................................................................................................................4
2.1 RPN...............................................................................................................................................4
2.2 Turn ON/OFF................................................................................................................................5
2.3 Setting the display contrast ...........................................................................................................5
2.4 Training RPN using HP-42S.........................................................................................................5
2.5 Menus............................................................................................................................................5
2.6 DISP Menu....................................................................................................................................6
2.6.1 The FIX function....................................................................................................................6
2.6.2 The ALL function ..................................................................................................................6
2.6.3 The SCI function....................................................................................................................6
2.6.4 The ENG function..................................................................................................................6
2.6.5 RDX. And RDX, functions....................................................................................................7
2.7 MODES Menu ..............................................................................................................................7
2.8 The Stack ......................................................................................................................................7
2.9 Getting used to some keys of the keyboard ..................................................................................8
3 Memory..............................................................................................................................................10
3.1 The CATALOG menu ............................................................................................................11
3.2 More on the CLEAR menu.....................................................................................................11
3.3 The CUSTOM menu ..............................................................................................................12
4 Probability..........................................................................................................................................12
5 Complex Numbers .............................................................................................................................13
5.1 Complex numbers in rectangular coordinates.............................................................................13
5.2 Complex numbers in polar coordinates ......................................................................................14
6 Programming......................................................................................................................................14
6.1 Basic programming.....................................................................................................................14
6.2 More than one program in the memory.......................................................................................16
6.3 The X?0 and X?Y sub-menus .....................................................................................................17
6.4 Real program examples...............................................................................................................18
7 Using the Solver.................................................................................................................................19
8 Numeric Integration...........................................................................................................................20
9 Statistics .............................................................................................................................................21
9.1 The sub-menu CFIT....................................................................................................................22
9.2 The second line: ALLΣ, LINΣ, ΣREG and ΣRG? Functions......................................................22
10 Matrices ...........................................................................................................................................23
11 Other Bases ......................................................................................................................................26
12 Flags.................................................................................................................................................26
13. Free42-Specific Features ................................................................................................................27
13.1 Keyboard Interface (Windows, Linux and Mac Desktops and Laptops)..................................27
13.2 Program Import and Export ......................................................................................................28
13.3 Printing......................................................................................................................................28
14. Comprehensive Command List.......................................................................................................28
GNU Free Documentation License.......................................................................................................35

1 Introduction
Since HP-42S was a very nice calculator, and its official manual is no longer freely available and
there were many people looking for its manual, seemed good to me to write my own HP-42S manual.
I personally don't have a HP-42S (more than US$300 on ebay). I have a HP-33S and had a HP-48G,
but my brother has one and I also use Free42 simulator for PalmOS.
This manual will be of interest to people who:
a) Have a HP-42S calculator and lost its manual.
b) Got the Free42 simulator and want to know how to use it.
c) Have a palmtop with PalmOS and want a nice scientific calculator (get Free42)
d) Just want to have an idea how 42S was.
e) Have the official manual but don't want to read more than 300 pages!
Why HP-42S? Because it was a very, very nice calculator and also a powerful one. I know some other
HP models from the past and the present like 48G, 49G, 28S, 33S, 20S, 6S Solar, 15C, and even a TI-
36X Solar, etc, but 42S is my favorite. And because there is a free simulator (Free42) that works on
Palm OS, Windows and Linux and there are also some emulators (at the moment emulators are only
useful for who has a real calculator since HP-42S roms are not freely available). This calculator
played an unique position among HP calculators! Being a scientific programmable 100% RPN
calculator, it also had some graphing abilities but was pocketed sized and non RPL (some people as
me like RPN, but dislike RPL).
It is important to say that this manual is not complete and I don't want it to be. Two things I really
don't want to see here are PRINTING and HP-41 compatibility. This because I suppose most owners
don't have the printer (and it is not so useful) and also haven't had a HP-41 prior to HP-42S.
If you want to download the fantastic Thomas Okken Free42 program please go to this web site
http://home.planet.nl/~demun000/thomas_projects/free42/
In my opinion Free42 is even better than the real HP-42S. Try asin(acos(atan(tan(cos(sin(6°)))))).
For more information about HP-42S please see
http://www.hp42s.com http://www.hpmuseum.org/hp42s.htm
Here you can find emulators for HP-42S http://privat.swol.de/ChristophGiesselink (very nice)
http://www.geocities.com/hrastprogrammer/HP42X/index.htm
I would like to finish this introduction saying that it would be nice to have the HP-42S back to life
again and even better to have a model (both real and in simulator/emulator form) based on HP-42S
but with some of the 33S features like more memory, an equation editor, fractions, program lines
starting with letters, physical constants, units conversion, less useless functions, etc. And it also would
be nice to have HP-42S ROM images for free just like what happened to HP-48G and other models
and keeping PDF versions of the manuals of retired models to download would be nice too. Perhaps
someone will listen to me! ☺
A quick note on notation: throughout this manual, for the most part, keys that are to be pressed are
denoted by putting them in a box, e.g. ENTER, except when the keys are numbers or arithmetic
operators. Keys that are “2nd functions” denoted by orange lettering on the calculator are denoted in
orange with an orange box preceding it, e.g. ALPHA.. Functions that are accessed through the
menus are generally denoted by shading in grey, such as in FCN.

2 Basic Operations
2.1 RPN
The HP-42S, like most old HP calculators, is a RPN calculator. RPN comes from “Reverse Polish
Notation”. In RPN we first enter data and then we enter the mathematical operations.
Example: To make a simple operation like 2+2 in a normal algebraic calculator we do “2 + 2 =”
which give to us 4. To make this same calculation using a RPN calculator we do “2 ENTER 2 +”
As we can see in RPN mode we first enter the data pressing the ENTER key after every data (except
for the last in HP's RPN) and then we enter the operations.
Let’s now consider the following calculation
4 + (2 × 79)
In a RPN calculator we do
2 ENTER 79 × 4 +
But how could one do this in an algebraic calculator? If the calculator has “(“ and “)” keys we enter
4 + ( 2 × 79 ) =
But if there are no parenthesis keys we might do this in a good calculator by doing
4 + 2 × 79 =
By a “good” calculator we mean a calculator which knows that “×” and “/” have precedence over “+”
and “–“. In a bad algebraic calculator which does not know this we have to do
2 × 79 =
and
+ 4 =
Or
2 × 79 + 4 =
What about to calculate sin(33°)? In a RPN calculator we enter
33 sin
or if you prefer
33 ENTER sin
(in this case we don't need to press enter key)
But in an algebraic calculator we have two ways. In the classic old models it is like RPN and we do
33 sin
but in some modern models (which typically allow you to edit entered data using cursors) we do

sin 33 =
So algebraic calculators are ambiguous because the many ways they work. RPN calculators are more
standard and so less ambiguous. The main key to understand how to use RPN in more complex
calculus is to realize that in RPN we make calculations from “inside” to “outside” instead of from left
to right. For example:
8 × ln [5+sin(40°)]
in RPN this is accomplished by
40 sin 5 + ln 8 ×
In RPN calculators, there is no operator precedence — operators are executed immediately and the
order of the calculations determines precedence. There is never any need for parentheses. In RPN we
can make any calculation we could do in algebraic devices and this is not only more elegant but also
more effective since there are less ambiguities and we use less key strokes. For example, my HP-33S,
which is both algebraic and RPN, is always in RPN mode. (Just to insert equations I think algebraic
mode is better) For more information on RPN, please see http://www.hpmuseum.org/rpn.htm
2.2 Turn ON/OFF
To turn your HP-42 on press ON. The ON key is the same EXIT key. To turn your HP-42S off press
OFF. OFF is in the same key as EXIT and ON, and by OFF we mean you have to press the
orange key before pressing the EXIT key (which has “OFF” in orange above it). The orange key is
what in some other calculators is called “second function”. When you press this all keys turn into
what is written in orange above them.
Actually OFF is a redundancy since OFF can be only accessed by pressing first. But (as in the
HP-42S official manual) we will do this just to remember when we have to press or not. If you
press this key a second time all keys go back to the normal function.
2.3 Setting the display contrast
HP-42S, as most HP calculators, can set the display contrast by pressing at the same time ON and +-
or – .
2.4 Training RPN using HP-42S
Now that you have your 42S on try to do the following calculations:
Calculation Keystrokes
6 × (4 + 3) 4 ENTER 3 + 6 ×
6 +{8×[2+(4/3)]} 4 ENTER 3 / 2 + 8 × 6 +
IMPORTANT: For sake of simplicity sometimes we will use / instead of ÷.
2.5 Menus
Not all functions of HP-42S are visible above the keys. It has menus with access to many more
functions. The menus are
ALPHA MODES DISP CLEAR
SOLVER ∫f(x) MATRIX STAT
BASE CONVERT FLAGS PROB
CUSTOM PGM.FCN PRINT TOP.FCN
CATALOG

2.6 DISP Menu
The DISP menu is the first menu we have to see. It is above E key. So start by pressing DISP.
When you do this the DISP menu appears in the first line with the following functions.
FIX SCI ENG ALL RDX. RDX,
These functions appear just above the top row of keys ∑+, 1/x, √x, LOG, LN and XEQ. Now with
the DISP menu active those keys don't represent their original functions but those of the DISP menu.
The same happens with all menus.
2.6.1 The FIX function
The FIX “function” is not a function in the mathematical sense, but a calculator function. By
usingFIX function the display becomes with a fixed number of digits after decimal point. Ok, press
FIX. (I mean ∑+ with DISP menu active)When you do this what appears isFIX _ _Then you have to
enter a number up to 11. For example FIX 0 4 sets the calculator to have 4 digits of precision after the
decimal point. A number like πwill appear as 3.1416 and √2 will appear as 1.4142.(You can verify
this by doing πand 2 √x respectively)
If you put FIX 0 9 than those numbers will appear as 3.141592654 and 1.414213562. It is important
to say that this is not the actual precision the calculator will have but just the display precision. To see
all calculator precision you have to press ALL in DISP menu (above LOG key). By doing so those
numbers will appear as 3.14159265359 and 1.41421356237. As you can see the numbers are not
truncated but rounded.
Not all numbers can be seem with a fixed decimal precision. If you put 4 digits for fixed precision the
number πwill appear as 3.1416 but if one calculates 108(do this by doing 8 10xor by entering 1E8)
what you are going to see is 100,000,000.000 with 3 decimal digits. This happens because the
calculator cannot show more than 12 digits at a same line.
2.6.2 The ALL function
We already talked about the ALL function. It makes the calculator to show all of its precision.
2.6.3 The SCI function
The SCI function works just like FIX one but puts the calculator in “scientific” mode. The numbers
will be shown as a decimal number between 1 and 10 times a power of 10. For example 1000 will be
represented as 1.00E3 with you put the calculator in scientific mode with 2 digits. 1.00E3 means
1.00×103. The πnumber will appear as 3.14E0.
Actually even when in FIX mode, the calculator will convert some answers to scientific notation. For
example if you calculate 1.0001-1 with FIX 3 you are not going to get 0.000 but 1.000E-4. This
means that the calculator is “smart” and shows the result in the best way as possible.
Exercise. Show that 1.0001 – 1 gives 1.000E-4 in FIX 3 mode.
Answer: First we put the calculator in FIX 3 mode by doing DISP FIX 0 3.
Then we do 1.0001 ENTER 1 – and we get the answer.
As you can see, when you are in FIX mode a sign ■appears on the right side of the FIX name in the
DISP menu. This means FIX mode is active. The same happens with SCI, ALL, etc.
2.6.4 The ENG function
The ENG function puts the calculator in engineering notation. It looks like scientific notation but now
the first number does not need to be between 0 and 1 but can be between 0 and 1000 and the power
will be always 3 manifold (corresponding to the magnitude prefixes such as milli-, micro-, kilo-,
mega-, etc. used in engineering units). For example: 100 will be represented by 100.E0 in ENG 2

mode while 1000 will be 1.00E3 in the same mode. Why do we get 100.E0 for 100 instead of
100.00E2 in ENG 2 mode? Because the calculator shows in engineering mode the same number of
digits it shows in scientific mode.
2.6.5 RDX. And RDX, functions
In some countries like Brazil we use ',' for the decimal point instead of '.' and also '.' instead of ',' for
thousands separators. For example πis written here (Brazil) as 3,141 etc and not as 3.141 etc. In FIX
3 mode one million is written here as 1.000.000,000 and not as 1,000,000.000 as in English use. By
pressing RDX, you make the calculator to use ',' for the decimal point and by pressing RDX. we make
it use '.' for decimal point. Again the active mode is followed by a ■sign. Here, in this manual, I
assume the calculator is using '.' for decimal point.
2.7 MODES Menu
To access MODES menu just press MODES. (MODES is above +/– key).
DEG actives degree mode for trigonometric functions. In this mode a circumference has 360°. RAD
actives radian mode and in this mode a circumference has 2πradians or just 2π.GRAD is not so
useful and correspond to 400 degrains for a circumference. For example: In degrees we have
sin(90°)=1 and in radians we have sin(π/2)=1.
Try this: π2 / COS in radians mode. Why the result is not exactly zero?
Answer: Because the number that calculator entered was not exactly πbut 3.14159265359.
REC actives rectangular mode (x,y) and POLAR actives polar mode (r,θ). We will see this more in
detail when study complex numbers.
The MODES menu has another line but we will discuss this later. We will discuss the others menus
later too.
2.8 The Stack
The stack is intimately related to the way the calculator uses RPN to perform calculations so it’s a
good idea to understand the concept and behavior of the stack. On the HP42S, the stack consists of 4
registers named X, y, z and t, and normally the values of x and y (or just x if a menu is active) are
displayed.
No calculator can store an infinite amount of data. In algebraic calculators the “( )” are limited to a
given number depending on the model. The same happens in RPN calculators. In some models like
HP-48 or HP-49 the amount of input data is limited only by available memory. But in other models
like 32SII, 33S (in RPN mode) and 42S the input data have to fit in a “stack” of four lines. There are
four lines labeled x, y, z and t. So the stack is something like
t: 0.0000
z: 0.0000
y: 0.0000
x: 0.0000
But since the calculator’s display has only two lines just x and y lines are visible. When you enter a
number (say 2 ENTER) what happens is the following.
i) The content of lines t and z are lost.
ii) The content of line y goes to line t.
iii)The content of line x goes to line z.
iv)The content just entered goes to line y and line x.

So what you just entered appears twice. So if you do 2 ENTER + you will have 4 as answer.
This is a feature, a bad feature I think, of the HP RPN style used by the 42S (also in the 33S, 12C, etc
but not in the HP48 or 49). In my opinion we could have a simpler RPN style. Anyway there is
another way to enter data in RPN, namely yo just type the number and then press the desired function
key. For example, if you do 2 1/x , the calculator makes an automatic ENTER before the 1/x function
but in this case the content just entered appears only once. So if you do 2 1/x or another example 9 √x
what you will have will be
i) Only the content of the t register will be lost.
ii) The content of the z register goes into the t register.
iii) The content of y goes into z.
iv) The content of x goes into y.
v) Your result will be in the x register.
This second way to enter data looks more intuitive to me and I think it should be always like this. But
it is not!:( So to do 2+3 we have to do2 ENTER 3 + (and not 2 ENTER 3 ENTER +).(Actually one
can also use EXIT to enter a number without duplication). If you just press ENTER you duplicate
what is in register x. When making a calculation one should never forget about the limitation of the 4
lines of the stack. The lines of the stack cannot contain only numbers but also matrices, complex
numbers, etc.
Two basic operations with the stack are: x<>y and R↓. The first exchanges the value in register x
with the value in register y. The second makes the stack “roll down” (t goes to z, z goes to y, y goes to
x, and x rolls around to t).
In the CLEAR Menu there are some interesting functions: CLST which clears all the stack(something
missing in HP-33S). CLX clears the line x in the same way of pressing ←. The ←is more used to
correct a number when typing it. Another useful function is LASTx which gives the last calculated
result.
2.9 Getting used to some keys of the keyboard
Let's discuss some basic keys of the calculator. We will start from upper left side. Σ+ and Σ-: These
are statistical functions. We will discuss this later.
1/x and yxThe 1/x key just calculates the inverse of a number which is in register x. yxis the
potential function. To calculate 5 3 = 5×5×5 we do 5 ENTER 3 yx.
√x and x2: These functions just calculate the square root and the square of a number in x. When
studying complex numbers we will see that unlike the HP-33S, in HP-42S the number in
square root can be negative.
LOG and 10 x: These functions calculate the base 10 logarithm and its inverse.
LN and ex: These functions calculate the natural (base e=2.71828...) logarithm and its inverse. If
we want a logarithm in another base, we can use the relation logzy=logz y / logz x where z is
any other base. If we take z = e = 2.71828 then we have logxy=ln y / ln x .
Example: Calculate log28
Answer: 8 LN 2 LN / which give us 3 because 23= 8.
XEQ and GTO: These are related to programming and we shall discuss this later. XEQ will also be
discussed in ALPHA menu part.

STO and COMPLEX : These are related to the memories and complex numbers. We will discuss
this later.
RCL and %: RCL is related to memories and we will discuss later. %is the percentage
function. To calculate 10% of 300 we do 300 ENTER 10 %which gives 30 as the answer.
Note that 300 remains in line y, so if you want to calculate 300 plus 10% you do 300 ENTER
10 %+
R↓and π: We already discussed these. The first “rolls down” the stack and the other returns
π=3.14...
SIN and ASIN : These are the sine trigonometric function and inverse. The angle type is set up as
said before in the MODES menu. The default is degrees. ASIN is the inverse usually called
arcsine or sometimes sin–1 (not to be confused with cosecant which is 1/sin). It is important to
remember that ASIN is not a real function since there is no single result. For example
sin(135°)=sin(45°)=√2/2 but the calculator gives always ASIN(√2/2)=45°. HP-42S will give a
complex number if the input of an arcsinus is bigger than 1 or smaller than -1.
COS and ACOS: These are the cosine trigonometric function and inverse.
TAN and ATAN: These are the tangent trigonometric function and inverse. Not all numbers can
have a result for tangent. For example tan(90°) goes to infinity. The HP-42S gives a big
number instead.
ENTER and ALPHA: The ENTER key does not need any comment. ALPHA is the alpha-
numeric menu used to enter letters instead of numbers. When you press ALPHA what
appears is
ABCDE FGHI JKLM NOPQ RSTUV WXYZ
These are sub-menus. If you press now ABCDE what you will have is
A B C D E
Then just pick the letter you want. But above you can see this symbol ▼▲. This symbol means
the menu has more than on line. You can access the other lines by pressing ▲or ▼. In this
case there is just one more line with Ă, Å and Æ. If you press FGHI you will have F G H I,
etc. Among all calculators I know this is in my opinion the best way to enter letters! The main
ALPHA menu also has a ▼▲ symbol. The other line has the following submenus.
( [ { ←↑↓< = > MATH PUNC MISC
Much more than one will ever need! If you are inside a submenu and want to go back to the
main menu just press EXIT. Why is the ALPHA menu useful? Of course it is useful to label
programs and data in memory, but it is also useful to enter commands using the XEQ key!
For example XEQ “SIN” is the same of pressing the SIN key. The “” are called automatically
when pressing ALPHA and ENTER. XEQ “SINH” calculates the hyperbolic sine while
XEQ “OFF” turns the calculator off. Finally we must say that ALPHA is not always
needed! In some cases like XEQ and GTO (we will see this later) a simple ENTER will do.
Entering alphabetic text is even easier with Free42. Free42 allows you to just type on the
native keyboard when the ALPHA menu is activated.
x<>y and LASTx: We already talked about these.

+/–: This just changes the sign of a number.
E and DISP: We already talked about DISP menu. The E is the character meaning the power of 10
in scientific notation. For example, to enter 5.2x 1022 we do 5.2 E 22 ENTER.
←and CLEAR: As said before, ←clears line x and if you are entering a number you can delete
the last character. We already talked a little about CLEAR menu and we will discuss it again
later.
▲or ▼: As said before we use this to change the line in a multi line menu. We will see BST and
SST later.
The keys from 0 to 9 have obvious functions.
. and SHOW: The '.' is just the decimal point and SHOW is used to show a number for an
instant with all precision. For example: If you have πin the first line and you are using the
display in FIX 4 you have 3.1416 but pressing SHOW you will see 3.14159265359 for an
instant.
3 Memory
The real HP-42S has about 7200 bytes of memory while Free42 can have much more depending on
the available memory in the computer/handheld. In fact, 7200 bytes is a lot of memory for the HP-
42S! A program of 10 lines uses about 15 bytes of memory. This means that, while in some other
models like the HP-20S you would be able to program just 99 lines, with 42S you would be able to
create programs with thousands of lines!
This available memory is shared with everything including programs, variables, etc. Let's start from
the basic. To store a number which is in register x of the stack we use the STO function. The HP-42S
has by default 25 positions in the memory from R00 to R24. To store the number πin R10 just do the
following: πSTO 10 To get it back it is just do this: RCL 10.
If you want to make an operation you can use STO+, STO–, STO×, STO÷. Any of these operations
can be entered by pressing the STO key followed by the operator key, followed by a register number
or name. For example, 6 STO – 05 subtracts 6 from the number in R05. 2 STO ÷ 10 divides the
number in R10 by 2.You can also use RCL+. RCL–, RCL×, RCL÷, but it is not so fun. This gives the
result of the calculation but does not change the number in the memory.
If 25 positions in the memory is not enough for you, you can change this number by using the SIZE
function (which is in the second line of the MODES menu). For example MODES ▼SIZE 0100
changes to have 100 positions, from R00 to R99. Although it is possible, I suggest you should not use
more than 100 positions. These positions are stored in a normal matrix called REGS (we, the poor
owners of the HP-33S for example, just have 26 memory positions, from A to Z).
But this kind of memory position only accept real numbers! What about if you want to store other
things? Matrices, complex numbers of even other real numbers? To do this HP-42S has an arbitrary
number of positions, limited only by the memory available, which use letters to label the positions
instead of numbers. We had stored the πnumber in R10 but we can create a variable called, for
example ,“PI” to store it. To do so we just do πENTER STO ALPHA “PI” ENTER.
Actually is not just PI you type but NOPQ P FGHI I but we wrote that for simplicity. Now to
get this number back it is just type RCL “PI”. When you type RCL the “PI” should appear for you to
select it. More generally, the STO and RCL functions automatically bring up a menu of previously

defined varables currently active in the calculator, and you can use the arrow keys if there are more
than will fit on one screen.
You can also use STO+, STO–, STO× and STO÷ even in this case since the types of the things you
are operating are the same.
We can deal with the four registers of the stack as we deal with the memory positions. In this case the
lines of the stack are called ST X, ST Y, ST Z and ST T respectively. To access this we press '.'
before the name of the register. For example: 5 STO . ST X puts 5 in line x of the stack. The
submenu that is displayed when we press ‘.’ Actually has two other items, ST L and IND. ST L refers
to the LASTx register, and IND is used for indirect parameters.
As the content of the stack can change easily I don't think “STO .” is a good thing. But I cannot say
the same of “RCL .” which may be very useful to get the content especially of registers z and t. You
can also use STO and RCL with +, -, x and ÷ and '.' to work with the content of the registers of the
stack. For example:5 STO ÷ . ST Z divides register z by 5.
We can use an indirect parameter by pressing . IND when using STO or RCL or any other
calculator function that happens to allow indirect parameters. With indirect addressing, we specify a
location where the actual parameter is stored, rather than the parameter itself. That location could be
a named variable, one of the numbered storage registers, or a stack register. For example, to assign
the value 125 to the register specified in the variable ABC:
10 STO “ABC” sets variable ABC to the value 10
125 STO . IND “ABC” stores 125 in the register pointed to indirectly by “ABC”
RCL 10 returns the value 125 to the x-register
3.1 The CATALOG menu
The CATALOG menu has the following submenus:
FCN PGM REAL CPX MAT MEM
FCN: It shows all the functions available in HP-42S calculator. It has many lines and one must use the
▼and ▲to navigate through the lines. Here you are going to find important functions we
don't see in the keyboard including hyperbolic functions (SINH, COSH, etc), functions to
work with integer and real numbers like IP (integer part) and FP (fraction part), programming
functions, etc. Don't forget you can also use XEQ “function name”.
PGM: It shows all variables with programs in the memory.
REAL: It shows all variables with real numbers in the memory. (But does not show numbers in the
numbered registers R00, etc)
CPX: It shows all variables with complex numbers.
MAT: It shows all variables with matrices. The REGS matrix always appears. It contains the numeric
memories R00, R01, etc.
MEM: It shows all available memory.
3.2 More on the CLEAR menu
We already saw some of the CLEAR menu functions, but there are also:

CLV: Clears variables we had stored using STO “name”.
CLRG: Clears the R00, R01, … memories known as registers.
CLLCD: Clears the LCD display (may be useful when plotting)
CLALL: Clears all the memory of the calculator.
3.3 The CUSTOM menu
This is not really related to memory, but as we have just discovered the FCN menu within the
CATALOG menu, now is a convenient place to talk about it.
The HP-42S calculator has a lot of functions. So many, in fact, that it is inconvenient to find the
function you want every time in the FCN menu or to use XEQ “function name” every time. To solve
this problem HP-42S has the CUSTOM menu which can contain functions or user-written programs
you personally select. To do this we use ASSIGN. When you call this you can select a function
from FCN and also some other things. For now we are interested in functions so press FCN. Now you
find the function you want and then you press the position you want it to appear in the CUSTOM
menu.
Example: Let's put ABS (absolute value) in the first position of CUSTOM menu.
ASSIGN FCN ABS
In the display you are going to see:
ASSIGN “ABS” TO _
Then you pick a position, for example initially the CUSTOM menu is empty and you have
___ ___ ___ ___ ___ ___
and you press the first ___ your CUSTOM menu will become
ABS ___ ___ ___ ___ ___
As you can see the CUSTOM menu has also the ▼▲ symbol which means there are more than one
line. There are three lines you can use when calling ASSIGN function which means 18 available
positions.
(I would like to use this space to make a complaint) There are some HP models with more than 2000
functions! Many functions does not always mean power but does always mean complexity!
4 Probability
Probability functions are in PROB menu (over the × key). They are COMB, PERM, N!, GAM,
RAN and SEED.
COMB: This calculates the number of combinations of Nthings taken rat a time (mathematically
notated as Cr
N). The order does not matter. A thing cannot appear more than one time.
Example: If we have the five letters a, e, i, oand uthe possible combinations taken one at a
time are {a,e,i,o,u} or 5 combinations.

Taken two at a time:{ae, ai, ao, au, ei, eo, eu, io, iu, ou} or 10 combinations.
Taken four at a time {aeio, aeiu, aeou, aiou, eiou} or 5 combinations.
The number of combinations C is given by
)!(!
!
rNr
N
CN
r−
=
where N! = N×((N–1)×(N–2)× … × 2 × 1. To calculate this using 42S just enter N, press
ENTER, enter rand press PROB COMB.
PERM: This calculates the number of permutations of Nthings taken rat a time (mathematically
notated as Pr
N). A thing cannot appear more than one time but now the order matters.
Example: Five cars are in a race. Their colors are red, blue, green, white and cyan. What are
the possible results for the first, second, and third place winners?
Solution: For the first position we have five possibilities. For the second position we have
four possibilities, and three possibilities for the third position. So we have 5x4x3=60 different
arrangements. To see this using 42S just enter 5, press ENTER, enter 3 and press PROB
PERM. It is simple to realize that the number of permutations is given by
)!(
!
rN
N
PN
r−
=
In particular if r= N(all the things are taken) then the number of permutation is N!.
Example: In how many ways we can re-arrange the letters of the word “love”.
Solution: 4!=24.
N!: This just calculates the factorial of N given by N!=N.(N-1)...1 for a number (non-negative
integer). The biggest number allowed is HP-42S is 253 and in Free42 is 170.
GAM: This is the Gamma function which is defined by
∫∞−
=Γ 0
1
)( dxexa xa
For a integer number we have Γ(n)=(n–1)! and Γ(n+1)=n! but the argument of the gamma
function can be a non-integer (but must be real). In this point HP-42S is different from the
33S which has only one function for both things.
RAN: This is the random number generator which gives a pseudo-random number in 0 ≤x ≤1.
SEED: A sequence of pseudo-random numbers always starts with a seed. If you repeat the seed the
sequence repeats. To enter a new seed just enter a number and press SEED. If the seed is zero
the calculator will generate another seed.
5 Complex Numbers
5.1 Complex numbers in rectangular coordinates.
Unlike the HP-33S (and its ancestor HP-32SII) complex numbers are straightforwardly supported and
used in the HP-42S. There is almost nothing special to say. Just enter –1 and press √x, what are you
going to have is x: 0.0000 i1.0000 which means i. (Just for comparison, to do the same in HP-33S we
have to do 0 ENTER 1 +/– ENTER 0 ENTER .5 CMPLX yxand we will have 0 and 1 meaning i)

Yes it is possible, but who wants to calculate the square root of –1 every time, to have i?
We can use the COMPLEX function to take register y and register x of the stack and create a
complex number y + ix. Again unlike HP-33S almost all the functions of the HP-42S fully support
complex numbers.
Example: Show that i2 is √–1.
Solution: 0 ENTER 1 COMPLEX x2which gives -1.0000 i0.0000 (means -1).
5.2 Complex numbers in polar coordinates
When representing a point in R2we can use any kind of coordinate system. The most commonly used
are the rectangular (or Cartesian system) which use the usual coordinates xand yand the polar system
which use the coordinates r and θ. The relationship between them is x = r cos θ, y = r sin θand r =
(x2+ y2)1/2 , θ= tan–1 y/x. When dealing with complex numbers we can think of the real axis as being
the x axis and the imaginary axis as being the y axis in Cartesian coordinates, or we can use also polar
coordinates. In this case i will be r = 1 and θ= π/2 (90°).To change between rectangular or polar
modes use RECT and POLAR in the MODES menu.
6 Programming
Programming the HP-42S is very simple and very versatile. It does not use the RPL style of the HP-
48 or HP-49. You program in the same way you use the calculator and unlike some non-HP cheaper
calculators, all the steps are shown in the display and in numbered lines.
6.1 Basic programming
Let's imagine you want to make a given calculation. For example: Suppose you want to solve a
equation x2–5x+ 4 = 0 which is of the form ax2+ bx + c= 0. As you know the solution for this kind
of equation is
a
b
x2
Δ±−
=
where Δ= b2– 4ac. Let's suppose a, band care in R00, R01 and R02 respectively and we are going to
use R03 for ∆. To solve this equation using HP-42S/Free42 we just do
RCL 01 (This is b)
x
2
4
RCL 00 (This is a)
RCL 02 (This is c, keep in mind we have only four lines in the stack)
×
×
–
STO 03 (This is ∆)
Unlike some other models, say 33S, we don't need to worry whether ∆is negative. But we save the
square root for later because in R03 the number cannot be complex. (otherwise we would need to store
it in a normal memory)
Now we calculate the first root
RCL 01

+/–
RCL 03
√x
–
2
RCL 00
×
÷
And the second root is given by
RCL 01
+/–
RCL 03
√x
+
2
RCL 00
×
÷
So what about if you have to solve hundreds of this kind of equation? Only changing the a, band c
values? It would be better to save all the steps in the calculator's memory and let it do the calculations
for you. This is what calculator programming is about.
To enter in the program mode you must do PRGM (above the R/S key). If the memory has no
programs yet, you are going to see:
00►{ 0-Byte PRGM} 01 .END.
(If there is a program we can erase it by doing CLEAR CLP before entering in program mode).
Now just enter the first sequence starting in RCL 01 x2 , etc. Every command will take a line and in
the end you will have 08 09►STO 03
This means that this part of the program takes 9 lines. You can move through the program lines by
using the ▲▼ cursors (which, of course, cannot be programmed). Two important things to say here
are:
1. The functions are not always shown in the calculators display as we know them. For example
the x2function is showed as X↑2.
2. We don't need to press ENTER after a number, unless it’s between two numbers.
Now let's enter the second part of the program which gives to us the first root. (if you used the cursors
you must go back where you stopped). After doing so we have
17 ×
18►÷
Again in the display the functions are not exactly as we know and √xappears as SQRT.
Unless we store the result in a memory we must find a way to stop the program to see the result. This
is doing by the function STOP which is entered by pressing R/S. (R/S means “run and stop”) So after
this we have

18 ÷
19►STOP
Finally we enter the last part of the program and after this we have
27 ×
28►÷
If you move using the cursors you will find .END. in line 29 (which is the end of the program) and
in line zero we find 00►{ 31-Byte PRGM }. Almost 1 byte per line of program.
As we said the HP-42S has about 7200 bytes of memory. Not bad! Just for comparison, the HP-32S
had 390 bytes and spent about 1.5 bytes per line. The HP-20S had only 99 lines/steps and the HP-9G
had 400 steps while HP-33S has 31KB (but hardly can take advantage of this due to a limit of 26
memories/labels, which is the same of 32S, and it spends about 3 bytes per line).
After entering the program just press EXIT. Now enter the numbers a, band cof the equation into
R00, R01 and R02. For example for the equation x2– 5x + 4 =0 we enter 1 STO 00 5 +/– STO 01 4
STO 02. Now we just press R/S (to run the program) and we get 1, and pressing it again we have 4.
6.2 More than one program in the memory
If we want to have more than one program in the memory we can use more than one program space.
To create another program space just press GTO . . .
The GTO command can be used in two different situations:
1. You are not in the programming mode. In this case you can use GTO . . to create
another empty program space, but this happens only if the current mode is not already empty.
•You can use GTO “label”. (We will see this below)
•You can also use GTO followed by “END” or “.END.” etc to move among
program spaces. (In this case I must admit 33S is better because the lack of this
complication)
2. You are in programming mode. In this case you cannot change the program space.
•You can use GTO ._ _ _ _ to move to a line where in the “_”'s you put the number
of the line where you want to go. (This will happen and it is not programmed)
•You can use GTO “label” (This will be programmed and will cause the program
when executed to jump to that label)
But what is a label? A label is a name we give to a position in the program using the LBL command
which is available in PGN.FCN (“program functions”) menu. To create a label you must be in the
programming mode (PRGM) and then just press LBL and then enter a name (1 to 7 letters). If you
use only one letter it is local to the current program and not visible elsewhere, and thus won't appear
automatically when you press XEQ (just for comparison, in the 33S all labels are just one letter).
Example: In the programming mode PGN.FCN LBL AAA creates a label “AAA” which appears as
LBL “AAA” in the program. So when the program is running a statement such as GTO “AAA” is
encountered (for example), the program will jump to the line which has the LBL “AAA” instruction.
(Please note we don't need to press ALPHA to access the A, B, C, etc in this case). For example:
01 LBL “AA”
02 GTO “AA”
03 .END. (you don't enter this)

This program does nothing. It just runs until you press EXIT. By the way, to run it you can use R/S
when the calculator's “pointer” is over the program or you can use XEQ “label”. In the present case
you would use XEQ “AA”. The XEQ function calls a program (which must have a label) and runs it.
You can use the XEQ function both in programming mode and also out of programming mode.
When in programming mode the XEQ function is programmed, and when the program finds the XEQ
function, it changes to the given program which must finish with the RTN function. So LBL “label”
and RTN makes a kind of procedure and after the procedure is run it goes back to the previous
position. For example:
01 LBL S
02 +
03 RTN
04 LBL A
05 5
06 ENTER
07 7
08 XEQ S
09 1
10
11 .END.
This program called “A” creates a procedure “S” which does only a simple addition. In the line 07
the XEQ “S” makes the program to go to the procedure “S” and after that it goes back to the line
next line 07 which is of course the line 08. The calculation is 5+7-1 which gives 11.
You can use programmed GTO and XEQ even to call a label in another program space but this is
not exactly a good use.
6.3 The X?0 and X?Y sub-menus
Up to now we saw nothing about how we could do a IF instruction, like what we have in computer
programming languages like BASIC, Pascal or C. In fact there is no IF, THEN, ELSE, ELSEIF, etc in
the HP-42S programming language but there are 12 test functions which are:
X=0? X≠0? X<0? X>0? X≤0? X≥0?
and
X=Y? X≠Y? X<Y? X>Y? X≤Y? X≥Y?
The first group of functions involving the number 0 is accessed by the X?0 sub-menu which is
available in the second line of the PGN.FCN menu. The second group is accessed by the X?Y sub-
menu also in the second line of the PGN.FCN menu.
How do these functions work? Let's consider the first function “X=0?”. If the number in the x register
of the stack is zero then the program works normally and it goes to the next line after the “X=0?”
instruction. But if the condition is not true then the program jumps the next line and goes to the
second line after the instruction. Usually the line after the instruction has a GTO “label” command
and this makes the difference in the program flow.
All the other functions involving the 0 work in the same way. If the condition is true the program
works normally and if not the program jumps one line. The X?Y functions work in the same way but
now the condition is about the registers x and y of the stack and not only about register x.

Example: A kind of “timer”
01 LBL A
02 1
03 –
04 X=0?
05 STOP (Enter R/S)
06 GTO A
07 RTN
In this program you first enter a big integer number and then press XEQ “A”. The program will
subtract 1 from this number until it gets to zero. Of course the bigger the number the bigger the time
the program will spend. The Emu42 program (yes, I use it too) in my laptop using “Authentic
Calculator Speed” option takes about 37s for the number 1000. Without this option, or using Free42,
it is too much faster!
6.4 Real program examples
Here is one of my favorite programs. It just see if a number is prime. (With a small change this works
in the 33S too).
01 LBL “PRIME”
02 STO 00
03 2
04 STO 01
05 MOD (Rmdr in HP-33S)
06 X=0?
07 GTO F
08 3
09 STO 01
10 RCL 00
11 SQRT
12 STO 02
13 LBL B
14 RCL 00
15 RCL 01
16 MOD
17 X=0?
18 GTO F
19 2
20 STO + 01
21 RCL 02
22 RCL 01
23 X≤Y?
24 GTO B
25 RCL 00
26 STO 01
27 LBL F
28 RCL 01
29 RTN
Because the HP 42S programming format is a superset of that of the immensely popular HP 41C and
HP 41CX calculators, there is a huge library of programs that can be used directly by the HP42S or
readily adapted. A big collection can be found at http://www.hpmuseum.org/software/soft41.htm.

7 Using the Solver
Unfortunately the HP-42S does not have an equation editor like that of the 33S. To use the solver and
numeric integration we must enter the equation in a program which must have a global name.
Let's suppose we want to solve the equation x2– 5x + 4 = 0 . We are going to enter it in a program.
For example:
01 LBL “FX” (“FX” is the global name of the program)
02 MVAR “X” (You find this in Solver menu. I will explain this later)
03 RCL “X”
04 X↑2
05 5
06 RCL “X”
07 ×
08 –
09 4
10 +
11 END
Well, as you can see we don't enter the equation f(x)=0 but just the function f(x). The MVAR function
tells the calculator what variables must appear in the solver menu. We suppose all variables are in the
memory so we use the RCL function.
Now we leave the program mode and we go to the Solver menu. What should appear is
Select Solve Program
followed by a menu of available Solver programs. Then in our case we select FX and we give a start
value, for example 8 and we press X to enter this value. Again we press X to calculate the correct
value of x which gives us X=4.
But this equation does not have only one solution. X=1 is also a solution. To get it we can enter 2 for
example for the start value.
If you want to solve numerically many equations of the form ax2+ bx + c = 0 you can write a program
such as
01 LBL “FX”
02 MVAR “A”
03 MVAR “B”
04 MVAR “C”
05 MVAR “X”
06 RCL “X”
07 X↑2
08 RCL “A”
09 ×
10 RCL “B”
11 RCL “X”
12 ×
13 +
14 RCL “C'
15 +
16 END

When we leave the program mode and go to the Solver menu again we select FX program and what
we are going to see is
A B C X
Now just enter the values of A, B, C and a start value for X and we are done.
Some interesting things to say are:
1. We can't find complex solutions.
2. In this particular case we are not limited to the case a ≠0.
3. For polynomial equations it is more generally useful to write a more complex equation like
ax4+ bx3+ cx2+ dx + e = 0. We can set the coefficients of the higher order terms to zero if
we want to solve a lower order polynomial.
4. In any equation we are not limited to find one specific variable, say X, of course we can find
any missing variable.
5. We don't need to use the solver only for “complex” hard to find solution equations. We can
use the solver just to automate some easy calculations.
6. We ordinarily do not need to enter a starting guess for the variable we are solving for — just
press that menu button without keying a value first, and the Solver will solve for it.
Example: Consider the ideal gas equation PV=nRT where R is 8.3144472 J/mol . K. We can write a
program like
01 LBL “GAS”
02 MVAR “P”
03 MVAR “V”
04 MVAR “N”
05 MVAR “T”
06 RCL “P”
07 RCL “V”
08 ×
09 RCL “N”
10 RCL “T”
11 8.3144472
12 ×
13 ×
14
15 RTN
16 END
So we will have in the solver menu P V N and T. If we want to know how many moles of an ideal gas
is inside a container of 1L at a 1000Pa pressure and at 300K all we have to do is10000 P 0.001 V
300 T and we give a try for N, for example 1 N and then pressing N again we have 0.0040
moles.
8 Numeric Integration
Suppose we want to solve numerically a integral of the form
∫
b
adxxf )(
We write the function in the same way we did in the solver case.
Other manuals for HP-42S
1
This manual suits for next models
2
Table of contents
Other HP Calculator manuals
Popular Calculator manuals by other brands

Calculated Industries
Calculated Industries 9530 Pocket reference guide

Casio
Casio CFX-9850G PLUS Graph Guide

Texas Instruments
Texas Instruments El Dorado CS-FX300MS PLUS brochure

Sharp
Sharp EL-1750PII Operation manual

Casio
Casio DF-120FM user guide

Sharp
Sharp EL1197GIII - Heavy Duty Serial Printing... Operation manual