The Museum of HP Calculators

# HP 9820A

The HP 9820A (AKA the 9800 series model 20) was HP's third calculator. It made use of many of the same parts used to make the HP 9810. In fact, a number of PC boards were interchangeable between the two. There was, however, a major distinction: The HP 9820A was HP's first algebraic calculator. It was a fully algebraic calculator with parentheses, precedence and even implied multiplication. (e.g., 2AB meant 2 times A times B.) The calculator displayed the expression as entered on a single line alphanumeric LED display (which showed 16 characters and scrolled as needed) and evaluated it when the EXECUTE key was pressed.

The calculator compiled each algebraic expression into an RPN style sequence. Such compilation of algebraic expressions was a common practice on larger computers of the time, however the HP 9820A went a step further by also providing an uncompiler that converted the internal RPN sequence back to algebraic. This allowed only the RPN version to be stored. All of this was automatic. As the user finished each line, it was compiled, and the source was discarded. If the user wanted to edit a line, it was automatically uncompiled back into algebraic and displayed.

## Programming

The HP 9820A used a relatively simple high level programming language. Data was stored in registers labeled A,B,C,X,Y, and Z as well as the numbered registers R0-R172. (Or up to R428 with optional memory installed.) The R registers were indicated by pressing the R() key followed by the number. The R registers could be specified by constants or expressions and the expressions could refer to other registers providing indirect references. Some example R registers were: R1, R(1), R(10*2), R(R2+R3+A). (The first two referred to the same register.) As programs were entered, R registers were reallocated to program space from the top down. (Higher R numbers disappeared first.) There were also 16 flags. One of these flags indicated that an empty line had been entered into a program allowing users to terminate a data list with a "blank line".

ENT "INPUT A",A would display the string "INPUT A" and assign the value entered to A. PRT "A is ",A would print "A is" followed by A's value. GTO could go to line addresses or labels. (Labels were just quoted strings alone on a line.) IF statements could evaluate an expression and execute the next statement on the line if the expression was true. For example IF A>2C;GTO "SKIP" would goto the line labeled "SKIP" if A was greater than 2 times C. (The GTO instruction could also be used to go to line numbers or to go forward or back a specified number of lines.) Assignments were made to the right using the → ("GAZINTA" or "Goes into") operator. (e.g., 2+4A→C computed 2 + (4*A) and stored the result in C.)

The HP 9820A allowed editing lines as well as inserting and deleting them. When a line was to be edited, the calculator located the internal RPN sequence, uncompiled it into an algebraic expression in a temporary buffer and allowed the user to edit it. When the user was finished, the calculator compiled the resulting line and stored the result.

## Physical Description

The calculator looked much like the HP 9810 and included the same case and pass-through card reader. The notable differences were that the HP 9820 had a single-line 16-character LED display and had three undefined key blocks.

## An Expandable Calculator

Three ROM blocks could be plugged into slots behind the display. Each of these three slots was associated with a set of 10 unlabeled keys and ROM blocks came with metal overlays to label the corresponding sets of keys. Blocks provided additional mathematics functions and peripheral control functions. Another block allowed user-defined functions to be assigned to a block of keys and included a blank overlay. (See the price information below for a list of ROM blocks.) Like the HP 9810 the calculator had 4 slots in the rear for interface boards. I/O Expanders that added 9 slots were also available.

In addition to ROM blocks, additional RAM could be added for programs or data. This RAM could be either factory or field installed up to a maximum of 3432 bytes.

 Picture of HP 9820A Display (67K) Display (143K) Display (200K) Keyboard Display (140K) Display (290K) Display (400K) Printer Display (60K) Display (90K) ROM area (behind the display) Display (60K) Display (80K) HP 9862A plotter Display (45K) Display (120K) Display (170K) Close up on the HP 9862A plotter quick reference page. Most 98xx products had slide-out quick reference pages like this one. Display (55K) Display (100K) Display (175K) HP 9862A plotter module Opt 20/30. This could be plugged into the back of a 9820 or 9830 to interface to a plotter. Display (60K) Display (150K) HP 9860A optical card reader Display (60K) Display (120K) Display (240K) HP 9860A optical card reader (open) Display (50K) Display (100K) Display (180K) HP 9865 Tape Drive Display (60K) Display (140K) Display (240K)

Dimensions and Weight
Price: \$4975 (including 173 registers and built-in printer.) Options

• 429 Total data registers: \$1250
• Carrying Handle: \$25

Optional Plug-in Function Blocks

• Mathematics: \$485
• Printer Alpha: \$485
• User Definable: \$485
• Cassette: \$225
• Peripheral Control I: \$485
• Peripheral Control II: \$485

Many HP 9800 peripherals were also available.

Introduction: 1972