DECDLD—Dynamically Redefinable Character Sets

DECDLD loads your soft character set into dynamically redefinable character set (DRCS) font buffers. Although the terminal has six font buffers, it only supports four buffers for soft character sets.

The terminal arranges the DRCS font buffers into sets. Each DRCS set has two font buffers: one for 80-column fonts and one for 132-column fonts. These buffers also allow you to load two different font heights or character sets in both 80- and 132-column widths.

Although the terminal allows you to use two different soft character sets at one time, it only allows you to use one DRCS set at one time.

Format

DCS Pfn ; Pcn; Pe; Pcmw; Pss; Pt; Pcmh; Pcss f Dscs Sxbp1 ; Sxbp2 ; . . . ; Sxbpn ST

Description

DCS is the device control string introducer. DCS is an 8-bit C1 character. You can use the equivalent 7-bit sequence, ESC P (1/11, 5/0), when coding for a 7-bit environment.

ST is the string terminator. ST is an 8-bit C1 character. You can use the equivalent 7-bit sequence, ESC \ (1/11, 5/12), when coding for a 7-bit environment.

Parameters

Pfn; Pcn; Pe; Pcmw; Pss; Pt; Pcmh; Pcss
are parameter characters, separated by semicolons (3/11). Table 5–2 describes these parameters and lists their possible values. Table 5–3 describes the combinations of Pcmw, Pt, and Pcmh that you can use for 80- and 132-column fonts. If you use any other combinations, then the terminal ignores the DECDLD string.

{
is the final character. It marks the end of the parameter characters and indicates that this string is a DECDLD function.

Dscs
defines the name for the soft character set. You use this name in the select character set (SCS) escape sequence. You use the following format for the Dscs name:

I F

I is 0, 1, or 2 intermediate characters from the 2/0 to 2/15 range in the ASCII character set.
F is a final character in the 3/0 to 7/14 range.
Notes
  • If two downline loaded soft character sets have the same Dscs, then the most recently loaded set is used. The terminal looks for a matching Dscs in reverse load order (last loaded first).
  • If the terminal receives a DRCS control string for a given font number with a different Dscs (designating sequence), Pcmh (height) or Pcss (character set size), then the terminal erases the previously downline loaded set (if any) in both 80- and 132-column mode.
  • If there is no DRCS available that is compatible with the current number of lines per screen (font height), then the terminal displays a reverse question mark in place of any characters.

Examples of Dscs Names

Name Function
SP
2/0
@
4/0
Defines the character set as an unregistered soft set. This value is the recommended default for user-defined sets. The value of Pcss defines whether this set has 94 or 96 characters.
A
4/2

If Pcss is 0, then A defines the soft character set as the U.K. national replacement character set.

If Pcss is 1, then A defines the soft character set as the ISO Latin-1 supplemental set.

&
2/6
%
2/5
C
4/3
Defines the soft character set as % C, which is currently an unregistered set. The value of Pcss defines whether this set has 94 or 96 characters.

Sxbp1 ; Sxbp2 ; . . . ; Sxbpn
are the sixel bit patterns for individual characters, separated by semicolons (3/11). Your character set can have 1 to 94 patterns or 1 to 96 patterns, depending on the setting of the character set size parameter (Pcss). Each sixel bit pattern is in the following format:

S...S/S...S

the first S...S
represents the sixels in Group A of the soft character.

/ (2/5)
advances the sixel pattern to Group B of the soft character.

the second S...S
represents the sixels in Group B of the soft character.

Table 5–2 DECDLD Parameter Characters
Parameter Name Description
Pfn Font number Selects the DRCS (soft character set) to load. The previous set (if any), that you load with that font number, is erased or overwritten as specified by the control sequence. You can assign a value of 0, 1, and 2 to Pfn. Other values cause the terminal to ignore the entire sequence. Pfn = 0 defaults to the first empty font buffer, or, if none are empty, to font buffer 1.
Pcn Starting character Selects where to load the first character in the DRCS font buffer. The location corresponds to a location in the ASCII code table. For example, a Pcn value of 0 means that the first soft character is loaded into position 2/0 of the character table. A Pcn value of 1 means position 2/1 in the table, and so on, up to Pcn = 95 (position 7/15).
Pcn is affected by the character set size. See Pcss below.
Pe Erase control Selects which characters to erase from the DRCS buffer before loading the new font.
0 = Erases all characters in the DRCS buffer with this number, width, and rendition.
1 = Erases only characters in locations being reloaded.
2 = Erases all renditions of the soft character set (normal, bold, 80-column, 132-column).
Note

Erased characters are undefined (not blank). The terminal displays these characters as the error character (reverse question mark).

Pcmw Character matrix width Selects the maximum character cell width.

When Pss specifies 80 columns, Pt specifies font usage full cell as follows:

0 = 10 pixels wide for 80 columns, 6 pixels wide for 132 columns. (default).
2 = 5 × 10 pixel cell (width × height).
3 = 6 × 10 pixel cell (width × height).
4 = 7 × 10 pixel cell (width × height).
5 = 5 pixels wide.
6 = 6 pixels wide.
.
.
.
10 = 10 pixels wide.

When Pss specifies 80 columns, Pt specifies font usage text as follows:

0 = 10 pixels wide for 80 columns, 6 pixels wide for 132 columns. (default)
2 = 5 × 10 pixel cell (width × height).
3 = 6 × 10 pixel cell (width × height).
4 = 7 × 10 pixel cell (width × height).
5 = 5 pixels wide.
.
.
.
9 = 9 pixels wide.

When Pss specifies 132 columns, Pt specifies font usage full cell as follows:

0 = 10 pixels wide for 80 columns, 6 pixels wide for 132 columns. (default)
2 = 5 × 10 pixel cell (width × height).
3 = 6 × 10 pixel cell (width × height).
4 = 7 × 10 pixel cell (width × height).
5 = 5 pixels wide.
6 = 6 pixels wide.

When Pss specifies 132 columns, Pt specifies font usage text as follows:

0 = 10 pixels wide for 80 columns, 6 pixels wide for 132 columns. (default)
2 = 5 × 10 pixel cell (width × height).
3 = 6 × 10 pixel cell (width × height).
4 = 7 × 10 pixel cell (width × height).
5 = 5 pixels wide.

If you omit a Pcmw value, the terminal uses the default character width. If the Pe parameter is 0, Pcmw must be less than 10. Any Pcmw value over 10 is illegal. For illegal values of Pcmw, the terminal ignores the rest of the load sequence.

For VT200 compatible software: Use a Pcmw value of 2, 3, or 4. When you use these values, the VT510 doubles the height of the font definitions in memory. This makes the soft set the same height as the hard sets. If you use a Pcmw value of 0, then the VT510 does not double the height and the soft set appears smaller than the hard sets. Remember that the VT200 fonts may appear different on the VT510.

For fonts designed for the VT510: Use values 5 through 10.

For compatibility between VT200 and VT510 terminals: Use a Pcmw value of 5, 6, or 7.

Pss Font set size Defines the screen width and screen height for this font.
0,1 = 80 columns, 24 lines. (default)
2 = 132 columns, 24 lines
11 = 80 columns, 36 lines
12 = 132 columns, 36 lines
21 = 80 columns, 48 lines
22 = 132 columns, 48 lines

For illegal values of Pss, the terminal ignores the rest of the load sequence.

If the number of columns or lines/screen changes, then the terminal uses the appropriate variation of the soft set. If you try to display a DRCS character when there is no soft set defined for the current number of lines and columns, then the terminal displays the error character (reverse question mark).

Note

For VT220 compatibility, you must use a soft font of 80 or 132 columns (not both). The VT220 allows a single font to be used for 80 and 132 columns.

You can load a font for any of the six sizes at any time. When a new soft set is loaded, any characters from the previous soft set are lost. Characters currently displayed from the old set become reverse question marks.

Pt Text or full cell Defines the font as a text font or full-cell font.
0 = text. (default)
1 = text.
2 = full cell.

Full-cell fonts can individually address all pixels in a cell.

Text fonts cannot individually address all pixels. If you specify a text cell, then the terminal automatically performs spacing and centering of the characters.

Pcmh Character matrix height Selects the maximum character cell height.
0 or omitted = 16 pixels high. (default)
1 = 1 pixel high.
2 = 2 pixels high.
3 = 3 pixels high.
.
.
.
16 = 16 pixels high.

Pcmh values over 16 are illegal. If the value of Pcmw is 2, 3, or 4, then Pcmh is ignored.

Pcss Character set size Defines the character set as a 94- or 96- character graphic set.
0 = 94-character set. (default)
1 = 96-character set.

The value of Pcss changes the meaning of the Pcn (starting character) parameter above.

If Pcss = 0 (94-character set)
The terminal ignores any attempt to load characters into the 2/0 or 7/15 table positions.

Pcn Specifies
1 column 2/row 1
.
.
.
94 column 7/row 14

If Pcss = 1 (96-character set)

Pcn Specifies
0 column 2/row 0
.
.
.
95 column 7/row 15
Table 5–3 Valid DECDLD Parameter Combinations
Pt Pcmw Pcmh Pss†
†The default values are the maximum legal values in each case.
80-column, 24 lines
0 or 1 0 to 8 0 to 16 0 or 1
2 0 to 10 0 to 16 0, 1
132-column, 24 lines
0 or 1 0 to 5 0 to 16 2
2 0 to 6 1 to 16 2
80-column, 36 lines
0 or 1 0 to 8 0 to 10 11
2 0 to 10 0 to 10 11
132-column, 36 lines
0 or 1 0 to 5 0 to 10 12
2 0 to 6 0 to 10 12
80-column, 48 lines
0 or 1 0 to 8 0 to 8 21
2 0 to 10 0 to 8 21
132-column, 48 lines
0 or 1 0 to 5 0 to 8 22
2 0 to 6 0 to 8 22
Note

For illegal combinations of the Pss, Pt, Pcmw, and Pcmh parameters, the terminal ignores the rest of the sequence.

Table 5–4 VT510 Font Sizes
80 Columns 132 Columns Maximum Number of Lines
10 × 16 6 × 16 26 lines + keyboard indicator line
10 × 10 6 × 10 42 lines + keyboard indicator line
10 × 8 6 × 8 53 lines + keyboard indicator line
10 × 13 6 × 13 26 lines + keyboard indicator line
(72 Hz with overscan)