---
title: HP 28S
description: HP's clamshell RPL calculator of 1988 to 1992 with symbolic algebra, its history, what makes it special and how saturnus runs it.
section: models
model: 28s
---

The HP 28S is a scientific calculator that Hewlett-Packard sold from 1988 to 1992. It does symbolic algebra and calculus, and it is programmed in RPL, the language HP went on to use in the HP 48. It replaced the HP 28C of 1987 with 16 times the memory, and its case opens like a book, with a letter keyboard on the left half.

![HP 28S](../img/28s-640.webp)
The 28S's display half as saturnus draws it.

## At a glance

| | |
|---|---|
| Released | 4 January 1988, at $235 |
| Discontinued | April 1992, then at $195 |
| Code name | Orlando |
| Processor | Two of HP's Lewis chips with a Saturn core, about 1 MHz; one chip's CPU is not used |
| Memory | 32 KB RAM, 128 KB ROM |
| Display | 137 × 32 pixels, four lines of 23 characters |
| Keyboard | A letter keyboard on the left half, the calculator keys on the right |
| Input and output | Infrared output to HP's 82240A printer, beeper |
| Power | Three N cells |
| Language | RPL |
| ROM revisions | 2BB, the only one |

## History

### The 28C

In January 1987 HP introduced the HP 28C. The Hewlett-Packard Journal of August 1987 opens its article on it with the claim that it "provides the most extensive mathematical capabilities ever available in a handheld calculator": symbolic algebra and calculus, a numeric solver, vectors and matrices, plots, unit conversions and binary arithmetic. Wikipedia calls it the first handheld calculator able to solve equations symbolically.

The 28C shares its case with the HP 18C Business Consultant of 1986: two halves that fold like a book, joined by a hinge that carries the connections between the two keyboards. The 28C had 2 KB of RAM, about 1,600 bytes of them for the user.

### The 28S

A year later, on 4 January 1988, the 28S replaced it at the same price, $235. It has 32 KB of RAM, and HP added directories to organise variables, a custom menu of your own commands, and commands to read and write the display as a graphics string. Finseth's data lists smaller changes: a standard memory chip, a "Power Lost" message, foam in the battery compartment, a non-glare display glass and improved printing.

HP launched the 28S together with three other calculators: the [17B](17b.md), the 19B and the [27S](27s.md). All four have HP Solve and print by infrared, as an electronics magazine reported in March 1988.

The 28S was also the end of a naming habit. From the HP-25C of 1976, a "C" in the model name had stood for continuous memory. By 1988 every serious calculator kept its memory, and with the 28S, 17B, 19B and 27S HP switched to a letter for the market instead: S for scientific, B for business.

Finseth's data notes a special edition of the 28S made for the 100th anniversary of the American Mathematical Society.

### RPL

Behind the 28C is a new operating system. Charles M. Patton's article in the same HP Journal issue says HP started designing it in 1984, for future calculators and handheld computers. The team looked at BASIC, Forth and Lisp, and took features from Forth and Lisp. The article calls the result "ROM-based procedural language, or RPL".

Bill Wickes of HP wrote in 1991 that this was not the real name. The team had called it RPL for Reverse Polish Lisp, a play on RPN and a nod to Forth and Lisp. At the time of the journal article there was an attempt to find "a less whimsical name", and "ROM-based procedural language" kept the initials. The HP 18C already used RPL inside, but the 28C was the first calculator to let its users program in it.

### SYSEVAL

The 28C's manual documents one dangerous command, `SYSEVAL`: it runs the system object at an address, and the manual warns that general use "can corrupt memory or cause memory loss". The manual's only example shows the calculator's version. The Museum of HP Calculators notes that not every owner heeded the warning: System RPL programming by users was born.

### Problems and successors

The 28S has no connection to a computer: programs and data go in through the keyboard and cannot be backed up. Its battery cover is weak as well. Wikipedia describes how the springs of the three batteries press the lid against thin notches in the case, which crack, so many surviving calculators hold the cover with tape or a rubber band.

The [HP 48 series](48sx.md), which started with the 48SX in 1990, replaced it and grew out of its RPL and menus. The 28S was discontinued in April 1992.

## What makes it special

### Symbolic algebra

The 28S works with expressions as well as numbers. You can expand, collect and rearrange terms, solve an equation for a variable symbolically, and take derivatives and integrals. A name with no value stays a name, so an expression can wait for its numbers. These results come from saturnus's 28S:

```
'(X+1)*(X+2)' EXPAN    gives '(X+1)*X+(X+1)*2'
'X+2*X+3-1' COLCT      gives '2+3*X'
'2*X+3=7' 'X' ISOL     gives 2
```

### The stack and objects

The HP Journal article describes what changed from earlier RPN calculators. The stack is no longer four registers: it grows as you put objects on it, limited only by memory. Each level holds one object: a real or complex number, an array, a string, a list, a binary integer, a name, a program or an algebraic expression. Variables replace the numbered registers, and a variable holding a program runs it when you type its name, like a built-in command.

### HP Solve

HP Solve lets you type an equation and solve it for any of its variables: the menu keys show the variables, a key stores a value, and the shifted key solves for that variable. The solver first tries algebra, and if that fails, searches numerically.

The idea came from Chris Bunsen, an HP engineer. In a sidebar in the HP Journal he tells how he worked it out one evening after midnight, to escape the boredom of debugging a software package for the HP-71B. The HP-12C's financial keys showed him the way: one key per variable to store or solve. A row of menu keys under a display could do the same for any equation.

### The rest

- Plotting of expressions, equations and statistical data on the 137 × 32 display.
- Unit conversion between 120 built-in units and your own.
- Statistics, probability, and binary numbers of 1 to 64 bits with bit operations.
- A catalog of all commands that shows the arguments each one takes.

## In saturnus

saturnus runs the 28S with ROM revision 2BB:

- It draws the calculator open, the letter half beside the display half; on a phone or a tall window the halves stack. The ROM check of the 28S's self-test passes.
- Letters you type on your computer's keyboard go to the 28S's letter keys.
- Search runs a command by typing it on the 28S's keys.
- The CPU runs at 1 MHz, the figure the sources give for its chips. No timing of a real 28S has been measured to check it against, so run times are an estimate. 2×, 4× and Max speed it up.
- Save and load states work as on every model.

What it does not do: the memory view and the RPL editor are for the HP 48 and 49, because saturnus cannot read the 28S's memory. The 28S has no serial port, so Files has nothing for it, and the infrared printer output is not emulated. It has no clock.

The [command reference](commands.md#28s) lists the 28S's 260 commands with their stack effects, and examples for 230 of them, run in saturnus.

[Open the HP 28S in saturnus](../app/#/calculator/28s)

## Sources

- [HP 28S Owner's Manual](https://literature.hpcalc.org/community/hp28s-om-en.pdf): the features (symbolic algebra, calculus, HP Solve, plotting, the 120 units, statistics, binary numbers), 32 KB of user memory, three N cells, the printer port.
- [Hewlett-Packard Journal, August 1987](https://www.hparchive.com/Journals/HPJ-1987-08.pdf): William C. Wickes, "An Evolutionary RPN Calculator for Technical Professionals" (the 28C's features, the stack, objects and variables, the display, the 128 KB ROM, the 82240A printer); Charles M. Patton, "Symbolic Computation for Handheld Calculators" (RPL's design from 1984, Forth and Lisp, the name); Chris Bunsen's sidebar on the Solve interface; the shared case of the 18C and 28C.
- [Finseth's HP calculator data: HP 28S](https://www.finseth.com/hpdata/hp28s.php): dates and prices, code name, RAM and ROM, the two Lewis chips, the changes from the 28C, ROM revision 2BB, the special edition.
- [Finseth's HP calculator data: HP 28C](https://www.finseth.com/hpdata/hp28c.php): the 28C's date, price, memory and display.
- [Finseth's HP calculator data: HP 18C](https://www.finseth.com/hpdata/hp18c.php): the 18C's year.
- [Museum of HP Calculators: HP-28C/S](https://www.hpmuseum.org/hp28c.htm): the first full RPL calculator, the 18C's internal RPL, the catalog, `SYSEVAL`, the 28S's additions, years.
- [Wikipedia: HP-28 series](https://en.wikipedia.org/wiki/HP-28_series): the first symbolic calculator, the "C" and "S" suffixes, no computer interface, the battery cover, the HP 48 series as its successor.
- [William C. Wickes, what RPL stands for (1991)](https://www.hpcalc.org/hp48/docs/programming/rpl.txt): Reverse Polish Lisp and the "less whimsical name".
- [Electronics & Technology Today, March 1988](https://archive.org/details/ElectronicsTechnologyToday1988-03): the four calculators launched together, HP Solve and infrared printing.
