HP 9800 series

The HP 9800 is a family of what were initially called programmable calculators and later desktop computers that were made by Hewlett-Packard, replacing their first HP 9100 calculator. It is also named "98 line". The 9830 and its successors were true computers in the modern sense of the term, complete with a powerful BASIC language interpreter.

Second generation
Chronologically, the models of the family were:
 * HP 9810A, a keystroke programmable computer with magnetic cards and LED display, introduced in 1971,
 * HP 9820A, introduced in 1972, was the first HP model that deals with algebraic input (not only RPN) featured a high level language simpler than BASIC that was later named high performance language (HPL),
 * HP 9821A, similar to the HP 9820A, however, with Compact Cassette tape drive with clear leaders instead of using magnetic cards. Tapes created on the HP 9821A could be read by the HP 9830A. Unlike later home computers which used standard cassette audio recorders which had to be manually put into record or play mode, it was completely controlled by software command, and could save and load to a file by number.
 * HP 9830A, introduced in 1972, was the top of the 9800 line, with the addition of a BASIC interpreter in read-only memory (ROM). HP itself referred to it as a "calculator".

All 98x0 and 9821 systems used the same I/O interfaces. A 400 line per minute 80-column thermal line printer was designed to fit on top of the 9820 and 9830.

Third generation
The success of the HP9830 led to a next generation with faster logic: All the 98x5, with the exception of the 9805, used DC200 cartridge tapes, instead of cassette tapes. The 9825, 9831, 9835, and 9845 all used the same I/O interfaces. the 9815 had a unique I/O interface.
 * HP 9805A, the least expensive model using the same chassis as the HP46 (scientific) and HP81 (business) pocket calculators. This was a Programmable Calculator and had plug-in personality modules. It was introduced in 1973.
 * HP 9815A/S, the HP 9815A was HP's third generation high end RPN desktop and was introduced in 1975. It was much smaller, lighter and less expensive than its predecessor. It provided only a single line display but replaced the earlier card drives with a tape drive.
 * HP 9825A/B, introduced in 1976, and retired in 1983, featured HPL, a single-line alphanumeric display, and optional thermal printer,
 * HP 9831, an HP9825 with BASIC instead of HPL,
 * HP 9835, that featured BASIC and eventually became the basis for the HP 250 series of business computers. There were two models, the A and B. The A had a CRT, and the B had a single-line display.
 * HP 9845 introduced first as a monochrome (9845A/S), then a high-performance monochrome (9845B/T) and a high performance color (9845C/T) model. The 9845 came with one tape drive, and optional second tape drive and 80 column wide thermal printer integrated into the base under the pillar-mounted display unit.

An ancestor of modern personal computers
The HP 9800 series were developed by HP's Loveland division (Calculator Products Division), and later Fort Collins division (Desktop Computer Division). Early desktop computers were marketed as "Calculators" to make purchasing easier. At the time, some companies had different procedures for purchasing "Computers".

They spawned development of the HP Series 80 machines, including the HP 85 and HP 87, which were smaller BASIC language computers with CRT displays. They came from HP's Advanced Products Division based in Corvallis.

For a short time in the late 1970s and early 1980s there was a class of similar desktop computers, such as the Tektronix 4051, IBM 5100 and Wang 2200 - before they were replaced in the marketplace by personal computers such as the Apple and IBM PC.

HP 9830 uses
HP 9830s were commonly employed at aerospace companies such as Boeing. They were also used by some school systems such as Arlington, Virginia, and Renton, Washington, which used pencil mark-sense cards with card readers to accommodate classroom use. An HP 9830 system with an integrated hard drive was also provided by HP in the early 1970s to National Real Estate Exchange, Inc., a small company in Florida, for its use in developing early real estate software. The U.S. Coast Guard devised a teletype message-forwarding system based on 9825As which were deployed as a working prototype for a subsequent purpose-built system, and also used them in the coordination of LORAN radionavigation transmitter chains. HP9825s were used in conjunction with Oscor software to score one-design yachting regattas in remote locations, such as the 1976 World Fireball championships in Nova Scotia, the World Windsurfing championships in 1976/1977 in Cancún and Bahamas, and also Laser championships. The HP9825 was selected because it was portable – the only alternatives were phone access to time sharing computers which was not reliable from these locations.

HP 9830 description
9830s were built with a processor similar in architecture to the HP 1000/2100 series minicomputer with 16-bit memory address, and an AX and BX general processor register. They ran at a speed comparable to the first IBM PCs. They could draw a mesh of a 3D SIN(X)/X function with no hidden lines over the course of several minutes, a technological breakthrough for the time.

Because programs were designed to run from ROM (read only memory) the call subroutine instruction had to be changed because in the HP211x the return location was written in the first location of the subroutine. Instead, another register was created to keep track of return locations on a separate stack area, like more modern processors. This made recursion possible.

Some models (e.g. 9835B) used a 32-character 1 line uppercase LED display, which on the one hand might seem limiting, but on the other hand had the same effect as one-line window into a full screen editor which did not become common until the 1980s, with controls to go up or down a line, and cursor left and right, inserting or deleting characters. They powered on ready to do math in "immediate mode", where you would type in an expression such as PRINT 2 + 3, and you would get an answer when you hit enter, without the complication of logging in, or the overhead of maintaining a big computer room and operator.

A computer controlled cassette drive using audio cassettes with clear leaders for optical detection of end of tape was used for storage. Random access to a file was by number, but a hard drive could also be attached.

The matching line thermal printer was quite fast, printing one horizontal line of dots at once. The speed of a page was faster than later dot matrix printers, and not much worse than modern ink jet printers. HP incorporated thermal printers into many plotting and terminal products later.

Programming
Although the processor used was only a slight adaptation from that used on HP minicomputers, the system software would be completely redesigned for a computer with its operating system and language system built into read-only memory. BASIC was similar to FORTRAN used by engineers on the HP 1000 minicomputer, but much simpler to use as an interpreted language. Arrow cursor keys were provided which could scroll up and down lines, and interactively insert or delete characters which was unheard of with most CRT or printing terminals until the advent of the screen editor in the late 1970s, and the programmer could single-step or check values of variables.

Two rows of user-defined function keys with paper labels were some of the earliest implementation of general function keys. They would be the basis for later screen labeled function keys used in later Hewlett Packard (and IBM) terminals and computers, and now widely adopted in calculators, bank terminals, and gas pumps.

It was programmable in BASIC, which could be extended with ROMs to do graphics plotting, matrix math and string variables. The ROM cartridges were designed to extend the BASIC language, and were very similar to the cartridges later used by video game consoles.

The Plotter ROM added commands which made creating a chart much more simple than is possible with C++ or C#, and used either user or world coordinates rather than integer plotter units. These commands would later become the basis for the device-independent HP AGL graphics language standard implemented on other HP computers such as the HP 1000 minicomputer and HP 2647 intelligent graphics terminal. Also available for programming the HP 9800 series was a bootable development environment based on UCSD Pascal.

HPL Language description
In HPL instead of variables such as A1 and J2, there were numbered registers r1, r2, up to r199999.

The following HPL program for the HP 9825 generates a list of prime numbers:

0: fxd 0 1: prt 1 2: prt 2 3: 1→P 4: for C=2 to 1000000 5: P+2→P 6: for N=3 to P/3 7: if int(P/N)*N = P; gto 4 8: next N 9: prt P 10: next C

Another unique characteristic of HPL was the right arrow. This arrow was known as the gazinta (slang for "goes into"). The statement 1→P would be pronounced "One gazinta P".

Other BASIC computers
The Data Terminals Division also produced a BASIC programmable version of the HP2640 series terminal, the HP 2647a, which also featured AGL, an HP standardization of the HP 9830 plotter commands.

HP 2647 BASIC was essentially Microsoft BASIC with HP 9830-style plotting commands added, and was one of Microsoft's first big contracts with a mainstream computer company.

HP also produced a series of handheld pocket computers with a one-line display such as the HP-75, although such devices were not popular for long.

The HP 9835 was also used as the basis for a business computing system, and later the HP 250 which lives on as an application platform.

In 1979 the 85, the first machine in the HP Series 80 line of personal desktop scientific computers, was produced. It had a powerful BASIC interpreter, and was affordable by individuals whose employers might have expensive 9845s.

That division evolved to produce UNIX HP 9000 series workstations, also acquiring the Apollo Computer Company. HP Basic would later evolve into Rocky Mountain BASIC for workstations, which is still in use today to support legacy applications.