The HP-41 series are programmable, expandable, handheld RPN calculators made by Hewlett-Packard from 1979 to 1989. The original model, HP-41C, was the first of its kind to offer alphanumeric display capabilities. Later came the HP-41CV and HP-41CX, offering more memory and functionality.
Table of contents
The alphanumeric "revolution"
The alphanumeric LCD screen of the HP-41C revolutionized the way you could use a calculator, providing user friendliness (for its time) and expandability (keyboard-unassigned functions could be spelled out alphabetically). By using an alphanumeric display, the calculator could tell the user what was going on: it could display meaningful error messages ("ZERO DIVIDE") instead of simply a blinking zero; it could also verbally prompt the user for arguments ("ENTER RADIUS") instead of just displaying a question mark.
Earlier calculators needed a key, or key combination, for every available function. The HP-67 had three shift keys; the competing Texas Instruments calculators had two (2nd and INV) and over 50 keys. The HP-41C had a relatively small keyboard, and only one shift key, but provided hundreds of functions. Every function that was not assigned to a key could be invoked through the XEQ key (pronounced EXEQTE — "execute") and spelled out in full, e.g. XEQ FACT for the factorial function.
The calculator had a special user mode where the user could assign any function to any key if the assignations provided by HP didn't suit him¹. For this mode, the HP-41C came with blank keyboard templates; i.e. plastic covers with holes for the keys, so the user could write his own key assignments near the affected key(s). Hewlett-Packard even sold a version of the calculator where almost no key had function name printed on it, meant for users who would be using the HP-41C for custom calculations only (thus not needing the standard key layout at all).
Alphanumeric display also greatly eased editing programs, as functions were spelled out in full. Numeric-only calculators displayed programming steps as a list of numbers, each number mapped to a key on the keyboard. Encoding functions to the corresponding numeric codes, and vice versa, was left to the user, having to look up the function–code combinations in a reference guide. In addition to this, the user had to mentally keep function codes separate from numeric constants in the program listing.
The HP-41C displayed each character in a block consisting of 14 segments that could be turned on or off; a so-called fourteen segment display (similar to the much more common seven segment displays, which can be used to display digits only). The HP-41C used an LCD display instead of the ubiquitous LED displays of the era, to reduce power consumption.
While this allowed the display of uppercase letters, digits, and a few punctuation characters, some designs needed to be twisted arbitrarily (e.g. to distinguish S from 5) and lowercase letters were unreadable (HP only provided display of lowercase letters a through e). HP's competitor Sharp, when introducing the PC-1211, used a dot matrix of 5×7 dots and displayed the characters in principle as we see them today on computer screens (and, in fact, many LCD screens on various embedded systems); this was later used by HP with the HP-71 handheld computer.
See main article HP-41 Extension Module
The functions of the calculator could be expanded by adding modules at the back of the machine. Four slots were available to add more memory, pre-programmed solution packs containing programs covering engineering, surveying, physics, math, finance, games, etc. Hardware extensions included a thermal printer, a magnetic card reader (HP-67 compatible via converter software), and a barcode "wand" (reader).
Another module, known as the Interface Loop allowed for connection of more peripherals: larger printers, microcassette tape recorders, 3½" floppy disk drives, RS-232 communication interfaces, video display interfaces, etc. The Interface Loop could also be used with the HP-71 computer.
The HP-41CV and CX
Many users had used all four ports for memory expansion, leaving no room for other modules. HP designed the Quad Memory Module with four times the amount of memory, providing the maximum available memory and leaving three empty ports available. The HP-41CV (V being the roman numeral for 5) included this memory module on the main board, thus providing five times the memory of the HP-41C, and four available slots.
The internal architecture prohibited the addition of more memory, so HP designed an extended memory module that could be seen as secondary storage. You could not access the data directly, but you could transfer it to and from main memory. To the calculator (and the user), data located in the extended memory looked like files on a modern hard disk do for a PC (user).
The final HP-41 model, the HP-41CX, including extended memory, a built-in time module, and extended functions, was released in 1983.
The HP-41C community and Synthetic programming
A large user's community was built around the HP-41C. Enthusiasts around the world found new ways of programming, created their own expansion modules, and sped up the clock (see overclocking).
One of the discoveries of the community was that is was possible to exploit a bug in the program editor to assign strange functions to keys. The most important function was known as the byte jumper, a way to step partially through programming instructions and edit them in ways that were not otherwise allowed. The use of the resulting instructions were called synthetic programming.
Through synthetic instructions, a user could access memory reserved for the operating system and do very strange things, including completely locking the machine. Hewlett-Packard did not officially support synthetic programming, but neither did it do anything to prevent it, and eventually even provided internal documentation to the user's groups.
- At the time, the overwhelming majority of technical calculator users in general, and by extension, HP-41 users in particular, consisted of male engineers, scientists, and surveyors.
- W.A. Mier-Jedrejowicz (1986). Extend Your HP-41. Synthetix. ISBN 0951073303.
- hp41.org – A website (and domain) dedicated to the HP-41