HP 264x Terminals

HP 264x Terminals Series Playlist:

HP 264x Terminals

The HP 264X series is one of the most awesome (and expensive) widescreen terminals from the 1970's. It is built around the first commercially successful Intel 8-bit processors, the Intel 8008 and 8080. They are completely modular (you can add and remove cards at will) and can be configured a million ways with many options, so there are almost no two the same, even if they share the same model number.

The most famous of the series is the HP 2645A, with the 2648A (Graphics) and 2647F (Graphics + Basic + Disk Drive) also common, but the whole series is:

  • HP 2640A - the original, based on a 8008 (!) processor (1974)
  • HP 2641A - an APL terminal with overstrike character capability, never seen one (1976)
  • HP 2642A - a late version of the 2645 with external 5-1/4" floppy disc drives instead of tapes (1980). Never seen one either.
  • HP 2644A - the 2640 with the addition of two tape drives (1975).
  • HP 2645A - the standard, using the 8080, can be had with or without tapes (1976)
  • HP 2645R - Arabic version of the 2645A, writes right to left (1977)
  • HP 2648A - adds graphics capability to the 2645 (1977)
  • HP 2647A - the late genius of the series, "intelligent terminal", a 2648 with more memory and more ROM, can be programmed in BASIC. The A model has the tapes and the F has to two external 5-1/4" floppy disc drives instead of the tapes (A: 1978, F: 1982)
  • HP 2649B - the 2645 OEM version, intended for custom ROM development for special applications. Most usually found disguised as HP 3000 management consoles. The 2649C is the OEM of the 2648A and the 2649G is the OEM of the 2647A
  • HP 13290B - the firmware development station for the above 2649 series, I suppose it has an assembler in it and a control store for testing the ROMs.

Below are the models with the catalog list pricing at different dates

   Model |  1980    1981    1982     1983  1984    1985  Notes
   ------|---------------------------------------------  --------------------
   2640B | $2600   $2600       x       x        x      x      x
   2640C | $4250   $4250       x       x        x      x      x  Cyrillic
   2641A | $4100   $4100       x       x        x      x      x  APL
   2642A |             -      ??   $6750        x      x      x
   2645A | $3500   $3500   $3500   $3995    $4550  $4600      x
   2645K | $4000   $4000       x       x        x      x      x  Katakana
   2645N | $3750   $3750       x       x        x      x      x  Danish/Norwegian
   2645R | $4350   $4350       x       x        x      x      x  Arabic
   2645S | $3750   $3750       x       x        x      x      x  Swedish/Finnish
   2647A | $8300   $8300       x       x        x      x      x  b&w graphics, BASIC
   2647F |             -   $8950   $9400    $9950  $9950      x  b&w graphics, BASIC
   2648A | $5500   $5500   $5950   $6530        x      x      x  b&w graphics
   2649A | $2150   $2150   $2150       x        x      x      x
   2649I |             -   $7750       x        x      x      x  2649A - graphics
  13290B | $6950   $6950   $6950       x        x      x      x  2648A + more

Essential Documentation

This is the user manual for the HP 2645:

2645A Display Station User's Manual

The following document is a very detailed guide on the options and installation of the 2645 terminal. In particular it explains the strapping configurations of the keyboard and communication cards, and has the wiring diagrams for the cables:

2641A 2645A 2645S Display Station Reference Manual

This service document below is a compendium of all the cards, options and strappings and some installation and service procedures. At 565 pages, it can be daunting, terse and difficult to follow if you do not know the subject matter already, but there is a lot of info in it:

264X Composite Service Manual

Character generation

The HP 264x have a particularly refined character generation, with a clever scheme of resolution doubling using a half-shift of the scan lines. This gives it a much finer character display capability than most terminals of the time. The HP 264x also came with a lot of optional character sets, purchasable in the forms of optional character ROMs.

The details of character generation and ROM character formats is described in this rare document that the Museum of Computing in the UK specially scanned for us:

2640 Series Character Generation,pdf

This document allowed us to recreate the exact character maps images from the ROMs, and also to reverse engineer the 9-bit ROM vs. 8-bit ROM mystery for the micro-vector sets.

See my video explaining this, and how we recreated the 8-bit Math character ROM and added it to the terminal:

Part 1: Intro to the 2645A and Character Set Upgrade

In Part 2 we added one of the hard to make 9-bits ROM sets, and hacked a way to do it with a regular 8-bit ROM:

Part 2: 9-Bit Character Set Upgrade and Terminal Demo

File dumps and character maps of the character ROMs I could lay my hands on are provided below. If any of you has one of the other rarer sets (Katakana, Arabic, APL...) I'd love to the opportunity to dump their contents.

Roman Lowercase

Roman Uppercase

The Roman uppercase was the default set in the original HP 2640A. The lowercase could be added as an option, and became part of the base HP 2645A. Most terminals are equipped with this set. It was distributed on two ROMs, 1816-0612 (uppercase) and 1816-0612 (lowercase):

1816-0612 ROM Roman Uppercase.bin

1816-0613 ROM Roman Lowercase.bin

This set is usually found plugged on the DSPLY CNTL board in the terminal.

Math Character Set, ROM 1816-0642

The Math set allows displaying mathematical equations. It has an integral sign split in two characters.

The 8-bit ROM number for the set is 1816-0642. We dumped the ROM here:

1816-0642 ROM Math Set.bin

This set is meant to be plugged in the optional DISP ENH board

Line Character Set, ROM 1816-0641

The Line Set is for drawing tables and forms. It is a micro-vector set and uses 9 bits. It was originally distributed in the 9-bit wide ROM 1816-0641:

1816-0641 ROM 9-bit Line Set (first 8 bits).bin

1816-0641 ROM 9-bit Line Set (9th bit).bin

1816-0641 ROM 9-bit Line Set (all bits combined).bin

The second revision of the Enhanced Display Board compressed it to the more common 8-bit ROM format, by taking advantage that the two first bits are always the same in this character set. The 8-bit ROM version is 1816-1417:

1816-1417 ROM 8-bit Line Set.bin

Large Character Set, ROM 1816-0641

The Large Character Set is for drawing large titles. Each character is made of a 3x3 matrix of smaller character. It is a micro-vector set and uses 9 bits. It was originally distributed in the 9-bit wide ROM, which I do not have in any of my machines. It could be recreated from the 8-bit set below by doubling the first bit (i.e., the two first bits are the always the same in the 9-bit ROM versions).

The second revision of the Enhanced Display Board compressed it to the more common 8-bit ROM format, by taking advantage that the two first bits are always the same in this character set. The 8-bit ROM version is 1816-1425:

1816-1425 ROM 8-bit Large Char Set.bin

Star Wars Aurebesh Font on the HP 2645

For "May the 4th", I went a step further and created a new Star Wars Aurebesh font ROM and switched it up for the main ROM. See further below for the font binary file and the font editor I created to make it.

HP Font Editor Program

I created the Windows program below to work with HP 264X character ROM binary files, display them, edit them and create new character sets.

HP 264x Font Editor.exe

There are 3 types of character ROM formats

  • Alphanumeric characters. These are 8x1k (8kB) ROMs, the 1st bit is used for half shift and the 7 other bits are used for character bits. There are 15 rows per character, the 16th row in the ROM is unused. This is the default format the editor is in.
  • 9-bit Microvector characters ROMs. These very unusual 9-bit ROMs are 9x1k, and are used to describe geometric characters that cover the full 9x15 bitmap grid, and therefore can touch each other. These are used for geometrical character fonts such as the Line Set and the Large Character font shown above. Such ROMs only work when installed in the original version of the DISP ENH board.
  • 8-bit Microvector character ROMs. At some point HP came back to its senses and made a revision of the DISP ENH board that used normal 8-bit ROMs for the microvector fonts. It just happened that all the released HP microvector fonts had the same 1st and 2nd bits in all characters. So they dropped the 1st bit altogether. The 8-bit microvector ROMs only work with the newer Disp Enh board, which will recreate the 9th bit on the fly. My editor correctly displays the 8-bit microvector ROM files by expanding them to 9-bits before display, just as the updated board did.

Star Wars Aurebesh Font

Aurebesh Font, CuriousMarc custom ROM

Here is the binary file for the Aurebesh font I created for the video


The font was burned on a 82S181 compatible bipolar 8k PROM, like the original Signetics 82S181, the Harris 7618 or the AMD AM27S181. I put in place of the main uppercase character ROM on the main DISP CNTL board.

Games on the HP 2645

Through a mostly undocumented binary loader (it's only documented on the HP 2649 programming overview), one can run binary programs on the 264x terminals, provided they have enough memory. This video explains how:

Part 4: Playing 8-bit Graphics Games with an Intel 8080 Processor

Here are the 6 games for the HP 2645 I demonstrate in the video

The files can be loaded directly from tape or uploaded through the serial interface from a computer. To play them on the HP 2648 you have to slightly modify the first few characters of the code, since entering the binary loader is slightly different on this machine.