Hewlett Packard 9815A Programmable Calculator
The HP 9815A is a fine example of late 1970's programmable calculator technology. This particular machine was manufactured in early 1978, likely making it one of the later 9815's produced, as the machine was introduced in 1976. The 9815A has a single-line Burroughs Panaplex II display panel which has a total of 16 digit positions. Each display position consits of a standard seven segment digit, a decimal point (which is centered in the digit position), and a comma (which is used for grouping digits in threes for easier reading). The display is a bit unusual in that an entire digit position is used to display a decimal point.
The 9815A also has a 16-character per line dot matrix thermal printer, which is capable of printing alphanumerics via program control or for indicating error conditions with human readable messages. The printer is extremely noisy due to a 'solenoid-activated ratchet' paper advance mechanism, and also rather slow due to the fact that the thermal printhead has only one 'line' of dots, so each character is formed row at a time rather than a full character at a time like the thermal printer in the Tektronix 31. The calculator also has a magnetic cartridge tape drive for program and data storage.
Interior View of HP 9815A with Keyboard Assembly Removed
The 9815A is the third generation of HP Reverse Polish Notation logic Desktop Programmable calculators, with the all-discrete component-based HP 9100A/9100B calculators from the late '60's making up the first generation, and the early IC-based 9810 and other machines in the 9800-series making up the second generaton. A follow-on machine to the 9815A was introduced later, which expanded the amount of available program/data memory. This machine was called the 9815S.
The 'Back Side' of the Keyboard Module, where most of the logic of the 9815A is located
The 9815A has a comprehensive set of math functions, ranging from basic math, statistical, and scientific functions. Trigonometric functions (with arguments in degrees, radians, or grads) are included, with the unexpected omission of hyperbolic functions (however, HP had a large library of programs which were distributed on magtape cartridges which would allow the machine to perform just about any function), along with base 10 and natural logarithms, square root, yx, polar/rectangular conversions, degrees/minutes/seconds conversions, 1/x, mean(average) and standard deviation, and integer extraction. The machine operates in any of three display modes, with fixed point decimal (with automatic shift to scientific display when the result of a calculation is beyond display in fixed decimal form), scientific (exponential) notation, and engineering notation (exponential with all exponents forced to be even multiples of three).
A closeup of the Burroughs Panaplex Display on the 9815A in operation
The 9815A also benefits from a very rich set of programming functionality, with multi-level nestable subroutines, nestable "FOR/NEXT" looping, branching by address or label, and a comprehensive set of conditionals. Program editing on the 9815A is simplified over earlier HP programmables, as the machine automatically keeps track of branch instructions and modifies addresses as necessary when program steps were inserted or deleted. The memory in the 9815A is split between memory registers and program step storage, with the division between the two settable by an obscure keypress sequence which is documented under the printer paper cover, along with a number of other non-intuitive key sequences. Base memory allows up to 472 program steps, with an optional expansion (field-service installable) module which brought total storage to 2008 steps. Available program step memory is decreased by the number of memory registers defined, with the power-up default being 20 memory locations, which reduces the total number of program steps on a memory-expanded 9815A to 1928 steps. The 9815A combines multi-key program sequences into a single instruction in memory, so programs on the 9815 consume less space than on earlier machines, which required a separate memory location for each keypress.
Close-up View of Burroughs Panaplex II Display Module used in the 9815A
Unlike earlier HP calculators that used custom-designed HP integrated circuits, the 9815 is built from mostly off-the-shelf technology. The core CPU is a Motorola 6800 microprocessor, with 14K bytes of ROM providing the firmware that directs the operation of the calculator. Gluing together all of the microprocessor logic is a number of standard TTL small and medium-scale integrated circuits. Working memory is via static RAM, that loses its content when power is lost. A magnetic cartridge tape unit, which uses DC-100 tape cartridges (a 'standard' magtape format, versus the proprietary designs used on earlier and other manufacturer's machines), provides off-line storage of programs and data. A comprehensive set of tape manipulation functions make short work of saving/restoring programs and memory registers to/from tape. A special mode (selected by a slide switch on the keyboard panel) allows the machine to automatically load a program from tape on power-up and begin execution, allowing easy 'canned applications' to be set up.
Profile view of HP9815A
The 9815 is quite fast, both for math and program functions. It can cycle through a program consisting of all "NO OPERATION" instructions (the default content of memory when the machine is powered up) in less than 1/2 second (that's on a machine with the expanded memory option, 1928 steps). For math operations, trig functions take at most about 1/4 second. Other math functions come up with results virtually instantaneously. The printer is used to announce error conditions by printing out a text message indicating the error condition, IE: "ILLEGAL ARGUMENT", or "LOG OF # <=0", or "OVERFLOW" (with the display showing "9.999999999 99" on overflow conditions). Being as the printer is so noisy, it is almost startling when an error occurs! Error conditions do not lock up the machine, but try to leave the machine in a state where calculations can be resumed (IE: Log of a negative number generates the error condition, but returns the argument to the display). The printer can be selected so that it is "OFF" (error messages still print in "OFF" mode), "ALL", where the printer records all operations, and "NORM", where a press of the "PRINT" key (or its shifted function which prints the entire RPN stack) prints the current content of the display.
For much more detailed and comprehensive information on the HP9815A and other older HP calculators, Dave Hicks' Museum of HP Calculators is a must-visit site.