Ann Arbor Ambassador User Guide

Display

Display Features

The Ambassador has a large 15-inch non-glare screen that can display up to 60 lines of information. A versatile array of modes and controls permits the user to tailor the display for maximum convenience, efficiency, and individual comfort. The use of these modes and controls is described and illustrated in this section.

Modes that Affect the Display

The following modes affect your use of the display. Their settings can be reviewed, and changed as desired, on the Setup lines; see Setup section. The Setup line letter, and mode number, are shown in parentheses following the name. Detailed descriptions of these modes can be found in the Appendix.

zBKCM Block Cursor Mode (A,31). Selects an underline or block cursor symbol.

zBNCM Blinking Cursor Mode (A,32). Causes the cursor symbol to blink.

zAPM Auto Pause Mode (A,38). Permits the operator to regulate the flow of data onto the Screen with the PAUSE key (if the host supports an Xon/Xoff protocol; see zAXM).

zSSM Slow Scroll Mode (A,39). Regulates the flow of data onto the Screen to a fixed rate of about 4 lines/second (if the host supports an Xon/Xoff protocol).

zAXM Auto Xon/Xoff Mode (B,37). Permits start/stop codes to be sent to the host to regulate the flow of data to the terminal.

zICM Invisible Cursor Mode (D,56). Inhibits display of the cursor symbol. Useful when using programs that generate their own cursor (such as spread-sheets).

zWFM Wrap Forward Mode (D,33). Permits the cursor to wrap forward at end of line (to the beginning of the next line).

zDDM DEL-character Display Mode (D,35). Permits display of the DEL-character (for systems that don't use DEL as a pad, or time-out, character).

zSPM Scroll-Page Mode (D,36). Inhibits additional data entry at end of Page.

LNM LF New Line Mode (D,20). Selects CTRL-J (LF) as the new-line code (instead of CRLF).

zCNM CR New Line Mode (D,55). Selects CTRL-M (CR) as the new-line code (instead of CRLF).

zACM Alternate Cursor Mode (-,51). Enables an alternate (aka blind) cursor. The alternate cursor may write anywhere in Display Memory, whereas the primary cursor is limited to the (working) Page.

Controls that Affect the Display

The following controls affect the display. The code sequence (that executes them) is shown in parentheses following the name. The code sequence may be generated by the host, typed from the keyboard, or programmed into a function key; see Programmable Strings section. Detailed descriptions of these controls can be found in the Appendix.

zTFC Toggle Fast-Blink Cursor (ESC 5). Toggles the cursor symbol between its 'normal' display (as selected by zBKCM and zBKNM) and a fast-blinking block, for operator attention or warning.

zSDP Set Display Parameters (ESC [ Pn..Pn p). Partitions both the Display Memory and Screen according to the parameters, Pn; see Display Definitions below. This control encompasses functions variously known as line lock, memory lock, split screen, etc.

SD Scroll Down (ESC [ Pn T). Moves the displayed text down (or the Window up) the number of lines specified by Pn (if the Window is smaller than Page; see Display Definitions below).

SU Scroll Up (ESC [ Pn S). Moves the displayed text up (or the Window down) the number of lines specified by Pn (if Window is smaller than Page).

SGR Set Graphic Rendition (ESC [ Ps..Ps m). Selects the graphic rendition (aka highlights, visual attributes, etc.) with which all following characters received will be displayed; see Highlighting the Display, below.

zCGR Change Graphic Rendition (ESC 9). Changes the graphic rendition of all following characters in the Page to that selected by the last SGR control. (If the terminal is in Forms mode, this control affects only the active area; see Forms section.)

Display Definitions

Certain terms are used in describing the Ambassador's display features. They are shown in the diagrams below, and defined following, to clarify their usage.

       DISPLAY MEMORY                             SCREEN
============================           ============================
|                          |           |                          |
|     UPPER HOST AREA      |           |     UPPER HOST AREA      |
|                          |           |                          |
|--------------------------|           |--------------------------|
|                          |           |                          |
|                          |           |          WINDOW          |
|          PAGE            |           |                          |
|                          |           |                          |
|                          |           |--------------------------|
|                          |           |                          |
|--------------------------|           |     LOWER HOST AREA      |
|                          |           |                          |
|     LOWER HOST AREA      |           ============================
|                          |           |  Status Line (Optional)  |
============================           ============================
|                          |
|     INACTIVE MEMORY      |
|                          |
============================
Display Memory

That portion of memory that is available to hold the results of keyboard and data transfer operations. The size of the Ambassador's Display Memory is 60 lines × 80 characters. It contains the following segments (starting from Display Memory address line 1): Upper Host Area, Page, Lower Host Area, and Inactive Memory.

Active Memory

That portion of Display Memory that is assigned to hold the results of subsequent keyboard and data transfer operations. It may be set to any size from 18 to 60 lines, inclusive, with the zSDP control (1st parameter). It is initialized to 60 lines at power-on.

Inactive Memory

The remaining (i.e. unassigned) portion of Display Memory.

NOTE: The zSDP control does not affect the contents of Display Memory; only the partitioning. Any data that was partitioned into Inactive Memory by a zSDP control can be retrieved by another zSDP control partitioning it into Active Memory.

Upper Host Area

The upper-most portion of Active Memory, declared to be outside of the operator's working Page. Its size may be set with the zSDP control (2nd parameter). It is initialized to 0 lines at power-on.

Lower Host Area

The lower-most portion of Active Memory, declared to be outside of the operator's working Page. Its size may be set with the zSDP control (3rd parameter). It is initialized to 0 lines at power-on.

Page

The portion of Active Memory between the Upper and Lower Host Areas. The minimum Page size is one line. (A zSDP control that attempts to leave a Page of less than 1 line is ignored.)

NOTE: The Page is the only portion of Display Memory that can be accessed, written, or affected (by erase/edit operations) with the primary cursor; see zACM (Alternate Cursor Mode).

Screen

The visible portion of Active Memory (i.e. what's seen on the CRT). It may be set to any of the following sizes with the zSDP control (4th parameter) – 18, 20, 22, 24, 26, 28, 30, 36, 40, 48, or 60 lines. It is initialized to 30 lines at power-on. It contains the following segments (starting from the top of the CRT): Upper Host Area, Window, Lower Host Area, and an optional Status Line.

Window

The portion of the Screen between the Upper and Lower Host Areas. (The Host Areas, and optional Status Line, are displayed in their entirety; what's left over is called the Window). The minimum Window size is 1 line. (A zSDP control that attempts to leave less than 1 line for the Window defaults to the smallest Screen size that permits it.)

NOTE: The Window is the only portion of the Screen that is affected by scroll and zoom operations.

Status Line

A line may be brought up to the bottom of the Screen to display terminal setups or to monitor received data; see Setup section. The content of this line is not stored in Display Memory (i.e. it does not use up one of the 60 lines). When the line is brought up, it displaces one line from the Window. When the line is removed, the displaced line returns to the Window.

NOTE: The zSDP control specifies the four parameters Active Memory, Upper Host Area, Lower Host Area, and Screen size. The sum of the Host Areas should be smaller than Active Memory and at least 2 lines smaller than Screen.

Writing the Display

The cursor marks the active position in the Page, i.e. the position at which the next character received will be displayed. The address space (for cursor positioning) is relative to the Page. Line 1 is always the top line of the Page. Line 1, column 1 (address 1,1) is the upper left corner of the Page (corresponding to cursor at Home). Address 1,80 is the upper right corner of the Page. Address N,80 is the last character position in the Page (where N is the number of lines set for the Page size).

The cursor is automatically positioned to Home at power-on (with the Display Memory erased), and by any zSDP control (with the Display Memory unchanged).

As each character is received, it is displayed, and the cursor moves to the next column on the line. A new-line control terminates the line and moves the cursor to the 1st column of the next line. New-line controls are NEL, and CRLF (if LNM and zCNM are reset) or CR (zCNM set) or LF (LNM set). If no new-line control is received, the cursor wraps from the 80th column to the 1st column of the next line (zWFM set), or remains in the 80th column and is overwritten by subsequent characters (zWFM reset).

If the Window is smaller than the Page, when the cursor reaches the bottom line of the Window, a new-line control (or cursor wrap) moves the Window down one line to retain the cursor in the Window.

When the cursor reaches the bottom line of the Page, a new-line control (or cursor wrap) moves all lines in the Page up one line. The (former) content of the top line of the Page is lost. The bottom line of the Page is erased, and the cursor positioned in its 1st column. (Note: if zSPM is set, the terminal is said to be in Page mode, and this 'memory scroll' action is inhibited.)

Thereafter (unless the cursor is re-positioned), all new lines received are written into the bottom line of the Page, the older lines scrolling upward in the Page, the oldest lines being lost off the top of the Page.

This action is viewed through the Window, which is displaying the bottom-most segment of the Page. The full Page can be 'zoomed' into the Window at any time, without interrupting the data flow; see Flow Control of Received Data. When the data flow is suspended, the Page can be viewed by moving the Window (either with or without moving the cursor); see Moving the Window.

Flow Control of Received Data

If the host supports an Xon/Xoff protocol (see zAXM), the Ambassador provides a powerful flow control capability that permits the operator to regulate the rate of display of incoming data. This includes an ability to start and stop the data flow (with the PAUSE key), to step the data onto the screen a line (or several lines) at a time (zAPM, Auto Pause Mode), and to regulate the display to a fixed line rate (zSSM, Slow Scroll Mode).

Pause Key

Incoming data is normally displayed as fast as it is received. At higher baud rates, especially with short lines, the data may pass through the window much too rapidly to be viewed. When this happens, simply hit the PAUSE key, to 'freeze' the display. If you missed something, zoom (or scroll) up to see it. Hit the PAUSE key again, and the display continues.

Auto Pause

The normal PAUSE key operation is useful for scanning a file, or getting quickly to a part you want, but to read the file, go into Auto Pause Mode. Hit CTRL-PAUSE (instead of just PAUSE). Again the display freezes but, this time, hitting the PAUSE key just steps the next line onto the screen. Type PAUSE again, and the next line appears. You can step through the data, a line at a time, by repeatedly typing the PAUSE key. (Note: The PAUSE key can be programmed to repeat; see Programmable Strings section. This is useful in Auto Pause Mode, but can be confusing in the normal operation of the PAUSE key.)

Alternatively, you can step through the file a window at a time by hitting SHIFT-PAUSE. This lets in (two lines less than) a window-full of new data. (The bottom lines of the previous window are retained as the top lines of the new window for context, and assurance that nothing was missed.) When you've finished reading what you wished, hit CTRL-SHIFT-PAUSE which resets Auto Pause Mode, and returns you to normal PAUSE key operation.

CTRL-PAUSE. Turns on Auto Pause.
PAUSE. Admits a new line of data to the screen.
SHIFT-PAUSE. Admits a new window of data to the screen.
CTRL-SHIFT-PAUSE. Turns off Auto Pause.

Slow Scroll

Before initiating display of the file, or any time you're Paused, you can set Slow Scroll Mode (Setup line A). This regulates the display of incoming data to a fixed line rate (of about 4 lines/second). This is particularly useful if the file consists mostly of short lines.

Setup Key

The SETUP key also suspends the incoming data flow, to let you change settings in the middle of a listing (e.g. to set and reset Slow Scroll Mode). Typing SETUP again (the normal Setup exit) re-starts it. Exiting with the letter M (Monitor), re-starts it with a Data Monitor line at the bottom of the screen (that permits viewing the actual codes, including control codes, being received; see Diagnostics section).

Zooming the Display

The Ambassador's unique 'ZOOM' capability permits either the operator or the host to control the number of lines actually displayed in the Window (up to the full Page).

Operator Control: The operator controls the Window with the MOVE UP and MOVE DOWN keys. CTRL- MOVE UP adds lines into the Window. CTRL- MOVE DOWN removes lines from the Window. As lines are removed, both the interline spacing and the character size increase. The operator may adjust the Screen for individual comfort and ease of viewing, yet 'zoom' the full Page onto the Screen for overall context when desired. These actions are transparent to the host; they do not affect the transfer of data or Display Memory addresses.

Host Control: The host controls the Window size with the zSDP control. The 4th parameter specifies Screen size (Window size being Screen size less any Host areas). The 4th parameter may be omitted if it is desired to repartition Display Memory without changing the Screen size. Similarly, omitting the 1st parameter, permits the Screen size to be changed (i.e. 'zoomed') without affecting the Display Memory partitions. Examples:

ESC [ 60 ; ; ; 30 p
Partitions Display Memory for a 60-line Page, with 0 lines of Inactive Memory. The Screen (and Window) displays 30 lines.

ESC [ 60 ; ; p
Partitions Display Memory as above, but leaves the Screen size unchanged.

ESC [ ; ; ; 60 p
Changes the Screen size to 60 lines, but leaves the Display Memory partitions unchanged.

Moving the Window (w/ Cursor)

If the Window is set to be smaller than the Page, the Window moves naturally with the cursor. Any attempt, by the operator or the host, to move the cursor outside of the Window causes the Window to move up or down within the Page so as to retain the cursor symbol within the Window.

NOTE: The host may write outside of the Window, whenever desired, by using the alternate cursor. The Window position is not affected by alternate cursor movements; see zACM.

Operator Control: The operator will normally move the Window with the HOME and cursor ARROW keys (on the Control keypad). The cursor keys are non-destructive; no data can be lost through their use.

Host Control: The host will normally position the Window with the CUP (Cursor Position) control. Examples:

ESC [ H ESC [ Pn H Pn >= Window size
This string positions the Window such that the line specified by the parameter, Pn, is displayed in the bottom line of the Window. Note: The Window may not be positioned above the top line of the Page.
ESC [ 99 H ESC [ Pn H Pn <= Page size - Window size + 1
This string positions the Window such that the line specified by the parameter, Pn, is displayed in the top line of the Window. Note: The Window may not be positioned below the bottom line of the Page.

Moving the Window (w/o Cursor)

The Window may also be moved without moving the cursor, i.e. without changing its position within the Page. However, if the Window is moved so that it no longer contains the cursor symbol, any attempt at entry by the operator, or cursor positioning by the host, will automatically re-position the Window to contain the cursor symbol.

Operator Control: The operator may use the MOVE UP and MOVE DOWN keys to locally move the window. MOVE UP moves the Window up (toward beginning of Page). MOVE DOWN moves the Window down (toward end of Page). SHIFT- MOVE UP moves the Window up several lines (2 lines less than a full window). SHIFT- MOVE DOWN moves the Window down several lines.

Host Control: The host may use the controls SU (Scroll Up) and SD (Scroll Down) to move the Window. Scroll up moves the text up (corresponding to moving the Window down). Scroll down moves the text down (corresponding to moving the Window up). In both cases, the text moves by the number of lines specified by the parameter. If there are not that many lines remaining to the top (or bottom) of page, the Window moves to the top (or bottom) of Page and stops.

Using the Host Areas

The Ambassador's Host Area capability permits one or more lines to be reserved at the top and/or bottom of the Screen for display of system status, operator menu data, table headings, etc. These lines are 'locked' on the Screen; they remain always displayed; data in the Window scrolls behind them. They cannot be accessed, written, or affected (by erase/edit operations) with the primary cursor (i.e. the operator's normal cursor).

Host areas are set (reserved) with the zSDP control (2nd and 3rd parameters). They may be reserved first, and then written into with the alternate cursor, or the selected lines may be written into first (with the primary cursor), and then reserved. (Recall that the zSDP control does not affect the contents of Display Memory – only its partitioning.) If the terminal is used in Monitor SRM (i.e. local entry), the host may freely write these areas (using the alternate cursor) without disrupting, or interfering in any way with, the operator's local entry. Examples:

ESC [ 60 ; 2 p
Reserves a 2-line Host Area at the top of the Screen. This might be used, for example, to capture the heading from a long file so that it remains displayed while you scroll through the rest of the file. (With the file heading displayed at the top of the screen, type this control to lock the heading on the screen. As with all Ambassador controls, if this were a frequent action, you could program the control into a function key, and execute it with a single keystroke. If your host won't echo Escape sequences, just program it as Local-only.)

ESC [ 60 ; 3 ; 5 p
Reserves a 3-line Host Area at the top of the Screen and a 5-line Host Area at the bottom. The displayed data scrolls between them.

ESC [ 60 p
Removes all Host Area status. The data that was in the Host Areas is still displayed, but is no longer protected from primary cursor operations.

Setting Up Multiple Pages

The Ambassador's Display Memory may be partitioned and used as independent pages with the zSDP, zPSH, and zPOP controls. The examples below partition the memory into 2 pages, with a 'swap page' string. Many other paging operations are possible. These examples merely illustrate the technique (and the versatility of the Ambassador's control set).

ESC [ 60 p ESC [ 30 t ESC [ 30 p
This string partitions the memory into two 30-line pages that may be used independently. Each time the string is executed, the pages are swapped, i.e. the active page becomes inactive, and the inactive page becomes active. Keyboard and data transfer operations affect only the active page. The inactive page cannot be accessed, written, or affected (by erase/edit operations) with the primary cursor. (The inactive page may be written by the host, if desired, with the alternate cursor; see zACM). The string may be sent by the host, or programmed into a function key for local execution (i.e. a SWAP PAGE key; see below).

ESC [ 60 ; 2 p ESC [ 29 t ESC [ 29 ; 2 p
This string partitions the memory into two 29-line pages with a 2-line Upper Host Area that is always displayed regardless of which page is active.

ESC [ 60 ; 2 p ESC [ 28 t ESC [ 29 H ESC [ 28 s ESC [ 32 ; 2 ; 2 p
This string partitions the memory into two 28-line pages with 2-line Upper and Lower Host Areas that are always displayed regardless of which page is active.

ESC P ` H y ~ [ [ 6 0 { P } ~ [ [ 3 0 { T } ~ [ [ 3 0 { P } ESC \
This string loads the first example into PF1 (making PF1 a SWAP PAGE key).

Setting Up Multiple Windows

In the examples above, only the active page is displayed. It is also possible to have multiple pages displayed, only one of which is active. In the first example above, if we had terminated the string with ESC [ 30 ; ; ; 60 p (instead of ESC [ 30 p), we would have found both pages displayed. In the example below, we divide the screen into three 20-line windows with strings that select which window is active, i.e. contains the cursor. The strings may be sent by the host, or programmed into function keys for local execution.

ESC [ 60 ; ; 40 ; 60 p – Selects window #1 (Lines 1-20)
ESC [ 60 ; 20 ; 20 ; 60 p – Selects window #2 (Lines 21-40)
ESC [ 60 ; 40 ; ; 60 p – Selects window #3 (Lines 41-60)

Using the Alternate Cursor

The Ambassador is equipped with two independent cursors – primary and alternate. Only one or the other may be in use at any given time (except, in Monitor SRM, local entries from the keyboard use only the primary cursor, whereas the host may use either). The alternate cursor is selected by going into Alternate Cursor Mode. This mode is not available on the Setup lines. It can be changed only with the SM/RM (Set/Reset Mode) controls. (The string ESC [ > 51 h sets it; the string ESC [ > 51 l resets it.)

The significant characteristics of the primary cursor:

  1. Its position is confined to the Page.
  2. Its position (in the Window) is noted with a visible cursor symbol.
  3. Erase and edit operations using the primary cursor affect only the contents of the Page.

The significant characteristics of the alternate cursor are:

  1. It can access all of Display Memory, including the Host Areas and Inactive Memory.
  2. Its position is not visible, even if writing into the Window.
  3. Erase and edit operations using the alternate cursor affect all of Display Memory.
  4. Controls that require a line number parameter may require a different parameter value depending on which cursor is used. Address 1 of the primary cursor points to the top line of the Page; address 1 of the alternate cursor points to the top line of Display Memory. These may differ by the number of lines of Upper Host Area. (Note: This was required because the ANSI standard does not provide for the transfer of negative parameters.)

Highlighting the Display

The Ambassador provides five distinct renditions for highlighting the display. The renditions may be used to highlight a particular group of characters (to call attention to them or to visually differentiate them from others on the screen), or it may be used to convey additional information about the characters (e.g. type style). This information may be transmitted to the host; see zGRTM (Graphic Rendition Transfer Mode).

Operator Control. No keys are normally assigned to the control of graphic rendition. If desired, the programmable keys may be used. Examples:

ESC P ` H ~ [ [ { M } ` I ~ [ [ 4 { M } ` T ~ [ [ 7 { M } ESC \
This string makes a PF1 a 'Start Normal' key, PF2 a 'Start Underscore' key, and SHIFT-PF1 a 'Start Reverse' Key; see Programmable Strings section.

ESC P ` H y ~ [ [ { M } ` I y ~ [ [ 4 { M } ` T y ~ [ [ 7 { M } ESC \
This string does the same, except that the strings are made Local-only (for hosts that won't echo the controls).

Host Control. The host uses the SGR control to control the rendition with which subsequent characters are written.

SGR Set Graphic Rendition (ESC [ Ps..Ps m). Sets a Graphic Rendition (GR) register according to the parameters. The contents of this register are appended to all characters subsequently entered or received, causing them to be displayed as Normal (Ps = 0), Bold (Ps = 1), Underscored (Ps = 4), Blinking (Ps = 5), Reverse (Ps = 7), or Concealed (Ps = 8), in any combination.

Bold is simply brighter than Normal. (The difference is adjustable; see Checkout & Installation section, Initial Turn-on.) Reverse gives black characters on a 'white' background. Concealed causes the characters to be displayed as Spaces (2/0). (Concealed characters are stored correctly, and may be transmitted or printed; they're just not visible.)

Examples:

ESC [ m Start Normal
ESC [ 1 m Start Bold
ESC [ 4 m Start Underscored
ESC [ 5 m Start Blinking
ESC [ 7 m Start Reverse
ESC [ 8 m Start Concealed (black spaces)
ESC [ 7 ; 8 m Start Concealed (white spaces)
ESC [ 1 ; 4 ; 7 m Start Bold, Underscored, and Reverse

Note that the renditions do not require separate locations in Display Memory, and may be freely applied by individual character. (The Ambassador's Display Memory is 12-bits-wide, divided 7-bits for character and 5-bits for rendition.)

Note also that the rendition is defined to be an attribute of the character being written, not of a character position in the Page. The rendition is simply part of the character. When the character is moved or erased, its rendition is moved or erased with it.

Unlike earlier generations of many terminals, the rendition carries no control attributes (e.g. 'dim' is not associated with 'protected'). The ANSI control DAQ (Define Area Qualifications) is reserved for setting control attributes; see Forms section. The SGR control sets visual attributes, the DAQ control sets control attributes, and the user is free to associate them in any way that may be desired.

The content of the GR-register is also appended to all Space codes (2/0) written or inserted by the Erase/Edit controls (see Editing Controls section), or inserted as the result of a memory scroll (see Writing the Display, above). The desired result follows naturally, whether working with a Normal or Reverse display. Note: Care is required when using a Reverse rendition to highlight a Normal display (or vice versa) and memory scroll is permitted (i.e. zSPM reset). If the last character of the line is written Reverse, the terminal assumes the intention is to continue Reverse (as it would be if working with a Reverse display) and scrolls up the blank line in that rendition.

The host may use the zCGR control to change the rendition of characters already written.

zCGR Change Graphic Rendition (ESC 9). Changes the graphic rendition of all following characters in the Active Area to that selected by the last SGR control. (The Active Area is the Page at power-on; see Forms section.)

Examples:

ESC [ 7 m ESC 9
This string, if given with the cursor in the Home position, clears the Page to Reverse (i.e. black characters on a 'white' background).

ESC P p ~ [ [ 7 { M } ~ [ 9 ESC \
Loads the preceding string into the non-volatile Power-on string so that the Screen comes up with a Reverse rendition each time the terminal is powered on (for users who prefer working in Reverse).