Hewlett-Packard HP-42S

Datasheet legend
Ab/c: Fractions calculation
AC: Alternating current
BaseN: Number base calculations
Card: Magnetic card storage
Cmem: Continuous memory
Cond: Conditional execution
Const: Scientific constants
Cplx: Complex number arithmetic
DC: Direct current
Eqlib: Equation library
Exp: Exponential/logarithmic functions
Fin: Financial functions
Grph: Graphing capability
Hyp: Hyperbolic functions
Ind: Indirect addressing
Intg: Numerical integration
Jump: Unconditional jump (GOTO)
Lbl: Program labels
LCD: Liquid Crystal Display
LED: Light-Emitting Diode
Li-ion: Lithium-ion rechargeable battery
Lreg: Linear regression (2-variable statistics)
mA: Milliamperes of current
Mtrx: Matrix support
NiCd: Nickel-Cadmium rechargeable battery
NiMH: Nickel-metal-hydrite rechargeable battery
Prnt: Printer
RTC: Real-time clock
Sdev: Standard deviation (1-variable statistics)
Solv: Equation solver
Subr: Subroutine call capability
Symb: Symbolic computing
Tape: Magnetic tape storage
Trig: Trigonometric functions
Units: Unit conversions
VAC: Volts AC
VDC: Volts DC
Years of production: 1988-1995 Display type: Graphical display  
New price: USD 120.00   Display color: Black  
    Display technology: Liquid crystal display 
Size: 6"×3"×½" Display size: 131×16 pixels
Weight: 6 oz    
    Entry method: Reverse Polish Notation 
Batteries: 3×"LR44" button cell Advanced functions: Trig Exp Hyp Lreg Grph Solv Intg Cplx Fin Cmem Snd Mtrx BaseN Units 
External power:   Memory functions: +/-/×/÷ 
I/O: IR output     
    Programming model: Fully-merged keystroke entry 
Precision: 12 digits Program functions: Jump Cond Subr Lbl Ind  
Memories: 7(0) kilobytes Program display: Mnemonic display  
Program memory: 7 kilobytes Program editing: Auto-insert program entry  
Chipset: Saturn   Forensic result: 8.99999864267  

hp42s.jpg (22432 bytes)The HP-42S is considered by many one of the best calculators made by Hewlett-Packard. The trouble is, the HP-42S is no longer manufactured. Given the price used HP-42S machines fetch when sold privately, it's difficult to see why.

The HP-42S was perhaps the first Hewlett-Packard calculator that provided integrated support for different data types. The stack, as well as storage registers, could store real and complex variables, matrices, and text strings. Support was nearly complete; for instance, logarithmic, exponential, and trigonometric functions were all capable of operating on a complex argument, or yielding a complex result.

The HP-42S, meant as a successor to the highly successful HP-41 line of calculators, was highly compatible with HP-41 programs. The machine lacked the HP-41's expansion ports, but it had more memory and an infrared port for printing.

The HP-42S (and, to a lesser extent, the HP-41) are also examples of calculators with a keystroke programming "language" that's beginning to closely resemble "real" programming languages. Indeed, when you use an HP-42S and an HP-48SX side by side, you can see how the line is becoming blurred. Often, the same keystrokes produce a "keystroke macro" on the HP-42S and a highly sophisticated object-oriented program on the HP-48SX.

Finding a Gamma function implementation among the 600-odd functions of this calculator is not exactly a great surprise. As it happens, this built-in Gamma function evaluates only for real arguments, giving me the opportunity to create another example: a Gamma function program that can be used with complex arguments as well:

00 { 244-Byte Prgm }
01 LBL "GAMMA"
02 0
03 ENTER
04 0
05 COMPLEX
06 +
07 1
08 X<>Y
09 LBL 02
10 ENTER
11 COMPLEX
12 R↓
13 X>0?
14 GTO 01
15 R↓
16 ENTER
17 R↓
18 ×
19 R↑
20 1
21 +
22 GTO 02
23 LBL 01
24 R↓
25 STO "X"
26 X<>Y
27 STO "G"
28 76.1800917295
29 RCL "X"
30 1
31 +
32 ÷
33 86.5053203294
34 RCL "X"
35 2
36 +
37 ÷
38 -
39 24.0140982408
40 RCL "X"
41 3
42 +
43 ÷
44 +
45 1.23173957245
46 RCL "X"
47 4
48 +
49 ÷
50 -
51 1.20865097387E-3
52 RCL "X"
53 5
54 +
55 ÷
56 +
57 5.39523938495E-6
58 RCL "X"
59 6
60 +
61 ÷
62 -
63 1.00000000019
64 +
65 PI
66 2
67 ×
68 SQRT
69 ×
70 RCL "X"
71 ÷
72 LN
73 RCL "X"
74 5.5
75 +
76 LN
77 RCL "X"
78 0.5
79 +
80 ×
81 +
82 RCL "X"
83 -
84 5.5
85 -
86 E^x
87 RCL "G"
88 ÷
89 RTN
90 .END.