The Technical Character Set appears on Digital terminals from the VT330 and VT420 onwards. It is a 94-character set containing mathematical symbols and Greek letters. You can see how a VT420 terminal displays the set in the picture on the right. The sigma and larger brackets are made up from smaller joining characters.
In Digital’s terminal and printer manuals, this set is only documented by pictures of the characters (“glyphs”). These glyphs often don’t provide enough information as to the purpose of the characters and there are places where the manuals disagree with each other. I have examined the VT3XX and VT420 manuals and the shapes of the characters as displayed by the VT330, VT420 and VT520 terminals, and an LN03 laser printer. I’ll cover the mistakes in the manuals later.
The main impetus for this page came from discussions with Frank da Cruz of the Kermit Project, who proposed a set of terminal graphics for inclusion in Unicode, including some from the Technical Set. Some of the TCS characters were already in Unicode and some others were covered by another proposal called STIX. In order to be sure that a small but sufficient set of characters was proposed, we needed to be sure what all the characters in TCS meant. Most of the proposed characters made it into Unicode 3.2.
These characters were scanned from a printout obtained from an LN03 laser printer. The characters 02/01 to 03/07 join to adjacent character positions to make large symbols (as illustrated in the VT420 screenshot, above). I have placed a light line around them to show how they join.
There are actually no blanks (spaces) in this set; all undefined positions will cause the substitute character (a reversed question mark) to be displayed. This reversed question mark has now made it into Unicode 3.0 as U+2426, SYMBOL FOR SUBSTITUTE FORM TWO.
The following tables describe all the characters in the TCS. Some of the characters have equivalents in Unicode, so the table shows the Unicode reference (number and name) for these. I have guessed at some of the associations between TCS and Unicode characters because I’m not sure what the joining properties of the Unicode characters are; I’ve placed the Unicode reference for these in parentheses.
col/row | Unicode | Name | Description |
---|---|---|---|
02/01 | U+23B7 | RADICAL SYMBOL BOTTOM | Centred left to right, so that it joins up with 02/02 |
02/02 | U+250C | BOX DRAWINGS LIGHT DOWN AND RIGHT | |
02/03 | U+2500 | BOX DRAWINGS LIGHT HORIZONTAL | |
02/04 | U+2320 | TOP HALF INTEGRAL | with the proviso that the stem is vertical, to join with 02/06 |
02/05 | U+2321 | BOTTOM HALF INTEGRAL | with the proviso above. |
02/06 | U+2502 | BOX DRAWINGS LIGHT VERTICAL | |
02/07 | U+23A1 | LEFT SQUARE BRACKET UPPER CORNER | Joins vertically to 02/06, 02/08. Doesn’t join to its right. |
02/08 | U+23A3 | LEFT SQUARE BRACKET LOWER CORNER | Joins vertically to 02/06, 02/07. Doesn’t join to its right. |
02/09 | U+23A4 | RIGHT SQUARE BRACKET UPPER CORNER | Joins vertically to 02/06, 02/10. Doesn’t join to its left. |
02/10 | U+23A6 | RIGHT SQUARE BRACKET LOWER CORNER | Joins vertically to 02/06, 02/09. Doesn’t join to its left. |
02/11 | U+239B | LEFT PARENTHESIS UPPER HOOK | Joins vertically to 02/06, 02/12, 02/15. Doesn’t join to its right. |
02/12 | U+239D | LEFT PARENTHESIS LOWER HOOK | Joins vertically to 02/06, 02/11, 02/15. Doesn’t join to its right. |
02/13 | U+239E | RIGHT PARENTHESIS UPPER HOOK | Joins vertically to 02/06, 02/14, 03/00. Doesn’t join to its left. |
02/14 | U+23A0 | RIGHT PARENTHESIS LOWER HOOK | Joins vertically to 02/06, 02/13, 03/00. Doesn’t join to its left. |
02/15 | U+23A8 | LEFT CURLY BRACKET MIDDLE PIECE | Joins vertically to 02/06, 02/11, 02/12. |
col/row | Unicode | Name | Description |
---|---|---|---|
03/00 | U+23AC | RIGHT CURLY BRACKET MIDDLE PIECE | Joins vertically to 02/06, 02/13, 02/14. |
03/01 | Top Left Sigma. Joins to right with 02/03, 03/05. Joins diagonally below right with 03/03, 03/07. | ||
03/02 | Bottom Left Sigma. Joins to right with 02/03, 03/06. Joins diagonally above right with 03/04, 03/07. | ||
03/03 | Top Diagonal Sigma. Line for joining 03/01 to 03/04 or 03/07. | ||
03/04 | Bottom Diagonal Sigma. Line for joining 03/02 to 03/03 or 03/07. | ||
03/05 | Top Right Sigma. Joins to left with 02/03, 03/01. | ||
03/06 | Bottom Right Sigma. Joins to left with 02/03, 03/02. | ||
03/07 | Middle Sigma. Joins diagonally with 03/01, 03/02, 03/03, 03/04. | ||
03/08 | undefined | ||
03/09 | undefined | ||
03/10 | undefined | ||
03/11 | undefined | ||
03/12 | U+2264 | LESS-THAN OR EQUAL TO | |
03/13 | U+2260 | NOT EQUAL TO | |
03/14 | U+2265 | GREATER-THAN OR EQUAL TO | |
03/15 | U+222B | INTEGRAL |
col/row | Unicode | Name | Description |
---|---|---|---|
04/00 | U+2234 | THEREFORE | |
04/01 | U+221D | PROPORTIONAL TO | |
04/02 | U+221E | INFINITY | |
04/03 | U+00F7 | DIVISION SIGN | |
04/04 | U+0394 | GREEK CAPITAL DELTA | |
04/05 | U+2207 | NABLA | |
04/06 | U+03A6 | GREEK CAPITAL LETTER PHI | |
04/07 | U+0393 | GREEK CAPITAL LETTER GAMMA | |
04/08 | U+223C | TILDE OPERATOR | |
04/09 | U+2243 | ASYMPTOTICALLY EQUAL TO | |
04/10 | U+0398 | GREEK CAPITAL LETTER THETA | |
04/11 | U+00D7 | MULTIPLICATION SIGN | |
04/12 | U+039B | GREEK CAPITAL LETTER LAMDA | |
04/13 | U+21D4 | LEFT RIGHT DOUBLE ARROW | |
04/14 | U+21D2 | RIGHTWARDS DOUBLE ARROW | |
04/15 | U+2261 | IDENTICAL TO |
col/row | Unicode | Name | Description |
---|---|---|---|
05/00 | U+03A0 | GREEK CAPITAL LETTER PI | |
05/01 | U+03A8 | GREEK CAPITAL LETTER PSI | |
05/02 | undefined | ||
05/03 | U+03A3 | GREEK CAPITAL LETTER SIGMA | |
05/04 | undefined | ||
05/05 | undefined | ||
05/06 | U+221A | SQUARE ROOT | |
05/07 | U+03A9 | GREEK CAPITAL LETTER OMEGA | |
05/08 | U+039E | GREEK CAPITAL LETTER XI | |
05/09 | U+03A5 | GREEK CAPITAL LETTER UPSILON | |
05/10 | U+2282 | SUBSET OF | |
05/11 | U+2283 | SUPERSET OF | |
05/12 | U+2229 | INTERSECTION | |
05/13 | U+222A | UNION | |
05/14 | U+2227 | LOGICAL AND | |
05/15 | U+2228 | LOGICAL OR |
col/row | Unicode | Name | Description |
---|---|---|---|
06/00 | U+00AC | NOT SIGN | |
06/01 | U+03B1 | GREEK SMALL LETTER ALPHA | |
06/02 | U+03B2 | GREEK SMALL LETTER BETA | |
06/03 | U+03C7 | GREEK SMALL LETTER CHI | |
06/04 | U+03B4 | GREEK SMALL LETTER DELTA | |
06/05 | U+03B5 | GREEK SMALL LETTER EPSILON | |
06/06 | U+03C6 | GREEK SMALL LETTER PHI | |
06/07 | U+03B3 | GREEK SMALL LETTER GAMMA | |
06/08 | U+03B7 | GREEK SMALL LETTER ETA | |
06/09 | U+03B9 | GREEK SMALL LETTER IOTA | |
06/10 | U+03B8 | GREEK SMALL LETTER THETA | |
06/11 | U+03BA | GREEK SMALL LETTER KAPPA | |
06/12 | U+03BB | GREEK SMALL LETTER LAMDA | |
06/13 | undefined | ||
06/14 | U+03BD | GREEK SMALL LETTER NU | |
06/15 | U+2202 | PARTIAL DIFFERENTIAL |
col/row | Unicode | Name | Description |
---|---|---|---|
07/00 | U+03C0 | GREEK SMALL LETTER PI | |
07/01 | U+03C8 | GREEK SMALL LETTER PSI | |
07/02 | U+03C1 | GREEK SMALL LETTER RHO | |
07/03 | U+03C3 | GREEK SMALL LETTER SIGMA | |
07/04 | U+03C4 | GREEK SMALL LETTER TAU | |
07/05 | undefined | ||
07/06 | U+0192 | LATIN SMALL LETTER F WITH HOOK | Probably chosen for its meaning of “function” |
07/07 | U+03C9 | GREEK SMALL LETTER OMEGA | |
07/08 | U+03BE | GREEK SMALL LETTER XI | |
07/09 | U+03C5 | GREEK SMALL LETTER UPSILON | |
07/10 | U+03B6 | GREEK SMALL LETTER ZETA | |
07/11 | U+2190 | LEFTWARDS ARROW | |
07/12 | U+2191 | UPWARDS ARROW | |
07/13 | U+2192 | RIGHTWARDS ARROW | |
07/14 | U+2193 | DOWNWARDS ARROW |
This section names the manuals I’ve consulted in order to write this document, and explains any differences between the manuals and this page.
The diagram in EK-VT420-UU-002, Installing and Using the VT420 Video Terminal, is particularly indistinct, and contains one mistake; it swaps 07/05 and 07/06. You might also get the impression that 03/05 and 06/00 are identical, and that 05/09 is a ‘T’. The VT420 itself shows 05/09 (capital Upsilon) with a distinct hook, but I’ve concluded that this character is not intended to be U+03D2 GREEK CAPITAL LETTER UPSILON HOOK because the VT520 displays a more straightforward ‘Y’ shape.
The diagram in EK-VT3XX-HR-001, VT330/VT340 Programmer Pocket Guide, is also small but accurate.
The largest diagram I’ve seen is in EK-0LN03-RM-002, LN03 Programmer Reference Manual.