The Museum of HP Calculators

# HP 9100A/B

The HP 9100A was Hewlett-Packard's first calculator. In the mid to late 1960's electronic four function fixed point calculators were brand new and typically cost \$1000-\$2500. In 1968 HP introduced the HP 9100A featuring:

• Floating point math with a range of 10^-98 to 10^99
• Log (natural and base 10)
• Antilog (natural)
• Square root
• Trigonometric (including hyperbolic) functions and inverses
• Polar/rectangular conversion
• Misc. features like 1/x, PI etc.
• A logic system that could handle complex expressions (RPN)
• Programmability
• Options such as a printer and a plotter

The HP 9100, built with magnetic core memory, printed circuit board ROM, a CRT display (and not a single digital IC chip) provided industrial strength calculating in a machine that weighed 40 pounds and cost just under \$5000. Hewlett-Packard had entered the young electronic calculator market in a big way.

## The 3 level stack

When people first encounter HP's RPN calculators, they often wonder about the stack labels X, Y, Z, and T. The HP 9100 had a three level stack with registers X, Y, and Z. X was called the keyboard register since numbers were keyed into it. Y was called the accumulator since the results of arithmetic on numbers in X and Y ended up in this register. (The entire stack was displayed.) Finally Z was called the temporary register. When HP later used 4 level stacks, the temporary name stuck and the new level became T.

## 3 Level RPN

HP's first implementation of RPN was somewhat different than later versions. As mentioned above, the stack had only three levels and two operand functions left their result in the Y register.

Keying numbers into the stack did not cause the automatic stack lift that occurred on later calculators. For example, to calculate sqrt(25)+5, the user would press 2 5 [sqrt] [Enter] 5 +. The Enter wouldn't be needed on later RPN calculators. (Since calculator displayed the entire stack, the user always knew exactly where each number was and whether it needed to be copied up with Enter.)

When later calculators used a one line display, leaving results in an invisible stack register would have been a nuisance so RPN was altered. This later form of RPN popped the result down to the only visible register and then automatically pushed it back into Y when the user continued to enter data. When later HP models again used larger displays, the stack lift behavior was altered again.

Stack manipulation keys included an enter key (labeled only with an upward arrow), a drop key (labeled with a downward arrow) as well as ROLL keys for both directions and an X and Y exchange key. (X<->Y.)

There were 16 storage registers (32 on the HP-9100B) labeled 0-9 and a-f. There were also keys to store X or Y. Pressing a-f alone recalled that register into X and there was a key to exchange Y with any register. The HP-9100B had two pages of core with the registers 0-9 and a-f on each page. The pages were labeled + and - and + was assumed if neither was specified for a store or recall.

## Numeric Input

The HP 9100 and several other early machines (the HP 9810 & HP 9815) also had some differences in the display and entry of numbers. These calculators never showed more digits after the decimal than they were set for - even on number entry. If the user typed a number larger than the display could handle, the calculators automatically switched to scientific mode (as the user typed) and incremented the exponent for each additional digit typed.

## Guard Digits

The HP 9100 had two "guard digits" beyond the displayable 10 digit mantissa. This kept the normal floating point errors "out of sight". This feature took many years to appear on the handheld line. (There was some debate as to whether calculating with digits that the user couldn't see was really a good idea.)

## Physical Description

### Keyboard

The calculator's front was dominated by a large keyboard, which had excellent feel, and the keys were ivory, beige and dark brown. The keys were separated into to four groups: scientific functions, stack and memory functions, digits and basic math, and programming functions. To the right of the keys was a thumb wheel for selecting the number of digits displayed after the decimal point. An FMT (format) key was included and its action was dictated by the type of peripheral attached to the calculator. Above the keys were toggle switches for degrees/radians, floating/fixed point, on/off and program/run. The keyboard specification required that an entire cup of coffee could be poured over it without preventing it from working.

Above the keyboard to the right was the slot for the card reader/writer. Cards were shaped like credit cards but somewhat smaller and had two tracks which could store 196 steps each. The corner of a card could be cut off which write-protected it. A card was inserted all the way into the slot and it was ejected from the same slot during the read or write.

### CRT Display and Quick Reference

Above the keyboard to the left was the 3.25" x 4.75" green CRT display which showed the entire stack. Each register was labeled (x keyboard, y accumulator, z temporary) in glowing green on the HP 9100A or orange on the B. A light near the CRT lit when an illegal operation was performed. Below the keyboard on the front was a pull-out quick reference card.

### The Case: rebuilding the benchmark

The calculator was built like a tank from cast aluminum. During its 2 week shipment from eastern Canada to the western U.S. one of the museum's HP 9100s took such a beating that its original shipping box failed completely and the shipper repackaged it in another box (without the benefit of any cushioning material). The calculator came through with no damage at all.

The dimensions were based on Bill Hewlett's secretary return desk. This was an L-shaped desk with a large work area in front and a much smaller "return" to the right meant to hold a typewriter. Bill liked the desk and decided that a calculator should fit on the small typewriter area. The team worked very hard in an era without computer-aided design and digital ICs to pack it all in. The case was designed at four times life-size on Mylar because of its temperature/humidity stability. Measurements could be taken from this with a pin and a magnifier resulting in 1/1000" precision. When the first case was built, the engineers took it into Bill's office while he was on vacation and... it didn't fit! They needed to demo the product for Bill when he returned in a few days so they hired a local furniture maker to build a desk exactly like Bill's but with slightly larger dimensions! Bill didn't notice the switch. When the team walked in and set the calculator on the desk, he said: "You see! I knew you could do it!"

## Programming

The HP 9100 used line addressing with two digit hexadecimal line numbers. IF statements could check for less than, equal to or greater than and the lines after the if held a line number that the calculator jumped to if the condition was true. A single flag was available. The 9100B added a simplified 5 level subroutine capability..

### Overlapped Data and Program Memory

Program memory was shared between programs and data with each storage register yielding 14 program steps. This feature took many years to appear on the handheld calculators starting with the HP-38E. The calculators were unusual, however, in that register memory and program memory coexisted rather than being specifically allocated. This led to...

### Self Modifying Code

Due to the overlapping of program and data memory and the fact that opcodes (keycodes) and the BCD storage format were known to the user, it was possible to write self-modifying code by writing a number to a register and then jumping to an overlapping program address. In fact, on the A version, this method was actually documented for creating subroutines. (The B version added "normal" subroutines but retained the ability to write self-modifying code.)

The card reader stopped reading and set the program counter to zero when it encountered an END code. This helped to make it possible to run large programs by overwriting sections of programs while leaving the rest of the program intact.

While the calculator had no insert and delete commands, the manual included instructions for how to perform insertions and deletions with the card reader. (Essentially writing a section of a program starting at a certain location and reading it back at another.)

### Power Off With Program Running

Because even the status bits that indicated that the calculator was running a program were kept in core, it was possible to turn it off while running and have it resume where it left off when power was resumed. (In fact the manual indicated that if there was no display after the CRT warmed up, the user should press STOP.)

## Two Versions

The HP 9100A was introduced first with maximums of 16 storage registers and 196 program steps. The HP 9100B came later with maximums of 32 storage registers and 392 program steps. On both machines core was shared between registers and program steps. (The 9100B had two pages of core labeled + and -. Gotos were assumed to go to the current page unless a + or - preceded the address.) The HP 9100B also added subroutines, a dual program display, and a key to recall numbered registers into X.

## Even More Memory

If the HP 9100B's memory space wasn't large enough, HP later introduced the HP 9101A Extended Memory. This rack mountable box of core memory provided an additional 3472 program steps or 248 data registers. It also provided some new features including indirect addressing (with the X stack register providing the address), storage arithmetic and protected memory. This option could be added to either model.

## Quote from the HP Journal

"Fifty years ago this Marchant calculator was touted as 'The last Word in Calculators.' Indeed it was! It was the culmination of a history in which many agonies are recorded. For instance, in 1842 Babbage found his funds cut off during the development of a sophisticated 'Analytical Engine.' To raise more, he and his friend Lady Lovelace played the horses. They lost and the machine was never completed.

Then came Thomas Hill in 1857 who forgot that 'bodies set in motion tend to remain in motion.' His 'Arithmometer' was accurate to within a few spins of the digit wheels.

Some machines were too slow. An experienced accountant could add figures in his head faster than some of the machine proposed.

A former bank clerk, Wm. Seward Burroughs, made the first practical calculator in 1872. D. E. Felt, in 1879, began selling a machine he called the 'Comptometer'. A 'Multiplier' developed by E. D. Barbour in 1872 was based on the famous 'Napier's bones' principle.

Automatic, motor driven models began to appear in the 1920's when, in the U.S., Burroughs, Monroe, Marchant, and Friden became recognized standards. In addition to the four basic functions of add, subtract, multiply and divide, some of these machines include square root.

Electronic desktop calculators first made their appearance about 5 years ago. There are various sizes, capabilities and modes of operation. Although more expensive than the mechanical calculators, they are quiet, fast, versatile and virtually maintenance free.

Now we have a new more powerful desktop calculating device. Our Model 9100A is more a computer than a calculator. It may very well be the 'First Word' in a new breed of calculating machines."

## The Beginning of the HP-9100 Project

The HP-9100 was partially based on a fixed point prototype designed by Malcolm McMillan which could calculate any of the common transcendental functions in a few seconds and the "green machine": a floating point prototype designed by Tom Osborne. HP combined these ideas, plus elements from their early computers (HP-2114/2116) and displays, and added programmability, printing, etc. For more details see: How the Model 9100A Was Developed.

## The Beginning of the HP-35 Project

After the HP 9100 was demonstrated to Bill Hewlett he suggested that they should make one in one tenth the volume, ten times as fast and at one tenth the cost. He later reduced his suggested volume even further to "shirt pocket-sized". The price and volume goals were partly met by the HP-35 and more fully by the HP-65. However, it was the next generation AC-powered desktops that met the speed goal.

## Historical Note

Dr. Van Allen relied on an HP 9100A and its optional plotter to study the feasibility of using a gravity slingshot around Jupiter to allow Pioneer 11 to intercept Saturn. Pioneer 11 was retasked and arrived at Saturn before Voyager 1.
 Picture of an HP 9100A Small Medium Large Picture of an HP 9100B Small Medium Large Picture of an HP 9100B with printer attached Small Medium Large Picture of an HP 9100B with printer attached from the the front Small (56K) Medium Large Picture of an HP 9100B with printer attached Small (56K) Large Picture of an HP 9100B without printer Display (71K) Close up on the HP 9100A keyboard Small Large Close up on the HP 9100B keyboard Small Large Close up on the HP 9100B display Display Picture of an HP 9100B with reference card extended and printer attachment screws extended. Small Medium Large Close up on the card reader with card Display

Dimensions and Weight
Length: 19"
Width: 16"
Height: 8.25"

Weight: 40lbs

## Pricing

The HP 9100A was introduced at \$4900. The HP 9100B was later introduced at the same price and the HP 9100A was reduced to \$4400. HP catalogs also included rental and lease prices for both machines.

## Options

### Printer

The HP 9120A electrosensitive printer (picture above) mounted to the top of the calculator and could be controlled by keystroke or program. It printed any combination of the X, Y, and Z registers or programs at 180 lines/minute. (Lines were 15 characters long.) It sold for \$975.

### Plotter

The HP 9125A calculator plotter plotted points specified by the calculator's X and Y registers when the FMT instruction was executed. It plotted in a 10" by 15" area and cost \$2475. (It came with a magnetic card which contained a diagnostic routine for the plotter.)

### Digitizer

The HP 9107A digitizer allowed graphic material to be translated into coordinates and entered into the calculator. Points could be entered in a continuous mode or a point at a time when a button was pressed. (Price unknown.)

The HP 9160A read mark-sense cards which could marked by a soft lead pencil or by punched holes. Cards could contain data or programs. The unit cost \$490. HP sold cards in data, program, surveying, and quiz formats.

### Large Display

The HP 9150A provided a 19" display of the calculator's stack. This was intended for instructional use. (Price unknown.)

### 9100A/B Input/Output Manual

This optional manual described the calculator's output and required input signals to allow customers to design their own interfaces.

### More Memory

The HP 9101A added 3472 lines of program space or 248 data registers. It sold for \$3690 and is described in the text above.

### Typewriter Coupler

The HP 9106A allowed the calculator to be connected to an IBM typewriter. (Price unknown.)

### Many Peripherals At Once

The HP 9102A Buffer Box provided isolation to allow the HP 9100 to be connected to several (or even all) of the above peripherals at the same time. It sold for \$280.

Introduction: 1968