+Home     Museum     Wanted     Specs     Previous     Next  

Hewlett Packard 9825A Programmable Calculator

Updated 12/18/2021

The Hewlett Packard 9825A was HP's high-technology replacement for the earlier 9820A. The 9825 carried on and improved on many of the features and ideas that were introduced with the 9820. In many ways, the 9825 is more a desktop computer than a calculator. In fact, a document published in February of 1979 (over two years after the 9825A was introduced) was entitled "9825A/S Desktop Computer Specifications", clearly stated that HP considered this machine to be a computer rather than just a calculator.

Interior of HP 9825A with Top Cover and Keyboard Assembly Removed

Among its computer-like features, the 9825 is programmable via a high-level language rather than the learn mode programming methods used on earlier calculators. HPL, a language similar to the popular BASIC language (HPL was often said to be "BASIC without the vowels"), is the native language used to program the 9825. Another very computer-like attribute of the 9825 is the ability to easily add a pretty wide range peripheral devices to the machine; including a floppy-disc drive subsystem that featured a filesystem with named files, as well as printers, plotters, and the ability to interface just about anything else via various interface modules such as 16-bit parallel interfaces, and a Serial I/O interface.

The Back Side of the Keyboard Assembly

The 9825 also provides a built-in 16 column thermal printer, a magnetic cartridge tape drive, a built-in 32 column LED dot matrix alphanumeric display, and a full QWERTY layout keyboard. All of these characteristics combine to create a machine that truly blurs the line between a calculator and a computer. Remember, though, that this machine was introduced during the time when microcomputers were just becoming available. While the 9825 was significantly more capable than any of the early microcomputer systems such as the MITS Altair, Processor Technology SOL, Apple II, and Commodore PET, it was considerably more expensive, at a base price of nearly $6,000, putting it out of reach of most early computer hobbyists. However, compared to the cost of an equivalent minicomputer system, a maxed-out 9825 system was a serious bargain. While perhaps not as fast, nor having quite the level of I/O expansion of a minicomputer system, the machine had tremendous capability for a device that sat on a desktop versus consuming the good part of a 6-foot tall rack that a minicomputer would come in.

The 16-Bit Hybrid CPU Module

Even though early single-chip microprocessors like the Intel 4004 and 8008 were available in 1976 when the 9825A was introduced, Hewlett Packard used their own superior technology to provide calculating equipment that was "Best of Show" when it came down to performance, reliability, and capability. The 9825 uses a multi-chip LSI hybrid module for its Central Processing Unit(CPU). This hybrid module consists of three main LSI chips (Math Unit, I/O Processor, and Main Processor Control) combined on a ceramic substrate with gold interconnect traces along with a number of smaller support chips for interfacing the CPU to the outside world. The whole assembly is packaged together with an integrated heat sink to dissipate the heat from the NMOS-based logic chips inside. This combination of chips works together to form a full 16-bit CPU, with an instruction set and register organization similar to that of HP's first minicomputer, the , which was the first 16-bit commercial minicomputer on the market when it was introduced in 1966. HP also continued its tradition of innovation by building the 9825 in a truly modular fashion, for ease of service, and also to make the machine easily field-expandable. Most of the main circuit boards in the machine are interconnected by a ribbon cable backplane. The boards are mounted on a clever hinged arrangement, that, by virtue of the flexible ribbon cable backplane, allows the boards to be swung up and away from each other while still allowing the machine to operate. This made service and troubleshooting much easier, and did not require things like extender boards as were required on traditional backplane-based systems. The main Read-Only-Memory(ROM) code that makes up the 9825A's operating system is located in a plug-in module, allowing easy field-updates should they be necessary. This plug-in module also allowed for different operating systems to be run on the 9825A by simply swapping the module. A different ROM module was available for the HP 9825A that provided a BASIC (Beginners All-Purpose Symbolic Instruction CCode)-language operating system instead of the HPL language OS that was the default operating system for the 9825A, although finding this module is next to impossible today, as HP management ended up mandating that HPL be the officially supported language for the 9825.

The 32-Character 5X7 Dot Matrix Display

As a calculator, the 9825 operates in a similar manner to its predecessor, the 9820. The machine operates in full algebraic mode, meaning that math problems are typed into the machine as pretty much as they would be written on paper. The keyboard includes a numeric keypad area with dedicated keys for the four basic math functions, along with parenthesis keys. The math expression evaluator follows the standard mathematical order of precedence, with division and multiplication performed before addition and subtraction, with parentheses used to override the precedence rules. Parentheses can be nested to nearly any level, though any expression must fall within the 80-character line length limit that the machine imposes. The 9825 has a comprehensive set of mathematical functions, most of which are accessed by including a keyword representing the function with the argument to the function following the keyword, enclosed by parentheses. For example, to calculate the sine of 45 degrees, the user would type in SIN(45) and press the [EXECUTE] key to have the result calculated and displayed. The printer can be used to keep a printed log of calculations when enabled via a keyboard press-on/press-off key. The machine calculates results to between 13 and 14 digits of accuracy. The reason that the accuracy varies is that the 9825 represents numbers internally as binary floating-point numbers. This representation of numbers is much more like the way that computers handle numbers than calculators. Calculators generally represent numbers in BCD(Binary Coded Decimal), which is a way of coercing binary numbers to behave more like decimal numbers. BCD has limitations, though. BCD representation is more suited to the hard-wired electronics of early calculators, being easier to translate from internal form to a displayed human-readable number, and also requires less complex logic to manipulate the numbers internally. Being as the core of the 9825 is a true general purpose computer with a full 16-bit word length, the floating-point binary representation is much easier to represent and process, however, the translation between binary floating point and a human-readable number results in a dynamic range that doesn't relate directly to a fixed number of digits of accuracy. In BCD-based calculators, the numbers involved in a problem can determine the time it takes to solve the problem. In many of my other pages, you'll note that I mention the time it takes to solve the all-nines divided by one problem. The reason this test is used is that on a BCD-based calculator, such a problem gives a notion of the speed of the machine. BCD calculators perform math similar to the way we do on paper, just faster. As with humans performing math, bigger numbers in a problem take longer for us to figure out. In the all-nines benchmark, the result is obtained on a BCD calculator by repeatedly subtracting the divisor from each digit position (starting at the most significant digit) until an overdraft occurs, keeping track of how many subtractions occur, until all digits of the divisor have been processed. The larger the digits of the dividend, the more subtractions are required, and the longer the calculation takes. In the case of floating-point binary math, the numbers are represented in a much more computer-friendly form, and most basic math operations take a relatively consistent amount of time no matter the magnitude of the operands.

Profile view of HP9825A

When it comes to programming, the 9825 is significantly easier to program than earlier HP programmables. With the HPL programming language, it is possible to write much more complex programs without getting bogged down in the details of RPN stack management and memory register allocation, and keeping track program step number branches, just a few of the tedious things that programmers of earlier calculators had to deal with. On the 9825, variables are stated by name (e.g.: A through Z), expressions are evaluated in algebraic form, branches are referenced by name, and memory is allocated dynamically and transparently. Entering a program is simply a matter of typing in the program statements followed by the [STORE] key. Once a statement is entered and the [STORE] key is pressed, the syntax of the statement is checked, and if an error found the machines beeper chirps and an error code is displayed. If the line of code passes muster, the statement is translated into an internal representation, and is then stored in program memory. The 9825 provides a nice set of functions for editing programs, including listing out the program on the printer, scrolling through a program on the display, as well as insert and delete line functions and character editing within a given statement.

An example of a ROM Pack for the 9825A

The base 9825A provides basic scientific calculator functions along with the ability to run HPL programs. With the addition of ROM(Read Only Memory) packs that plug into four slots across the front edge of the machine beneath the keyboard, the capabilities of the machine can be extended. These ROM modules extend the language of the 9825 to provide access to additional capabilities, as well as providing code to talk to external device interfaces. Examples of the additional functionality that can be added via the ROM cartridges are array and matrix manipulation operations, character string functions, functions for accessing data from a floppy-disc subsystem, and functions for driving external output devices such as plotters and printers.

An example of an Interface Pack for the 9825A (16-bit Parallel I/O)

Three plug-in slots on the back panel of the machine provide space for plugging in interface packs that provide the electronic interface to external devices such as printers/plotters, floppy disc subsystem, and general purpose I/O ports. HP provided a number of interface packs which allowed the 9825 to be connected up to just about any type of digital control system. With such interfaces, the 9825 could be used as a process control system, a data acquisition and processing system, or just about anything else that needed an intelligent programmable control system.

The exhibited 9825A is equipped with Option 002, which bumps the base RAM from 6,844 bytes to 23,288 bytes of storage for program and data. Optional ROM packs include the String/Advanced Programming ROM Pack, which adds character string handling and other advanced functions to the HPL language; the Matrix ROM pack, which adds array and matrix manipulation functions; and a Plotter-I/O ROM Pack, which provides functions which allow plotters and other types of I/O devices to be connected to the 9825. This exhibited 9825A hit the end of the production line and was ready to ship out on 10/28/1979.

Over time, there were a number of different versions of the 9825 that were introduced. About two years after the 9825A was announced, the 9825B was introduced. There had long been complaints from customers about the so-called "cricket" keyboard of the 9825A, which proved to be awful for touch-typists to type on and also had reliability issues where the frequently used keys would get mushy feeling. The exhibited machine has this problem with the [EXECUTE] key, one of the more frequently-used keys on the keyboard. Thankfully, the 9825B replaced the low-cost cricket keyboard with full-travel key-switches made by respected keyboard manufacturer Cherry. This change made the 9825B a pleasure to type on, and also made the keyboard last virtually forever. Along with changing out the keyboard, the 9825B also dispensed with the slot on the side of the machine for plugging in the Operating System ROM. Instead, the ROM was contained on one of the boards in the backplane. Another issue that users had with the 9825A/B machines was that in environments where the 9825 was serving as the controller for complex process control or automated test environments, they would exhaust the machines' maximum memory capacity of 28K bytes(or 32K bytes if you removed all of the extension ROMs from the machine). In response to this, HP's engineers came up with a rather complex add-on board that would allow the user-accessible RAM capacity to be doubled to 64K, without sacrificing any of the ROM expansion packs. This version of the 9825 was designated the 9825T. It was possible to field upgrade a 9825B to a 9825T by adding the memory controller board (which also contained the additional RAM) and updated ROMs to plug into the main RAM/ROM board to allow the OS to be able to address the additional RAM.

For much more detailed and comprehensive information on the HP9825A and other older HP calculators, Dave Hicks' >Museum of HP Calculators website provides a wealth of detailed and interesting information.

Another great site to visit to learn of the history and development of the 9825 is Steve Liebson's HP 9835 website that goes into great detail of the development of the 9825, with much of the information gleaned from folks that were involved in the creation of this amazing computing machine.


Text and images Copyright ©1997-2023, Rick Bensene.