Page 3
(UJR7RXFK 7&6 'RFXPHQWDWLRQ 8SGDWHV 8SGDWH 'XDO6FDQ 3DVVLYH '63 &RORU /&' This amends the information supplied in the ErgoTouch TCS Installation Guide, Second Edition, December 1994. This information was originally published as Document 80-0437. ErgoTouch’s DSP display has been enhanced. Specifications for the new display are: 256 colors Display size: 8.43”...
7DEOH RI &RQWHQWV CHAPTER 1 GENERAL INFORMATION..................1-1 OVERVIEW ............................... 1-1 Features..............................1-1 About This Guide............................ 1-2 Related Documents..........................1-2 CHAPTER 2 INTERFACING TO THE HOST COMPUTER............2-1 INTRODUCTION ............................2-1 The Serial Interface ..........................2-1 Serial Data Composition ........................2-2 Communication Standards ........................
Page 5
COLOR TCS: SUMMARY OF COLOR PROGRAMMING..............3-24 Displaying and Erasing Color Characteristics ..................3-24 Highlighting Color Characters ......................3-24 Reversing Foreground and Background Colors .................. 3-24 Concealing Color Characters ......................3-25 Reading a Character’s Attributes......................3-25 Color Controls on the Setup Screen ..................... 3-25 CHAPTER 4 CONTROLLING THE SETUP SCREEN AND SERIAL INTERFACE ....
Page 6
OVERVIEW OF SCREEN MEMORY ....................... 5-5 Introduction ............................5-5 Referring to Screens ..........................5-5 Selecting a Screen for Editing ........................ 5-5 Screen Memory Allocation ........................5-6 Terminology: "Screen" vs. "Display" ..................... 5-7 SCREEN MEMORY COMMANDS ......................5-8 Initialize Screen Command {FIS} (Remote) ................... 5-9 Select Screen Command {FSS} (Remote) .....................
Page 7
Read Cursor Position Command [CPR] (Remote)................5-93 Read Character Under Cursor Command {FRCUC} (Remote) ............5-94 Read Attributes Under Cursor Command {FRAUC} (Remote) ............5-96 Cursor Type Command [FCT] (Local/Remote) ................... 5-98 SCREEN APPEARANCE COMMANDS ....................5-100 Screen Background Mode Command (DECSCNM) (Local/Remote)..........5-101 Display Activity Command {FDA} (Local/Remote)................
Page 9
APPENDIX D IN CASE OF DIFFICULTY..................D-1 INTRODUCTION ............................. D-1 SYMPTOM/SOLUTION CHART ......................D-1 COMMON PROGRAMMING PROBLEMS .................... D-8 Interaction Between Polled Touch Mode and the Read Touchkey Status Command ......D-9 Interaction Between Reporting Format and the End Of Line Character ..........D-10 Interaction Between Origin Mode and Scrolling Region ..............
Page 10
/LVW RI 7DEOHV Table 2-1. Framing Formats ......................2-2 Table 2-2. Touch Control Screen Parity Settings ................. 2-4 Table 3-1. Control Codes Recognized by the TCS............... 3-3 Table 3-2. Representing 8-bit Control Codes With 7-Bit Escape Sequences ......3-5 Table 3-3. Condition for Acceptance of Certain Control Codes within Control Strings ... 3-12 Table 3-4.
Page 11
Table 7-5. Auxiliary Keypad Codes ..................... 7-7 Table B-1. Summary of TCS Commands Grouped According to Related Functions....B-2 Table C-1. Static ASCII Character Font..................C-2 Table C-2. Static Special Character Font ..................C-3 Table C-3. Consequences of Changing the Static ASCII Character Font PROM....... C-5 Table C-4.
Page 12
/LVW RI )LJXUHV Figure 2-1. Typical Asynchronous Framing Format ..............2-3 Figure 4-1. Sample Communication Monitor Screen..............4-34 Figure 5-1. Codes Access the Character Sets ................5-3 Figure 5-2. Selecting a Screen for Editing ................... 5-6 Figure 5-3. Manipulating Character Sets and Fonts ..............5-24 Figure 5-4.
The Touch Control Screen (TCS) is a sophisticated interface between human operators and computer-driven systems. The TCS allows the operator, with a minimum of training, to accurately and efficiently control complex operations by touching the screen. The Touch Control Screen interprets codes from the host computer to create displays that provide the operator with information or ask the operator to select from the choices presented.
Integral touch panel with a 120 touch cell matrix (12 rows by 10 columns) Keyboard port with adapter cable for connection to a standard PC-AT keyboard High contrast electroluminescent (EL) or Dual Scan Passive (DSP) color display that can display 1920 characters (24 lines of 80 characters each) RS-232 serial interface port with selectable baud rates in standard increments up to 19,200 baud RS-422 and RS-485 serial interface port for communication at distances of up to 1200 meters...
Page 15
This chapter provides information about communication between the Touch Control Screen (TCS) and host computer. Topics include: A description of serial data Electronics Industries Association (EIA) standards RS-232-E, RS-422-A, and RS-485 TCS error checking methods, including buffer overflow control A summary of TCS communication parameters that can be set by the user Multidrop communication protocol The TCS and the host computer communicate by a serial interface, whereby information is exchanged between devices as a series of binary codes known as bit-serial data.
Page 16
Serial data can be transmitted in either a synchronous or asynchronous timing format. In a synchronous format, individual codes in the message are synchronized to a clock signal and sent one after another, without any special bits separating them. Start and stop codes mark the beginning and end of each message block, but start and stop bits are not sent with each code.
Page 17
6WDUW %LW 2SWLRQDO 3DULW\ %LW ,GOH 6WRS %LWV ,GOH 'DWD %LWV NOTE In Figure 2-1, indicates a space (logical zero) and indicates a mark (logical one). However, on the RS-232 line itself these are inverted, so a mark is a low voltage and a space is a high voltage.
Page 18
By setting two TCS parameters (Parity Enable and Parity Sense), the parity bit can be used in five ways, as shown in Table 2-2. Instructions for setting the Parity Enable and Parity Sense parameters are provided in the Installation Guide, under Using the Setup Screen.
Page 20
The TCS adheres to three widely used Electronics Industries Association (EIA) standards: RS-232-E, RS-422-A, and RS-485. RS-232-E is the most widely accepted standard for digital data communication; few pieces of computer-related equipment are supplied without an RS-232- E port. However, RS-232-E is not suitable for all installations. Generally, RS-422-A and RS-485 provide for communications over longer distances and provide for multidrop configurations.
The RS-232-E standard defines the electrical and mechanical characteristics of an interface between data terminal equipment (DTE) and data communication equipment (DCE) that uses serial binary data interchange. NOTE The TCS is data terminal equipment (DTE) as described by the RS-232-E standard. As a DTE unit, the TCS is connected to data communication equipment (DCE), such as a modem.
Page 22
Request to Send (CA) (Output) In the TCS, Request to Send (RTS) is always on immediately after the power-up sequence and self-tests have finished executing. RTS remains on except during a reset, a long break, or if the power to the TCS is switched off. NOTE This use of Request to Send complies with the RS-232-E standard but precludes operating the TCS in half-duplex mode.
Page 23
The unbalanced interface defined by the RS-232-E standard is suitable for many installations. But for installations requiring increased line lengths, especially at high data rates, problems begin to emerge. It becomes difficult to distinguish between valid data signals and noise due to ground shifts or electromagnetic interference.
Because communication with the host computer occurs over a serial hardware link, noisy or faulty connections can possibly corrupt the data stream and introduce errors. The TCS uses techniques to minimize the possible effects of several types of communication errors. In particular, to maintain communication integrity, the TCS monitors and reports the following types of errors: Framing Error...
Page 25
Regardless of the state of the XON/XOFF mode, the TCS can stall and unstall the host only after two-way communication of control codes is established. Two-way communication of control codes occurs when multidrop operation is disabled, multidrop is enabled and TCS is addressed individually, or when multidrop is enabled and TCS 1 is addressed in broadcast mode.
Page 26
When the TCS address is changed from RS232 or RS485 to a multidrop address and the host has been stalled. The TCS address is changed to RS232 or RS485, the TCS was not addressed for two-way communication, and the input buffer is less than 75% full. When XON/XOFF mode is on, the user can manually unstall the host by pressing Ctrl/Q on the optional keyboard, as long as the host is not in a stall condition as a result of a filled TCS input buffer.
This chapter provides a general overview of Touch Control Screen (TCS) programming. Topics include: Coding standards Communication environments Communication codes Character sets TCS commands A general description of control strings How to generate remote commands from the host A summary of TCS status reports A summary of selectable modes Detailed descriptions of the TCS Mode commands Except for the TCS Mode commands, which are described in this chapter, commands mentioned...
Page 28
The TCS can communicate with the host using either 7 or 8 data bits. The number of data bits is selected by setting the Data Bits parameter in the Setup Screen. (See the Data Bits command in Chapter 4.) When the TCS is set for 7-bit communication, the TCS sends and receives 7-bit codes. Seven-bit communication allows the host and the TCS to send and receive the lower 128 codes directly.
Page 29
Of the 66 control codes reserved by ANSI, the TCS acts upon those listed in Table 3-1. Any other control codes received by the TCS are ignored (except as described later in this chapter under the heading, Errors in Control Strings).
Because only half of the control codes can be sent using 7-bit codes, ANSI created a mechanism to allow each 8-bit control code to be specified by an equivalent 7-bit escape sequence as shown in Table 3-2. This allows full access to all control codes, regardless of whether the TCS and host are communicating using 7- or 8-bit codes.
Characters in either character set corresponding to control codes cannot be directly displayed. These characters must be displayed by other means, as described previously in this chapter under the heading, Control Codes. See Chapter 5 for additional information about using graphic codes to display characters, Touch Control Screen commands are the actions that the host or user can take to control the TCS.
Page 32
1n addition to these actions, the user can cause the TCS to send codes to the host by pressing the touch panel or typing on the keyboard. However, these actions are not referred to as local commands. Remote commands are those sent by the host to the TCS over the serial interface. Remote commands are used to control the interface between the TCS and the user (for example, displaying characters on the screen, defining touchkeys, changing character attributes, and barring the user from the Setup Screen).
An ANSI standard control string is a remote command that consists of a special sequence of two or more codes starting with the Escape code <ESC>, the Control Sequence Introducer code <CSI>, or the Device Control String code <DCS>. Control strings provide the host with commands that control the TCS.
Page 34
The general format for a control sequence is: <ESC>[<Pr><P1>;<P2>;...;<Pn><F> <CSI><Pr><P1>;<P2>;...;<Pn><F> where: <ESC> [ Control Sequence Introducer <CSI> Control Sequence Introducer <Pr> Optional private command code (?>) <P1> First optional parameter <P2> Second optional parameter <Pn> Last optional parameter <F> Final code A control sequence always begins with the Control Sequence Introducer and ends with a Final code.
Page 35
A control sequence parameter is a string of the codes representing 0 through 9. The TCS interprets the string of digits as a decimal number. Leading zeros are ignored. If a control sequence contains more than one parameter, the parameters must be separated by semicolons (;) (decimal 59).
The command is ignored because the parameter designating the bottom line of the scrolling region (4) is less than or equal to the parameter designating the top line (22). Numeric parameters outside the valid range are ignored or limited within a reasonable range, as specified in the detailed description of each command.
Page 37
2. Command Lookup The TCS looks up a command using the combination of the control sequence’s private command code, the Final code, and possibly the first parameter. The TCS does not have a command for every possible control sequence combination. If the TCS has a corresponding command, the TCS accepts the parameters and performs the command.
Page 38
How remote commands are sent from the host computer to the TCS depends entirely on the specific host computer and application software. Different computers and application programs can handle RS-232-E, I/O (input/output) communication differently. The following examples of code fragments show how the BASIC and C programming languages could be used to generate a control string.
Page 39
The host can query the TCS for a wide range of status reports. The status reports allow the host to read the contents and attributes of the TCS display, sense touch call closures, and verify that the TCS is operating properly. The host can query the TCS for the following information: The cursor position The character under the cursor...
Page 43
A TCS mode is a state that can be set or reset by the host or user to control TCS operation. The TCS supports several modes specified by the ANSI standard. In addition, the TCS supports several DEC-private and TCS-private modes. Table 3-4 provides a summary of these modes. NOTE All TCS modes are fully compatible with the ANSI standard, which provides for the use of private modes.
TCS Mode commands set or reset one or more TCS modes. The TCS Mode commands are: Reset Mode (Remote) Set Mode (Remote) These commands are described in detail in the following pages. For ease of reference, each command description begin on a new page. NOTE Where applicable, command names are followed by the appropriate mnemonic.
Page 46
The Reset Mode command allows the host to reset one or more TCS modes of the same type (ANSI-specified, DEC-private or TCS-private). A detailed description of each TCS mode is provided with the description of the respective mode command in Chapter 4. Each mode has its own default value.
Page 47
<ESC>[2;12l Resets the ANSI-specified modes, Keyboard Lockout Mode [KAM] and Send-Receive Mode [SRM]. <ESC> [? 5 l Resets the DEC-private mode, Screen Background Mode (DECSCNM). <ESC> [> 3;1l Resets the TCS-private modes, NOCHANGE Attribute Mode {FNCAM} and Polled Touch Mode {FPTM}. 3-21...
Page 48
The Set Mode command allows the host to set one or more TCS modes of the same type (ANSI- specified, DEC-private or TCS-private). A detailed description of each TCS mode is provided with the description of the respective mode in Chapter 4. Each mode has its own default value.
Page 49
<ESC>[20h Sets the ANSI-specified mode, New Line Mode [LNM]. <ESC>[?7h Sets the DEC-private mode, Auto Wrap-Around Mode (DECAWM). <ESC>[>4;5h Sets the TCS-private modes, Power-Up Interrupt Mode (FPUIM) and Setup Lockout Mode (FSULM). 3-23...
Page 50
The color TCS has eight basic colors programmed in Read-Only Memory (ROM): black, red, green, yellow, blue, magenta, cyan, and white. For each character on the display, the foreground color and background color can be programmed independently. The character colors are handled like any other character attributes, except they can be selected locally from the Setup Screen, as well as remotely with the Set Command Attributes command.
Page 51
Colors can be concealed using the Set Character Attributes command to do two functions: select a conceal color select the concealed attribute for any characters you wish to temporarily conceal Any of the eight basic colors can be selected as the conceal color. Normally, the conceal color should be the same as the background color used for most of the screen.
This chapter describes the commands that control the Setup Screen and serial interface in the Touch Control Screen (TCS). Topics include: An overview of the volatility of TCS functions Setup Screen programming considerations Setup Screen commands Communication commands The Setup Screen commands control the user’s access to the Setup Screen. They can also be used to save, recall, or reset Setup Screen parameters remotely.
The following paragraphs explain how the host can interact with the Setup Screen. For Setup Screen operating instructions, refer to the Installation Guide. For additional information about particular modes, refer to the table "Summary of TCS Commands" in Chapter 3 of the Application Developer’s Guide.
Page 57
While the Setup Screen is displayed, the TCS continues to receive codes from the host but does not display or otherwise act on them. The TCS stores the codes until its input buffer is 75% full, at which time the TCS stalls the host. When the Setup Screen is exited, the TCS interprets the codes received from the host during the Setup session and unstalls the host.
Page 58
The Recall Setup command replaces all the Setup parameters with the values stored by the last Save Setup command. Recall Setup is executed when the user presses RECALL on the Setup Screen (or types Shift/R on the keyboard), or when the host sends the remote command Recall Setup.
Page 59
The Setup Screen and its subscreens are displayed using the white foreground and blue background whenever the Setup Screen is entered. The numeric values shown in the above table indicate the colors last set by the Set Character Attributes Command for the screen that was displayed before entering the Setup Screen.
Page 60
To ensure that the Setup parameter values currently in use are saved while the TCS is turned off, a Save Setup command must be executed. The Save Setup command causes the TCS to store the Setup parameters in nonvolatile Setup memory for automatic recall at the next power-up. (The Save Setup command is described in detail later in this chapter.) The programmer should be aware of three special cases regarding the permanence of changes to operating parameters:...
Page 61
The Setup Screen commands are used to control the user’s access to the Setup Screen, and to save, recall, or reset Setup parameters remotely. The Setup Screen commands are: Setup Lockout Mode (Remote) Save Setup (Local/Remote) Recall Setup (Local/Remote) Reset (Local/Remote) Setup Screen commands cannot be used to set Setup Screen parameters individually.
Page 62
The Setup Lockout Mode command allows the host to lock the user out of the Setup Screen. This command is useful when the other methods of preventing the user from changing Setup Screen parameters (locking the entire keyboard or making the SET UP switch inaccessible) are inappropriate.
Page 63
The Save Setup command saves the current values of the Setup parameters in nonvolatile Setup memory. The saved Setup parameter values are automatically recalled when the TCS is turned on or when a Recall Setup command or Soft Reset command is issued by the user or host. The user issues the Save Setup command by entering the Setup Screen and pressing the SAVE touchkey or typing Shift/S on the optional keyboard.
Page 64
The Recall Setup command allows the user or host to recall the Setup parameters that were in effect when the Save Setup command was last executed. When the Recall Setup command is issued, the Setup parameters in effect at the time are overwritten by the most recently saved Setup parameters.
Page 65
The Reset command allows the user or host to reset the TCS. The host can perform a soft or hard reset. CAUTION A hard reset deletes stored screens and reinitializes the dynamic character fonts. The user can perform the soft reset only. Table 4-1 summarizes the effects of the hard and soft resets.
Page 66
When performing a soft reset remotely, use caution to avoid accidentally disrupting the communication between the TCS and the host. A soft reset reinitializes the host interface communication parameters such as Baud Rate, Data Bits, or Parity Sense, using the values saved by the most recent Save Setup command.
The Communication commands have three functions: configuring the serial interface to meet the communication requirements of the host selecting whether the TCS accepts remote commands from the host computer or from the keyboard clearing user inputs For a description of the serial interface, refer to Chapter 2, Interfacing to the Host Computer. The Communication commands are: Address command (Local) Baud Rate command (Local)
Page 68
The Address command is used to specify the interface or when connected to the host in a multidrop configuration to set the address to which the TCS responds. In RS-485, the address determines when and if the TCS is allowed to transmit over the communication link.
Page 69
FRQWLQXHG If the address is set to “RS232” or “RS-422” the TCS and host communicate as if they were the only devices on the communication link. The TCS leaves its transmitter connected to the communication link at all times, except during power-down and reset. If the address is set to any value 1 through 32, the TCS operates using multidrop protocol and responds to the address chosen.
Page 70
Refer to Chapter 2, Multidrop Communication Protocol for a complete description of the purpose, implementation, and implications of multidrop protocol. “RS232” The user sets the address by entering the Setup Screen and setting the Address parameter to the desired value using touchkeys or the optional keyboard. None.
Page 71
The Baud Rate command sets the transmission and reception speed to one of eight baud rates. The baud rate is selected by setting the Baud Rate parameter on the Setup Screen to one of the following values: 110, 300, 600, 1200, 2400, 4800, 9600, and 19200. The baud rate setting selects both transmit and receive rates.
Page 72
The Data Bits command selects either seven or eight data bits per ASCII code. The number of data bits is selected by the user, who sets the Data Bits parameter on the Setup Screen to either 7 or 8. If the Data Bits parameter is set to 7, the next seven bits (following the start bit) received over the host serial interface are interpreted as data.
Page 73
The Parity Enable command enables or disables parity checking and generation. (For an explanation of parity checking, see Parity Bit, in Chapter 2.) Parity checking and generation are enabled or disabled by setting the Parity Enable parameter on the Setup Screen to one of the following values: ignore When Parity Enable is set to "on,"...
Page 74
The Parity Sense command determines whether the TCS uses odd or even parity checking and generation for communication with the host. (For an explanation of parity checking, see Parity Bit, in Chapter 2.) Parity checking is only active when Parity Enable is set to "on." Parity generation is active only when Parity Enable is set to "on’’...
Page 75
The Stop Bits command sets the TCS to send and receive codes with either one or two stop bits. The number of stop bits is selected by setting the Stop Bits parameter on the Setup Screen to either 1 or 2. If the Stop Bits parameter is set to l, then only one stop bit per code is used for both transmitting and receiving over the host serial interface.
Page 76
The XON/XOFF Mode command sets or resets the TCS XON/XOFF Mode. On the Setup Screen, the user can select one of the following parameters: The XON/XOFF Mode determines whether the TCS uses XON and XOFF codes for communication flow control. Regardless of the XON/XOFF Mode setting, the TCS always uses the SRTS and CTS control lines for flow control, if they are connected to the host.
Page 77
On. (XON/XOFF Mode is enabled.) The user selects the XON/XOFF Mode by entering the Setup Screen and setting the XON/XOFF Mode parameter to the desired value using touchkeys or the optional keyboard. None. (This is a local command only.) 4-26...
Page 78
The Local/Remote Mode command controls whether the TCS accepts remote commands from the host computer or from the optional keyboard. The Local/Remote command sets the TCS either to the Remote Mode (in which the TCS accepts remote commands from the host) or to the Local Mode (in which the TCS accepts remote commands from the keyboard).
Page 79
The Hardware Handshake command determines which RS-232 handshake signals must be asserted before the TCS will transmit. In RS-232 systems, both CTS and DSR must be asserted before the terminal can transmit. This causes problems in three-wire systems (RX, TX, and GND) where CTS and DSR are not supported.
Page 80
The Transmit Mode command set the transmit buffer mode of the TCS. The UART in the TCS has a two character transmit buffer. When the host stalls the TCS, the terminal will terminate transmission after the transmit buffer is emptied. In some systems, the host is not capable of buffering 2 characters after it has stalled the host.
Page 81
The Reporting Format command allows the host to specify non-standard introducing codes and a terminating code for all report sequences generated by the TCS. This command allows the programmer to tailor TCS reports to match the format required by a particular host computer.
Page 82
NOTE If <P1> or <P2> are omitted, their places must be held with semicolons. For example, to select the default value for <P2>, use the command <ESC>[<P1>;;<P3>w. <P1> and <P2> substitute for previous introducer codes; <P3> does not. <P3> is appended after the existing final code.
Page 83
The Clear User Inputs command allows the host to clear the output buffer of the TCS. The TCS output buffer contains user input not yet transmitted to the host, and any untransmitted responses to the host’s queries for status information. This command is useful when the host wants to ensure that the user’s input stays in step with data the host is displaying, even if the host becomes busy for a moment and lags in reading input from the user.
The Communication Monitor provides easy troubleshooting of communications between the host and TCS. Once the Communication Monitor is entered, the TCS translates all codes that cross the communications link directly into their equivalent characters for display. While the Communication Monitor is active, codes sent from the host do not affect TCS programming and host report requests are ignored.
Page 85
If the default mapping is not in effect for the Displayed Screen, the TCS displays whatever character corresponds to the code crossing the communication link, according to the character font mapping in effect. See Chapter 5 for details about character font mapping. When characters have filled a line to the right margin of the TCS display, the TCS auto-wraps subsequent characters to the next line.
For example, if a <BEL> code (ASCII 07 hex) is received from the host, and default character font mapping is in effect, the Communication Monitor displays but the beeper is not sounded. Two types of control codes are both displayed and acted on: Stall and unstall codes continue to control the data flow between the host and the TCS.
Page 87
If the keyboard or touch panel were locked out before entering the Setup Screen, they will remain locked while in the Communication Monitor. Exiting the Communication Monitor to the Setup Screen will cause the keyboard or touch panel to be temporarily unlocked if either one was locked.
Page 88
This chapter explains how to display characters on the Touch Control Screen (TCS) and alter the appearance of the screen. Topics include a description of the available character sets and related commands. For clarity of organization and ease of reference, the command descriptions are organized into six functional groups: Screen Memory Commands Character Set and Character Font Commands...
Because each character set contains 128 characters, graphic codes with values less than 128 decimal (80 hexadecimal) display characters from within the Standard Character Set. Graphic codes with values greater than or equal to 128 decimal (80 hexadecimal) display characters from within the Extended Character Set.
Page 90
An area within each screen is defined to be a scrolling region. This is so characters can continue to be displayed without running off the bottom of the screen. When new characters are to be displayed and the cursor has advanced to the bottom line within the scrolling region, the area of the screen known as the scrolling region “scrolls.”...
Page 91
The following example shows how format effectors are typically used during the display of characters. If the host sends: <CR>Display a string<CR><LF><HT>here! Assuming the cursor does not attempt to move below the bottom of the scrolling region or screen (and that New Line Mode is reset), the TCS displays: Display a string here!
Page 92
The TCS can locally store multiple screens of information for later display upon host command. Each screen contains a complete set of display data and touch-panel programming representing a stand-alone user interface. This advanced capability allows the host to dynamically change the entire user interface quickly, a capability that has many uses: In menu-based systems, the host can rapidly call up entirely new menus as the user makes new selections.
Displayed Screen Screen 0 Selected Host Screen Screen 0 Screen 0 Stored Screens (Invisible) Screen 0 Figure 5-2 shows how the multiple screens within the TCS are arranged. Notice that the host is always editing the Selected Screen, which can be the Displayed Screen (Screen 0) or any of the stored screens.
Page 94
Commands that modify the display data or touch-programming within a screen often use the terms "screen" and "display" interchangeably. In both cases, the command affects only the screen that is currently selected for editing by the host. Since in the majority of instances the host sends such commands when the Displayed Screen is selected, the effects of the command are indeed visible on the display of the TCS.
Seven commands create, modify, delete, and indicate the status of screens stored in memory. All screen commands are Remote; the host can issue them but the user normally cannot. Remote commands can be issued by the user at the TCS only by first setting Local Mode. The screen memory commands are: Initialize Screen command (Remote) Select Screen command (Remote)
Page 96
The Initialize Screen command returns a screen to the default state. When changes have been made to a screen, the Initialize Screen command prevents the host from having to send all the individual commands needed to return the screen to its default state. The Initialize Screen command loads all screen-dependent items within a screen with their default values shown in Table .
Page 97
None. (This is a remote command only.) <ESC>[3s None. <ESC>[2;20s <ESC>[3s These commands first select, then initialize Stored Screen 20 with the default values. If screen 20 existed before being selected, the initialization command reinitializes it with the default values. If screen 20 did not exist, the Select Screen command creates it and initializes it, so there is no need to send a separate Initialize Screen command.
Page 98
The Select Screen command provides a way for the host to edit a screen without necessarily changing the Displayed Screen. After this command is issued, all screen-dependent commands have an effect only on the selected screen; other screens are not affected. The screen-dependent commands are: Screen Appearance Commands Screen Background Mode {DECSCNM}...
Touchkey Visual Extent {FTKVE} Touchkey Audible Attribute {FTKAA} Character Displaying Commands Display Double-Width Line {DECDWL} Display Double-Size Line {DECDHL} Display Normal Line {DECSWL} Place Double-Size Line {FDSL} Erase Character [ECH] Erase in Line [EL] Erase in Display [ED] Draw Bar for Bar Chart {FDBB} Region Commands Outline a Touchkey {FOTK} Outline a Region {FOR}...
Page 100
When the host selects a stored screen, the Displayed Screen is still available for user input: Touch reports sent to the host as a result of touchkey activity or in response to the Read Touchkey Status command reflect the touchkeys that are part of the Displayed Screen. All automatic visual or audible responses associated with user activation of touchkeys still occur even while the Displayed Screen is not selected.
Page 101
Use care when editing a stored screen if the screen memory is almost full (see the Read Screen Memory Remaining command). Changing text, attributes, or touch programming may increase the complexity of the screen and require more memory space. This situation can cause an Memory Full error when the next screen is selected if there is not enough memory to store the currently selected screen.
Page 102
The Copy Screen command copies the contents of one screen to one or more other screens. The command copies all values, modes, display data, and touch programming. The Copy Screen command is used as follows: To display a stored screen, copy it into the Displayed Screen. To save the Displayed Screen, copy it into a stored screen.
Page 103
None. (This is a remote command only.) <ESC>[1;<Psrc>;<Pdest>;... ; <Pdest> s <Psrc> is a numeric parameter from 0 through 256 that specifies the number of the source screen. The Displayed Screen is 0 and stored screens are non-zero. If <Psrc> is omitted, 0 is used, and the Displayed Screen is the source. <Pdest>...
Page 104
The Delete Screen command deletes one or more stored screens. When a screen is deleted, the memory used to store it becomes available for storing other screens. It is not possible to delete the Displayed Screen because it always exists. None.
Page 105
The Delete All Screens command deletes all the stored screens. CAUTION Use the Delete All Screens command with care because all stored screens will be lost. None. (This is a remote command only.) <ESC>[5s <ESC>[5s Delete all existing stored screens. 5-18...
Page 106
The Read Screen Memory Remaining command provides a way for the host to determine how much space is available for creating new screens. Since memory can become too full for any more screens to be created, it is sometimes helpful to know how close the TCS is getting to its screen memory limits.
Page 107
<ESC>[> 10n Host requests a report of screen memory remaining. If no screens have been stored yet, the TCS responds: <ESC>[> 10;0;0;94464n <ESC>[>10n Host requests a Screen Memory Remaining Report. If almost all of screen memory has been used up, the TCS responds: <ESC>[>10;56;93758;0;606n Even though the TCS reports that there is no room for more screens, the host may still be able to create a screen as long as it is not too complex to fit within 606 bytes.
Page 108
The Read Screen Existence command provides a way for the host to determine if a particular screen exists. The command inquires about the existence of one screen at a time. The Displayed Screen always exists; any other screen exists only if it was stored in nonvolatile screen memory before power-up or if the host created it since power-up by referring to it in one of the following commands: Initialize Screen Command...
Page 109
<ESC>[> 12;87n Host asks if screen 87 exists. If this screen does not currently exist the TCS responds: <ESC>[>12;0n <ESC>[>12;1n Host requests whether screen number exists. If this screen exists, the TCS responds: <ESC>[>12;1n <ESC>[>12n Host is requesting if the Displayed Screen exists. The Displayed Screen always exists, so the TCS responds: <ESC>[>12;1n 5-22...
Because the contents of the Standard and Extended Character Sets determine how characters appear when graphic codes are sent by the host, the TCS allows the contents of these two character sets to be altered by the host program at will. To facilitate changes to the character sets, the TCS contains four character fonts which, in conjunction with the character sets, can be used to dynamically alter the appearance of characters displayed by the TCS.
Page 111
Unless the host specifies otherwise, Dynamic Character Font 1 contains a copy of the Static ASCII Character Font and Dynamic Character Font 2 contains a copy of the Static Special Character Font. The default contents of these two fonts are shown in Appendix C. To change the appearance of characters on the display, several commands allow manipulating the contents of the character sets and character fonts.
Page 112
the designated character set so the contents of the character set match that of the character font. 4. If the host subsequently changes the contents of a dynamic character font that is mapped into one of the character sets, the change is reflected immediately in the appropriate character set and appears on the display.
Page 113
The dynamic character fonts are automatically stored in non-volatile memory. This ensures that the dynamic character fonts have the same volatility characteristics as the stored screens that use them. The following pages describe the commands that operate on the Character Sets and Character Fonts: Select Character Set command (Remote) Map Character Font command (Remote)
Page 114
The Select Character Set command provides the mechanism for addressing the Extended Character Set when the serial interface is set to operate with seven data bits. When seven data bits are used, the Standard Character Set and the Extended Character Set are both represented by the codes 0 through 127, decimal (0 though 7F, hex).
<SO> Shift Out 14 decimal, E hex) Selects the Extended Character Set. <SI> Shift In, 15 decimal, F hex Selects the Standard Character Set. When the Extended Character Set is selected, this command has priority over any National Replacement Code (NRC) that may be in effect. Codes are shifted out to the Extended Character Set and are not affected by the NRC.
Page 116
Standard Extended Character Character Default Default Static Static Dynamic Dynamic ASCII Special Character Character Character Character Font 2 Font 1 Font Font The Map Character Font command allows the host to map any of the four character fonts into either of the two character sets. This allows the contents of the Standard and Extended Character Sets to be dynamically altered.
Page 117
When a character font is mapped into a character set, it is as if the contents of the character set have been temporarily replaced with those of the character font. However, it is more than just a copy operation because subsequent changes to the character font are immediately reflected in the character set.
Page 119
FRQWLQXHG The Static ASCII Character Font is mapped into the Standard Character Set. The Static Special Character Font is mapped into the Extended Character Set. None. (This is a remote command only.) <ESC> (0 map the Static ASCII Character Font into the Standard Character Set (default) <ESC>...
Page 120
indicating communication errors. Because of the possible confusion this could cause, this command is not recommended.. <ESC>)3 Map the Static Special Character Font into the Extended Character Set. This is the default condition. <ESC>)2 Map Dynamic Character Font 2 into the Extended Character Set. Mapping a user-defined character font into the Extended Character Set is a convenient way to customize the appearance of the box characters used by the Outline a Region and Outline a Touchkey commands.
Page 121
The Copy Character Font command allows the host to initialize the contents of the dynamic character fonts. This command might be issued as the first step in creating a new dynamic character font. The Copy Character Font command allows the contents of any of the four character fonts to be copied into either of the two dynamic character fonts as shown in Figure 5-5.
Page 122
<Pdest> = omitted or 0: Not a valid destination font 1: Dynamic Character Font 1 2: Dynamic Character Font 2 3: Not a valid destination font The Copy Character Font command is ignored if an attempt is made to copy into one of the static character fonts, which cannot be changed.
Page 123
The Down-Line Load Character Font Command allows the host to place custom characters into Dynamic Character Fonts 1 and 2. Then, when the dynamic character font is mapped into the Standard or Extended character set, the custom characters can be displayed. For example, to create a dynamic character font that is only slightly different from the Static ASCII Character Font, one method is to use the Down-Line Load Character Font command to down-line load an entire new font of 128 characters into the Dynamic Character Font.
Page 124
It might seem that the simplest way to encode this character for transmission is to send 10 bytes with each of the 8 bits in the byte representing a dot. There are two reasons why this method is not acceptable: 1.
Page 125
Convert the binary values of each column to ASCII characters. Column codes are restricted to the range of 63 through 126 decimal (? to ~), so add an offset of decimal 63 (binary 111111) to each column value. Thus, the lowest binary value (000000) becomes decimal 63 (0 + 63); the highest binary value (111111) converts to decimal 126 (63 + 63).
Page 126
To down-line load a custom character font, do the following: 1. Design the characters in a matrix 8 dots wide by 10 dots high. 2. Divide the characters into 2 sets of 8 sixels each sixes having 6-bit positions. The upper set is complete (6-bit sixels) and the lower one is made up of 4-bit sixels.
Page 128
A second shortcut might be to use a program to convert the bit patterns into the sixel codes. The following example program asks for 8 upper sixels, then for 8 lower sixels. The resulting codes are stored as characters in a string, and then displayed. The program could be enhanced by using the character string directly in a properly formatted Down-Line Load Character Font command.
Page 129
‘ IF MID$(pixrow$(row%),column%,1)= “*” THEN pixelon%= 1 ‘ ‘ Adjust value if pixel is on. ‘ IF pixelon% = 1 THEN sixel% = sixel% + binval%(row%) ‘ ‘ Add correct binary value if ‘ the pixel is on (if the pixel ‘...
Page 130
None. (This is a remote command only.) <ESC> P <Pfn>;<Pcn>;<Pe>{<Sxbpl>;<Sxbp2>;... ; <Sxbpn> <ESC> \ <DCS> can be used in place of <ESC> P and <ST> can be used in place of <ESC> \ when the TCS is communicating using 8 data bits. <Pfn>...
Page 131
If no sixel bit patterns are specified and <Pe> is 1, none of the characters in the dynamic font buffer are changed. If incomplete sixel patterns are given for a character, the incomplete portions of the character cell will be blank (matching the screen background). If extra sixel patterns are given for a character, they will be ignored.
The Character Displaying commands display and erase characters on the screen and modify their appearance. These commands affect the characters already on the screen when the command is executed. The Character Displaying commands are: Display Double-Width Line command (Remote) Display Double-Size Line command (Remote) Place Double-Size Line command (Remote) Display Normal Line command (Remote) Draw Bar for Bar Chart command (Remote)
Page 133
The Display Double-Width Line command displays the line occupied by the cursor (and only that line) using double-width characters. Since each double-width character occupies twice the normal character width, all characters occupying the right half of the normal line disappear from the screen. The right half that disappears from the screen is preserved in memory and can be retrieved using the Display Normal Line command.
Page 134
The Display Double-Size Line command changes the line occupied by the cursor to appear as a double-size line. Double-size lines are both double-height and double-width. Each of the two lines that make up the double-size line is also double-width, so the characters that appeared on the right half of the screen disappear when a normal line is converted to double- size.
Page 135
The Place Double-Size Line command creates a double-size line with a single command, providing a simpler alternative to the Display Double-Size Line command for making a double- size line. When this command is processed, the text and attributes on the line occupied by the cursor are duplicated on the line below.
Page 136
<ESC>#2 Change the line that the cursor is on to display the top half of double-size characters currently in the line. Change the line below the cursor to display the bottom half of double-size characters currently in the line the cursor is on. 5-49...
Page 137
The Display Normal Line command displays the line occupied by the cursor (and only that line) using normal characters. To normalize a double-size line, the host must send the Display Normal Line command for both of the lines that make up the double-size line; (the top and bottom halves must both be normalized).
Page 138
The Draw Bar for Bar Chart command provides a convenient way to display and update a bar chart. The command supports both horizontal or vertical bar charts. To use the command, the host specifies: The maximum length or height of the bar The amount of the bar to be filled in one-tenth of one percent precision (.0% through 100.0%) The bar is drawn using block characters.
Page 139
The area of the display this command affects is restricted to the scrolling region when Origin Mode is set. None. (This is a remote command only.) <ESC>[1;<Ps>;<Pr>;<Pd> ;<Pt>x <Ps> is a numeric parameter specifying the maximum size in lines (vertical bar) or characters (horizontal bar) of the bar when it is 100% filled.
Page 140
The bar may appear jagged if it crosses a mixture of line types. If the extended character set does not have the appropriate characters (for example, Default Dynamic Font 1 copied to extended set) the bar will not appear correctly. <ESC>[1;20;665x Draws a vertical bar 66.5% of 20 lines high and one character wide (thick).
Page 141
The Erase Character command erases the character under the cursor and as many characters as desired following it up to the end of the line. Each character erased is replaced by a blank (the ASCII Space character) with character attributes "off." The cursor does not move when the TCS executes this command. NOTE If the NOCHANGE Attribute Mode is set, erased characters are replaced with blanks, but their character attributes remain unchanged.
Page 142
The Erase in Line command erases a specified chapter of the line occupied by the cursor. Each character erased is replaced by a blank (the ASCII Space character) with character attributes "off." The cursor does not move when the TCS executes this command. NOTE If the NOCHANGE Attribute Mode is set, erased characters are replaced with blanks, but their character attributes remain unchanged.
Page 143
If <Ps> is 1, characters from the start of the line through the cursor are erased. If <Ps> is 2, the entire line is erased. <ESC>[K Erases from the cursor through the end of the line. The cursor is not moved. <ESC>[2K Erases the entire line.
Page 144
The Erase in Display command erases all or part of the display. This command can be used to erase the area preceding the cursor, the area following the cursor, or the entire screen. Each erased character is replaced by a blank (the ASCII Space character, 20 Hex) with character attributes "off."...
Page 145
If <Ps> is 1, characters from the beginning of the screen through the cursor position (inclusive) are erased. If <Ps> is 2, the entire screen is erased. <ESC>[J Erases from the cursor through the end of the screen. The cursor does not move. The line containing the cursor retains its line type;...
Character Interpretation commands determine the appearance and placement of characters that arrive after the command is received. The Character Interpretation commands are: Auto Wrap-Around Mode command (Local/Remote) Send-Receive Mode command (Local/Remote) New Line Mode command (Local/Remote) NOCHANGE Attribute Mode command (Local/Remote) National Replacement Code command (Local/Remote) Set Character Attributes command (Remote)* Scrolling Region command (Remote)
Page 147
The Auto Wrap-Around Mode command sets and resets the Auto Wrap-Around Mode. The Auto Wrap-Around Mode determines how the cursor responds when the TCS receives characters that run off the right margin of the display. When the Auto Wrap-Around Mode is "off" (reset), a character received when the cursor is at the right margin replaces the previously displayed character and the cursor remains stationary.
Page 148
The Send-Receive Mode command sets and resets the Send-Receive Mode, which controls the Local Echo feature of the TCS. The Local Echo feature echoes user input from the optional keyboard to the TCS. Touch cell reports and other TCS-to-host strings are not affected (and are never echoed locally).
Page 149
The New Line Mode command determines which control characters are transmitted by the TCS when the Return key or Enter key is pressed on an optional keyboard. The New Line Mode command also determines the action taken by the TCS when it receives Line Feed <LF>, Form Feed <FF>, and Vertical Tab <VT>...
Page 150
The NOCHANGE Attribute Mode command sets and resets the NOCHANGE Attribute Mode. The NOCHANGE Attribute Mode allows the host to freeze the visual attributes (character attributes and line type) of the display. When the NOCHANGE Attribute Mode is set, the host can modify the character contents within an area of the display without affecting the visual attributes in use in the area.
Page 152
FRQWLQXHG For the color TCS, when nochange attribute mode is reset, commands that erase characters turn off the highlight, underline, blink, reverse-video, and concealed attributes and fill the erased area using the currently selected color attributes. When nochange attribute mode is set, these commands function exactly as they do on the monochrome TCS.
Page 153
d) The host replaces the earlier warning message with the new message, "DANGER... OVER LIMIT." The new message is displayed with the same attributes as the previous warning message (highlighted). The host can continue to update the various messages on the screen using their previous character attributes without having to send the Set Character Attributes command each time.
Page 154
The National Replacement Code (NRC) command lets the user or host substitute a designated set of international characters in place of some standard ASCII characters on the display. This command allows text containing characters unique to one of 11 languages to be displayed and manipulated without a special keyboard or 8-bit codes.
Page 155
Finnish German Italian Spanish Swedish Swiss <ESC> [4 ; <Ps> z <Ps> is the NRC selective parameter. If <Ps> NRC is Danish Dutch French Canadian Finnish German Italian Spanish Swedish Swiss If the Extended Character Set is selected by the Select Character Set command, graphic codes will be shifted-out to the Extended Character Set and will not be affected by the NRC.
Page 156
<ESC>[4;7z Sets the NRC to Italian. <ESC>[4z Sets the NRC to "off". (No replacements are made.) <ESC>[4;11z Sets the NRC to 5-69...
Page 160
The Set Character Attributes command selects the visual attributes for displayed characters. Separate parallel areas within memory store characters and their attributes. A convenient visual model is to think of the display as being a composite view through translucent planes, as shown in Figure 5-9.
Page 161
Underline The character is underlined. Blink The character blinks on or off every second with a 50% duty cycle. NOTE A 50% duty cycle means the character is "on" half of the time. Reverse-Video The character cell foreground matches the screen background, and the character cell background matches the screen foreground.
Page 162
The highlight, underline, blink, reverse-video, and concealed attributes are turned off. Color TCS: The foreground color is white (37) and the background is black (40). The conceal color is black (70). For the monochrome TCS, this is a remote command only. Color TCS: Foreground and background color are the only attributes that can be set locally by the Setup Screen.
Page 163
FRQWLQXHG If the host specifies two or more incompatible character attributes in the same control (such as concealed followed by not concealed), the last character attribute (not concealed) takes effect. Color TCS: If the user or host sets foreground and background to the same color, textual information outside the Setup Screen will not be visible when upcoming characters are placed in the character plane for display.
The Scrolling Region command limits scrolling to a portion of the screen. This feature is useful when one area of the screen must display immobile objects (such as touch targets) while another area of the screen displays scrolling information. A scrolling region is designated by specifying the top and bottom lines of the region. The minimum size of a scrolling region is two lines.
Page 165
<ESC>[<Pt>;<Pb>r <Pt> is a numeric parameter, designating the top line of the scrolling region. If <Pt> is omitted or 0, the top line of the scrolling region is set to line 1. <Pb> is a numeric parameter, designating the bottom line of the scrolling region. If <Pb>...
Page 166
The Origin Mode command sets or resets the Origin Mode. The Origin Mode performs three functions: it determines whether the lines of the screen are numbered relative to the screen as a whole or relative only to the scrolling region; whether the cursor can be moved out of the scrolling region;...
Page 167
When the Origin Mode is set (on): Line numbering begins with line 1 at the top of the scrolling region and continues through the bottom of the scrolling region. The cursor cannot be moved out of the scrolling region. The Erase in Display and Region commands affects the scrolling region. The cursor is moved to the home position relative to the scrolling region.
Page 168
None. (This is a remote command only.) <ESC>[?6l Resets the Origin Mode. (The terminator for the reset command is the letter "l", ASCII 6C hex.) <ESC>[?6h Sets the Origin Mode. 5-81...
Page 169
The Cursor commands determine the appearance and/or location of the cursor. The cursor commands are: Move Cursor to Absolute Position command (Remote) Move Cursor to Touchkey command (Remote) Move Cursor Forward command (Remote) Move Cursor Backward command (Remote) Move Cursor Up command (Remote) Move Cursor Down command (Remote) Next Line command (Remote) Index command (Remote)
Page 170
The Move Cursor to Absolute Position command moves the cursor to an absolute character position on the screen, specified in lines and columns. The maximum number of lines is 24. On a normal line, the maximum number of columns is 80; on a double-wide or double-size line, the number of columns is 40.
Page 171
<ESC>[H Moves the cursor home (line 1, column 1). <ESC>[5;062H Moves the cursor to line 5, column 62. <ESC>[24H Moves the cursor to line 24, column 1. <ESC>[;30H Moves the cursor to line 1, column 30. <ESC>[30H Moves the cursor to line 24, column 1. (<P1> is greater than 24; therefore, the cursor moves to the last line on the screen.) 5-84...
Page 172
The Move Cursor to Touchkey command provides a way to easily position the cursor at a particular touchkey without specifying character coordinates. Then, using relative cursor movement commands and text display commands, the host can change the visual data at the touchkey.
Page 173
The Move Cursor Forward command is a relative cursor movement command. It moves the cursor forward (towards the right) without affecting its vertical position. The cursor cannot be moved beyond the right margin of the screen by this command. The cursor remains at the right margin and does not move to another line, even if the Auto Wrap-Around Mode is set ("on").
Page 174
The Move Cursor Backward command is a relative cursor movement command. It moves the cursor backward (left) on the screen without affecting its vertical position. The cursor cannot be moved beyond the left margin of the current line with this command. The cursor will not move to the line above it.
Page 175
The Move Cursor Up command is a relative cursor movement command. It moves the cursor up the screen without affecting its column position. Once the cursor enters a scrolling region, the cursor cannot be moved outside the scrolling region with a relative cursor movement command. The cursor stops at the edge of the scrolling region and the region is not scrolled.
Page 176
The Move Cursor Down command is a relative cursor movement command. It moves the cursor down the screen without affecting its column position. Once the cursor enters a scrolling region the cursor cannot be moved outside the scrolling region with a relative cursor movement command. The cursor stops at the edge of the scrolling region and the region is not scrolled.
Page 177
The Next Line command is a relative cursor movement command. It moves the cursor to column 1 (the first position) on the next line. The Next Line command has the following effects: If the cursor is on the bottom line of the scrolling region when the command is received, the region is scrolled up.
Page 178
The Index command is a relative cursor movement command. It moves the cursor down one line without affecting its column position. The Index command differs from the Move Cursor Down command in that if the cursor is on the bottom line of the scrolling region when the Index command is sent, the region is scrolled up. (If the scrolling region is the entire screen, the screen is scrolled up.) If the cursor is outside the scrolling region when this command is sent, the cursor is moved down one line until it reaches the bottom edge of the screen.
Page 179
The Reverse Index command is a relative cursor movement command. It moves the cursor up one line without affecting the cursor’s column position. The Reverse Index command differs from the Move Cursor Up command in that if the cursor is on the top line of the scrolling region when the Reverse Index command is sent, the region is scrolled down.
Page 180
The Read Cursor Position command allows the host to determine the cursor’s position on the screen. After receiving the Read Cursor Position command from the host, the TCS reports the vertical and horizontal position of the cursor by responding with a string in the following format: <ESC>[<P1>;<Pc>R <P1>...
Page 181
The Read Character Under Cursor command causes the TCS to identify (for the host) the character under the cursor, in effect, allowing the host to read any character displayed on the screen. The uses of this command include: Reading the entire screen and sending it to a printer. Saving a message that is displayed on the screen, displaying a new message in the same area, and then restoring the previous message.
Page 182
<ESC>[>3n The TCS assumes that the NRC in effect when the Read Character Under Cursor command is sent is the same as when the character was originally displayed by the TCS. If this is not the case, when the Read Character Under Cursor command is received by the TCS, the TCS will return a control string to the host identifying a code that may not match the code originally sent by the host.
Page 183
The Read Attributes Under Cursor command allows the host to read the character attributes shown on the screen. The Read Attributes Under Cursor command is used to: Read the entire screen and send it to a printer. Save a message displayed on the screen, display a new message in the same area, and then restore the previous message.
Page 184
The following parameters are valid for the color TCS only. Table 5-13 shows the definitions for the color attributes. <Pfg> is the foreground color attribute <Pbg> is the background color attribute <Pcc> is the conceal color attribute that shows conceal color activity for the entire screen, regardless of cursor position.
Page 185
The Cursor Type command selects one of the following types of cursors: Non-Blinking, Reverse-Video Block The cursor appears as a reverse-video, full character cell block and does not blink. Slow-Blinking, Reverse-Video Block The cursor appears as a full character cell block and blinks every second with a 50% duty cycle.
Page 186
<ESC>[<Ps>;...;<Ps>v <Ps> is a selective parameter, designating a cursor type. If <Ps> is 0 or omitted, the previous cursor type is made visible. If <Ps> is 1, the current cursor type is made invisible. If <Ps> is 2, the cursor is an underline. If <Ps>...
The Screen Appearance commands affect the appearance of the entire screen. The Screen Appearance commands are: Screen Background Mode command (Local/Remote) Display Activity command (Local/Remote) These commands are described in detail in the following pages. For ease of reference, each command description begins on a new page.
Page 188
Monochrome TCS: The Screen Background Mode command sets or resets the Screen Background Mode, which determines whether the background of the screen is dark or light. When the Screen Background Mode is set ("reverse"), the background of each character (without reverse-video attributes) is lit and the foreground is unlit. This creates a lit background with dark characters.
Page 189
The Display Activity command turns the display on or off, or programs an automatic timeout (the screen is automatically turned off) following periods of inactivity. CAUTION Setting Display Activity off then saving the Setup Screen is a relatively common source of confusion for new TCS operators.
Page 190
The user sets the display activity by entering the Setup Screen and, using touchkeys or the optional keyboard, setting the Display Activity parameter to one of the following values: timeout The display activity setting does not take effect until the Setup Screen is exited. <ESC>[3;<Ps>z <Ps>...
This chapter describes how to create touchkeys on the Touch Control Screen (TCS). Topics include: The touch panel Touch reporting The commands used to create touchkeys and touch targets For ease of reference, the commands are divided into two groups, consisting of functionally related commands: Panel Commands Region Commands...
Page 192
The host application program can incorporate touch cells into units called touchkeys. A touchkey can consist of a single touch cell or a group of cells that function as if they were a single touch cell. To show the TCS operator exactly where on the screen a touchkey is located, and what function it performs, touchkeys are usually defined in conjunction with visual targets called touch targets.
Page 193
Depending on the number of touch cells that have been grouped together, the term touchkey can refer to a single touch-sensitive area as large as the entire display or as small as a single touch cell. Many applications need to be able to easily change the visual contents of the character cells within a touchkey.
Page 195
The touch panel is divided into 12 rows and 10 columns of individual touch cells, one or more of which can form a single touchkey. (See Figure 6-1.) Each touchkey has a unique numeric value determined by the master cell in its upper left corner, which the TCS reports to the host. The TCS can send touch reports either spontaneously (whenever a touchkey is touched) or only when the TCS is polled for a response (using the Polled Touch Mode).
The Touch Panel commands control the operation of the touch panel. The Touch Panel commands are: Build Touchkey command (Remote) Clear Touchkey command (Remote) Touchkey Type command (Remote) Touchkey Visual Extent command (Remote) Touchkey Audible Attribute command (Remote) Auto-Repeat Rate command (Remote) Polled Touch Mode command (Remote) Read Touchkey Status command (Remote) Extended Report Mode command (Remote)
Page 197
The Build Touchkey command groups touch cells together into a single rectangular touchkey. Building touchkeys provides an easy way to handle larger portions of the touch panel as single touch-sensitive areas, and eliminates the programming overhead associated with translating and handling individual touch cells.
Page 198
If the host attempts to build a touchkey that overlaps an already existing touchkey, the previous touchkey is cleared before the new one is built. Omitting <Pw> and <Ph> or setting them both to 1 in this command constitutes a Clear Touchkey command.
Page 199
The Clear Touchkey command reverses the effect of a previous Build Touchkey command. While touch cells are grouped as a larger touchkey, changing the attributes of the touchkey only affects the attributes stored at the master cell. All other touch cells retain their unique attributes, which are temporarily ignored while they are grouped as the touchkey.
Page 200
The Touchkey Type command specifies how the TCS controls a touchkey. Each type can take on one of the following values: Dead: The touchkey does not generate a touch report when touched. A touchkey programmed as dead acts as if there were no touch-sensitive area at its location. Press: The touchkey generates a single report whenever it is pressed.
Page 201
If the type of the touchkey that is currently being pressed is changed and a visual response is in progress for the touchkey, the visual response is prematurely terminated. If the type of the touchkey that is currently being pressed is changed and the key was auto- repeating, auto-repeating is terminated.
Page 202
The Touchkey Visual Extent command specifies the portion of a touchkey that automatically responds visually when activated by the user. Each visual extent can take on one of the following values: Border: The border is the portion of the touchkey composed only of the character cells on the perimeter of the physical boundaries of the touchkey.
Page 203
None. (This is a remote command only.) <ESC>[3;<Pk>;<Pv>u <Pk> is a numeric parameter that specifies the touchkey whose visual extent is to be assigned. If <Pk> is 0 or omitted, the visual extents of all touchkeys are set as specified in this command.
Page 204
The Touchkey Audible Attribute command specifies whether the TCS beeps when a touchkey is activated by the user. Each touchkey can be assigned one of two audible attributes: Silent: The TCS does not beep when the touchkey specified within this command is touched. Beep: The TCS automatically beeps in accordance with the touchkey type whenever the touchkey is touched.
Page 205
<ESC>[1;<Ps>;<Pk>u <Ps> is a selective parameter that specifies the audible attribute being assigned to the touchkey. If <Ps> is 0 or omitted, the audible attribute is silent. If <Ps> is 1, the audible attribute is beep. <Pk> is a numeric parameter that specifies the touchkey whose audible attribute is being assigned.
Page 206
The Auto-Repeat Rate command allows the host to set the auto-repeat rate for touchkey reporting. The auto-repeat rate is the rate at which touch reports are sent (or made available) to the host when a touchkey is pressed continuously. The auto-repeat rate can be any value from 0 (off) through 25.5 seconds.
Page 207
<ESC>[2;3u The auto-repeat rate is set to 0.3 seconds. <ESC> [2;100u The auto-repeat rate is set to 10 seconds. <ESC>[2u Auto-repeating is disabled. 6-17...
Page 208
The Polled Touch Mode command selects the Polled Touch Mode, which causes the TCS to report touchkey closures only when requested (polled) by the host. The Polled Touch Mode prevents data overruns and lost characters when the TCS is used with a host that has a slow I/O response.
Page 209
<ESC>[>1l Resets Polled Touch Mode (to off). (The terminator for the reset command is the letter "l," ASCII 6C hex.) <ESC>[>1h Sets Polled Touch Mode (to on). 6-19...
Page 210
The Read Touchkey Status command requests the TCS to send a touch report for the last touchkey touched but not yet reported. This command is used when the TCS is operating in the Polled Touch Mode (when the Polled Touch Mode is set to on). Specifically, the Read Touchkey Status command allows the host to: Accept the next touch report when operating in Polled Touch Mode Read the current state of a toggle touchkey to see if it is on or off...
Page 211
means that no matter what touch cell is pressed within a toggle touchkey, the toggle state is altered for the master cell. Only a single toggle state exists for any touchkey. The touchkey number of a press and release touch key The host can read the status of any toggle touchkey and determine whether the touchkey is currently pressed or released.
Page 212
The Extended Report Mode can be reset or set using the Reset Mode or Set Mode command. When the Extended Report Mode is reset, touch reports contain only the touchkey number, with no information about the current state of the touchkey. When the Extended Report Mode is set, touch reports contain the number of the touchkey and the touchkey’s current state (toggled on/off or pressed/releases).
Page 213
A touch report that occurs when the Extended Report Mode is reset appears as follows: <ESC>[>2;042n The same touch report with the Extended Report Mode set might appear as: <ESC>[>2;042;1n This string indicates that Touchkey 42 is toggled on. 6-23...
Page 214
The Touch Panel Lockout Mode command controls the Touch Panel Lockout Mode, which allows the host to lock out user input from the touch panel. This command does not affect the optional keyboard. When the Touch Panel Lockout Mode is reset, input is allowed from the touch panel. (The touch panel is unlocked.) When the Touch Panel Lockout Mode is set, input is not allowed from the touch panel.
Page 215
Region commands provide a simple way for the programmer to create visual touch targets on the display. Region commands outline or erase a defined area on the screen, and modify the attributes of characters and lines within a defined area. The Region commands are: Outline a Touchkey command (Remote) Outline a Region command (Remote)
Page 216
The Outline a Touchkey command creates the visual border for a touchkey. The position of the cursor is not changed when this command is executed. The area of the display affected by this command is restricted to the scrolling region if the Origin Mode is set.
Page 217
This command assumes that the Static Special Character Font will be mapped into the Extended Character Set when the screen is displayed. Otherwise, the box characters used to draw the outline may appear different than described above. The boxtypes used by this command can be customized by using the Down-Line Load and Map Character Font commands to change the contents of the Extended Character Set, as described in Chapter 5.
Page 218
The Outline a Region command places a border around an area of the screen defined relative to the cursor, thereby drawing a touch target. This is convenient when a visual target does not correspond exactly with the physical boundaries of a touchkey. The position of the cursor is not changed when this command is executed.
Page 219
<ESC>[6;<P1>;<Pc>;<Pb>t <P1> is a numeric parameter from 0 through 24, which designates the height of the region in lines. If <P1> is 0, omitted, or greater than 24, a region with a height of 24 lines is defined. <Pc> is a numeric parameter from 0 through 80, which designates the width of the region in columns.
Page 220
The Custom Outline a Touchkey command places a customized border around a touchkey. The command must include a starting character value in the character set to specify where to get the border to be used for outlining. The area of the display affected by this command is restricted to the scrolling region if the Origin Mode is set.
Page 221
NOTE Undesirable results may be produced if the Custom Outline a Touchkey command is executed on a touchkey that contains mixed line types. If the touchkey specified in this command designates a touch cell within a touchkey (but not the master cell), an outline is drawn around that touch cell rather than the entire touchkey.
Page 222
The Custom Outline a Region command allows a customized border to be placed around a rectangular area of the screen. The command must include a starting character value that specifies where to get the border to be used for outlining. The region of the display affected by this command is restricted to the scrolling region if the Origin Mode is set.
Page 223
None. (This is a remote command only.) <ESC>[4;<P1>;<Pc>;<Pch>x <P1> is a numeric parameter from 0 through 24 that designates the height of the region in lines. If <P1> is 0, omitted, or greater than 24, a region with a height of 24 lines is defined. <Pc>...
Page 224
The Modify Character Attributes in a Touchkey command causes the character attributes within a touchkey to be modified on a touchkey basis, rather than character-by-character. This command assigns to the designated touchkey the character attributes currently in effect (as last assigned by the Set Character Attributes command). Because the Modify Character Attributes in a Touchkey command directly causes attributes to be modified, the NOCHANGE Attribute Mode has no effect on this command.
Page 225
<ESC>[7;<Pk>;<Pv>u <Pk> is a numeric parameter that specifies the touchkey whose character attributes are to be modified. If <Pk> is 0 or omitted, the entire screen is modified. <Pv> is a selective parameter that designates the visual extent of the touchkey to be affected by the command.
Page 226
The Modify Character Attributes in a Region command causes the character attributes within a defined region to be modified on a regional basis, rather than character-by-character. This command assigns to the designated region the attributes currently in effect (as last assigned by the Set Character Attributes command).
Page 227
If the region does not contain any double-width or double-size lines, the region is assumed to be composed of all normal lines. None. (This is a remote command only.) <ESC>[7;<P1>;<Pc>;<Pv>t <P1> is a numeric parameter from 0 through 24 that designates the height of the region in lines.
Page 228
The Reverse Character Attributes in a Touchkey command allows the host to quickly change the character attributes within a touchkey. The attributes to be changed with this command are specified within the command. One or more attributes can be changed at a time. All the attributes specified in this command are reversed from their current setting for each of the characters within the touchkey.
Page 229
<ESC>[9;<Pk>;<Pv>;<Pa>;...;<Pa>u <Pk> is a numeric parameter that specifies the touchkey whose character attributes are to be reversed. If <Pk> is 0 or omitted, the character attributes of the entire screen are reversed. Pv> is a selective parameter that specifies the visual extent of the touchkey to be reversed. If <Pv>...
Page 230
The Reverse Character Attributes in a Region Command allows the host to quickly reverse character attributes within a region. The attributes to be changed with this command are specified within the command. One or more attributes can be changed at a time. All the attributes specified in this command are reversed from their current setting for each character within the region.
Page 231
If the region does not contain any double-width or double-size lines, the region is assumed to be composed of all normal lines. NOTE Undesirable results may be produced if the Reverse Character Attributes in a Region command is executed on a region that contains mixed line types. None.
Page 232
<ESC>[9;;;;5t Reverses the blink attribute for the entire screen. <ESC> [9;12;51;2;4;1t Reverses the highlight and underline attributes in the border of a 12 line by 51 column region with upper left corner at the cursor. <ESC>[9;1;50;1;8t Reverses the conceal attribute in the inner part of a 1 line by 50 column region. If the characters in the inner part of the region were not visible (concealed) before this command was sent, the characters will become visible (unconcealed).
Page 233
The Fill a Touchkey With a Character command allows the host to easily fill a touchkey with a character. The character specified in this command will be repeatedly displayed in each character position throughout the visual extent of the touchkey that the host specifies. This command allows a touchkey to be filled with any one of the 256 characters from the Standard and Extended Character Sets.
Page 234
<Pch> is a numeric parameter that specifies the decimal value of the character to be used for filling the area specified. If <Pch> is omitted, the default value 251 from within the Extended Character Set is used (the gray block character when the Static Special Character Font is mapped into the Extended Character Set).
Page 235
The Fill a Region With a Character command allows the host to easily fill a rectangular area with a specified character. The upper left corner of the region is defined by the current cursor position. The character specified in this command is repeatedly displayed in each character position throughout the visual extent of the region that the host specifies.
Page 236
If <Pc> is 0, omitted, or greater than 80, a region 80 columns wide is defined. <Pv> is a selective parameter that specifies the visual extent of the region to be filled. If <Pv> is 0 or omitted, all of the region is filled. If <Pv>...
Page 237
The Erase a Touchkey command is sent by the host to erase the target associated with a specified touchkey on the display. Each character that is erased is replaced by a blank (a Space character). The attribute of each character position in the erased touchkey reverts to off, unless the NOCHANGE Attribute Mode is set.
Page 238
Undesirable results may be produced if the Erase a Touchkey command is executed on a touchkey that contains mixed line types. <ESC>[8u Erases the entire screen (if Origin Mode is reset and the cursor is in the home position). <ESC>[8;53;2u Erases the border of Touchkey 53.
Page 239
The Erase a Region command is sent by the host to erase a designated area of the screen. Each character that is erased is replaced by a blank (a Space character). The attribute of each character position in the erased region reverts to off, unless the NOCHANGE Attribute Mode is set.
Page 240
<ESC>[8;<P1>;<Pc>;<Pv>t <Pl> is a numeric parameter from 0 through 24, which designates the height of the region in lines. If <P1> is 0, omitted, or greater than 24, a region with a height of 24 lines is defined. <Pc> is a numeric parameter from 0 through 80, which designates the width of the region in columns.
This chapter describes how to program the optional keyboard. Topics include: A description of the keyboard A list of the codes the keyboard transmits to the host A description of the commands that affect the keyboard’s operation The optional keyboard has keys similar to those on a typewriter, with the addition of some special keys.
Page 242
The Space Bar normally moves the cursor one space to the right, leaving an invisible space character in its place. The Scroll Lock key is a toggle. The first press freezes the display by causing the TCS to stop processing codes. The second press allows the TCS to resume processing codes. If the host continues to send codes while Scroll Lock is in effect, the TCS input buffer may fill, prompting the TCS to stall the host.
The Set Up key does not transmit anything to the host computer. It is used to call up the Setup Screen, and to exit the Setup, Test, and Alignment Screens. See Using the Setup Screen, for more information. The cursor control keys transmit ANSI cursor control sequences to the host as shown in Table 7- 3.
Æ Ç Å Ä The cursor control keys normally move the cursor on the screen. The special function keys transmit control sequences to the host as shown in Table 7-4. The special function keys can also be pressed with the Shift or Ctrl keys to generate additional control sequences.
The auxiliary keypad is the group of keys on the right side of the keyboard. The auxiliary keypad can be programmed to operate in one of two modes using the Keypad Mode command. In the Numeric Mode, the auxiliary keypad transmits numeric codes to the host. In the Application Mode, the auxiliary keypad transmits application code sequences to the host.
The Keyboard commands affect the operation of the optional keyboard. The Keyboard commands are: Keyboard Lockout Mode command (Remote) Keypad Mode command (Remote) Local/Remote Mode command (Local) Send Long Break command (Local) Local/Remote Mode command (Local) Send Short Break command (Local) These commands are described in detail in the following pages.
Page 249
The Keyboard Lockout Mode command sets and resets the Keyboard Lockout Mode. This allows the host to block input from the keyboard. When the Keyboard Lockout Mode is set, keyboard entries are ignored by the TCS (the keyboard is locked). Setting the Keyboard Lockout Mode also precludes access to the Setup Screen through the Set Up key on the keyboard.
Page 250
The Keypad Mode command sets the auxiliary keypad to either the Numeric or Application Mode so the host can select whether the auxiliary keypad on the optional keyboard sends numeric codes or application codes to the host. When the keypad is set to the Numeric Mode, the keypad sends numeric codes to the host. When the keypad is set to the Application Mode, the keypad sends special control sequences to the host.
Page 251
The Local/Remote Mode command controls whether the TCS accepts remote commands from the host computer or from the keyboard. The command sets the TCS either to the Remote Mode (in which the TCS accepts remote commands from the host) or to the Local Mode (in which the TCS accepts remote commands from the keyboard).
Page 252
The Send Long Break command causes the TCS to hold the RS-232-E Data Terminal Ready (DTR) and Request to Send (RTS) lines off (low) for approximately 3.5 seconds. This command is typically used to initiate disconnection from the host equipment, particularly with a modem communicating to a remote computer over a telephone line.
Page 253
The Send Short Break command causes the RS-232-E Transmitted Data (TD) line to be held in the “0” or SPACE state for approximately 300 milliseconds. This can be used as a special signal to the host that can be recognized at any baud rate. A typical use of the Short Break command is to signal to the host to cycle through a choice of baud rates until the baud rate matching that of the TCS is established.
This chapter describes two types of commands: Status Reporting commands Remote Self-Test commands The Status Reporting commands report the status of the Touch Control Screen (TCS). The Remote Self-Test commands activate and report the results of self-tests built into the TCS. Together, these commands enable the host to do confidence tests and ensure that TCS components are operating properly.
Page 255
Status Reporting commands allow the host to determine the operational status of the TCS. The Status Reporting commands are: Power-Up Interrupt Mode command (Remote) Request Power Status command (Remote) Error Interrupt Mode command (Remote) Request Error Status command (Remote) Request TCS Identification command (Remote) Request TCS Status command (Remote) These commands are described in detail in the following pages.
Page 256
The Power-Up Interrupt Mode command is used to set or reset the Power-Up Interrupt Mode. When the Power-Up Interrupt Mode is set, the TCS generates an interrupt to the host after regaining power. This interrupt can be used by the host to detect whether the integrity of the TCS has been disturbed by a loss of power during operation.
Page 257
The Request Power Status command allows the host to determine if the TCS has lost power or was reset since the last Request Power Status command. None. (This is a remote command only.) <ESC>[>0n If the TCS has not lost power or been reset since the last Request Power Status command, the TCS responds to the Request Power Status command by sending the following string to the host: <ESC>[>0n...
Page 258
The Error Interrupt Mode command is used to set or reset the Error Interrupt Mode. When the Error Interrupt Mode is set, the TCS generates an interrupt to the host immediately upon detecting an error. The host can use this interrupt to detect whether the operational state of the TCS has been affected by an error.
Page 259
The Request Error Status command allows the host to poll the TCS to determine whether a new error has occurred. This command is of use only when the Error Interrupt Mode is reset. When the Error Interrupt Mode is set, the TCS does not hold any error status reports and will have already sent out an asynchronous error interrupt, reporting the error to the host.
Page 260
NOTE The report may differ from the above format if the Reporting Format command has been issued. Refer to the Reporting Format command description in Chapter 4 for details. If this command is sent while the Error Interrupt Mode is set, the TCS always responds with an indication that no new error has occurred, since it already reported the error on an interrupt basis.
Page 261
The Request TCS Identification command allows the host to determine the following information about the TCS: The type of TCS with which it is communicating The firmware version installed in the TCS The programmable options installed in the TCS None. (This is a remote command only.) This command has two equivalent forms: <ESC>[c <ESC>[0c...
Page 262
An example of a TCS identification sequence sent to the host in response to this command is: <ESC>[2;10;98304;0;0;0c The TCS type is Model 1030 (2), with firmware version 1.0(10) containing 96K bytes (98304) of Expansion Memory.
Page 263
The Request TCS Status command allows the host to determine the operational status of the TCS. The TCS responds to the Request TCS Status command by indicating whether it has had a malfunction since it was last powered-up or reset. A malfunction is any error the TCS detects, either during self-test or normal operation.
Page 264
The Remote Self-Test commands activate and report on self-tests built into the TCS. These tests verify that selected parts of the TCS are operating correctly. The Remote Self-Test commands are: Continuous Integrity Test command (Local/Remote) Request ROM Test Report command (Remote) Request Nonvolatile Memory Test Report command (Remote) Request RAM Test Report command (Remote) Request Touch Panel Test Report command (Remote)
Page 265
The Continuous Integrity Test command places the TCS into the Continuous Integrity Test, which is a continuous testing loop that verifies proper operation of the TCS electronics. The Continuous Integrity Test command activates the following tests sequentially in a continuously repeating cycle: ROM Checksum test Nonvolatile Memory Checksum test...
Page 266
All checksums, addresses, data sent, data received, and failure history values are displayed in hexadecimal. All other numbers are displayed in decimal. The RAM data pattern failure history contains a l in each bit position where a data error has been detected throughout the history of the Continuous Integrity Test.
Page 267
The Request ROM Test Report command allows the host to obtain detailed results of ROM testing during the Continuous Integrity Test or automatic self-testing. The host receives a response from this command when the Continuous Integrity Test is in progress only if the Continuous Integrity Test was activated by the host rather than locally by the user.
Page 268
The Request Nonvolatile Memory Test Report command allows the host to obtain detailed results of nonvolatile testing during the Continuous Integrity Test or automatic self-testing. The host receives a response from this command while the Continuous Integrity Test is in progress only if the Continuous Integrity Test was activated by the host rather than locally by the user.
Page 269
If the Continuous Integrity Test has completed 112 loops and detected nonvolatile memory checksum errors during 23 of those test loops and the most recent cell in error was 46, the TCS responds with: <ESC>[>7;112;23;46n 8-16...
Page 270
The Request RAM Test Report command allows the host to obtain detailed results of RAM testing during the Continuous Integrity Test or automatic self-testing. The host receives a response from this command while the Continuous Integrity Test is in progress only if the Continuous Integrity Test was activated by the host rather than locally by the user.
Page 271
<ESC>[>8n This control string from the host requests a RAM Test report. If only a power-up test has been performed and no RAM errors were detected, the TCS responds with: <ESC>[>8;1;0;0;0;0n <ESC>[>8n This continuous string from the host requests a RAM test report. Assume the Continuous Integrity Test has completed 3 loops and detected RAM errors during two of those loops.
Page 272
The Request Touch Panel Test Report command allows the host to obtain detailed results of touch panel testing during the Continuous Integrity Test or automatic self-testing. The host receives a response from this command while the Continuous Integrity Test is in progress only if the Continuous Integrity Test was activated by the host rather than locally by the user.
With no modifications, the sample program in this appendix can run in BASIC BASICA * , QuickBASIC * , and GWBASIC * on the IBM PC * , PC/XT, or PC/AT or compatibles. The program sets up a communication channel between the IBM PC and the TCS, and creates three touch targets centered vertically on the TCS display.
Page 274
100 ‘ ******************************************** 105 ‘ 110 ‘ Set up constants 120 es$ = CHR$(27) ‘ Control string introducer 125 cr$ = es$ + “[C” ‘ Move cursor right command 130 cd$ = es$ + “[B” ‘ Move cursor down command 135 ‘...
295 PRINT #1, es$;”[12h”; ‘ Local Echo mode off 300 PRINT #1, es$;”[1v”; ‘ Turn off cursor 305 PRINT #1, es$;”[3z”; ‘ Display activity on 310 ‘ 315 ‘ Set up TCS character sizes and touch panel 320 ‘ 325 PRINT #1, es$;”[1;1H”; ‘...
Page 276
505 ‘************************************************ 510 ‘ 515 ‘ Draw Rest of Display 520 ‘ 525 PRINT #1, es$;”[1;11H”; ‘ Position cursor 530 PRINT #1, “Touch Control Screen”; ‘ Top of double-sized line 535 PRINT #1, es$;”#2; ‘ Copy to bottom half. 540 ‘ 545 PRINT #1, es$;”[5;3H”;...
Page 277
This appendix contains a table that summarizes all TCS commands and provides commonly needed information about each command. Commands listed here are fully documented in the indicated chapters of this manual. The Command Summary Table groups the commands according to related functions. Where applicable, the command summary includes mnemonics, host usage, and TCS response.
Page 299
The static character fonts supplied with the TCS (which provide the default contents for the Standard and Extended Character Sets) can be customized by the designer. This appendix describes the static character fonts and explains how they can be modified. NOTE Many locations within the static character fonts are used for specific purposes by the TCS Setup Screen subscreens.
Page 300
Note: In this table, the value of a character in hex can be determined by its row and column position. The column number represents the 16’s digit and the row number represents the 1’s. For example, character G is specified as column 4, row 7.
Page 301
Note: In this table, the value of a character in hex can be determined by its row and column position. The column number represents the 1’s. For example, character ‘a’ is specified as column A, row B. Therefore, the value of character ‘a’...
Page 302
It may not be necessary to read further in this appendix if only a few special characters are needed. The programmer may find it easier to down-line load them into the dynamic character fonts rather than modify the firmware. The information in this appendix is intended to assist those who require several special characters, such as an entire alphabet, icons, mathematical symbols, or corporate logos.
Page 303
Together, the two character fonts of the TCS contain 256 characters. Complete descriptions of the fonts, the standard usage of their characters, and the consequences of changing a character are shown in Tables C-3 and C-4. Many locations within the static character fonts are used for specific purposes by the TCS Setup Screen and its subscreens.
Page 305
FRQWLQXHG uyqà Boxtypes are special characters used to draw boxes or borders on the display. The first 32 positions of the Static Special Character Font contain four complete boxtype patterns. These boxtypes are used by the Region Commands (see Chapter 6). Custom borders can be created by changing the data contained in the boxtype locations of the Static Special Character Font (positions 80 through 9F hex) as shown in Table C-5.
Page 306
Characters displayed on the TCS consist of character cells. A character cell is a portion of the display 8 pixels wide by 10 pixels high. These pixels are turned on or off by the data contained in the character set. Since every pixel in each character cell can be displayed, graphic characters can be easily created.
Page 307
Character’s Start Character ASCII Code Address Pattern Font Decode Display H (48 HEX) Eprom Not Used The standard ASCII display characters are designed according to the following rules: Uppercase characters, numerals, and symbols like the percent and dollar signs, and brackets and braces are designed within a region 7 pixels high by 7 pixels wide.
Page 308
Lowercase letters with descenders have the body of the character 4 pixels high by 7 pixels wide with a 3-pixel high descender. Letters with descenders extend to the bottom of the character cell. The leftmost side of the character region is justified to the left column of pixels in the character cell.
Page 309
The following diagrams are for reference to the contents of the Static ASCII and Static Special Character Fonts. This information can be used to design custom character fonts. The aspect ratio of the character representations was altered slightly to give a close approximation of the display. Each character is identified in octal, hexadecimal, and decimal, as shown in the key.
This appendix describes common TCS programming and operating problems. Most topics are covered in the command reference information, but are restated here because many common programming difficulties result from incorrect combinations of modes and commands rather than from simple misuse of a single command. This appendix also includes a table of all messages that can be displayed in the Operational Status Window.
The most common programming problems are associated with the following topics: Polled Touch Mode / Read Touchkey Status command Reporting Format / End Of Line Character Origin Mode / Scrolling Region NOCHANGE Attribute Mode / Modify Attribute commands Conceal Attribute / Modify Attribute commands Editing a stored screen with the Select Screen command Mapping Character Fonts Power-up Interrupt Mode (Multidrop protocol)
Page 323
The host application program can get touch reports from the TCS as follows: the TCS can send them spontaneously the host can poll the TCS for them Any given application program should use only one of these methods; Polled Touch Mode specifies which method will be used.
Page 324
The Reporting Format command enables the following three characters to be changed in TCS reports: The First Introducer Character (default is <ESC>). The Second Introducer Character (default is left bracket: [). The Appended Terminator Character (default is no terminator). To provide for specific host computer protocols, the Reporting Format command can be used to redefine the format of reports.
Page 325
The interaction between the setting of the Origin Mode and a Scrolling Region can produce unexpected results. Note the following points: Setting Origin Mode repositions the cursor to row l, column 1 of the current scrolling region. Resetting Origin Mode repositions the cursor to row 1, column of the entire screen. When Origin Mode is set, the scrolling region acts like an independent smaller display.
Page 326
A scrolling region acts like a smaller independent screen when Origin Mode is set. Setting Origin Mode moves the cursor to the home position of the current scrolling region. Lines are numbered relative to the top of the scrolling region. Resetting Origin Mode moves the cursor to the home position of the entire screen.
Page 327
Confusion can arise from assuming that the NOCHANGE Attribute Mode prohibits changes to attributes under all circumstances. This is not the case. The purpose of NOCHANGE Attribute Mode is to prevent commands that indirectly call for attribute changes from having an effect, at the same time permitting directly commanded attribute changes to occur.
Page 328
Using the conceal attribute, entire sections of the display can be made to temporarily disappear. Later, the hidden portion of the display can be made to reappear with its original characters and associated attributes. A typical application would use the conceal attribute as follows: The host displays information in a region or touchkey.
Page 329
The Select Screen Command provides a convenient way for the host to select any screen for editing. Usually, the host selects the Displayed Screen in which case editing changes are visible as they are made. Sometimes the host may select a stored screen to be edited. This is a very powerful capability since a stored screen can be edited invisibly to the user.
Page 330
Any of the four character fonts can be mapped into either the Standard or Extended Character Sets. This provides a method to rearrange the contents of the character sets or to display custom characters. The mapping between the character fonts and character sets can vary from screen to screen (screen-dependent).
Page 331
The Power-Up Interrupt Modes provides a means for the host to be notified automatically whenever the TCS regains power after an unexpected power loss. When Power-Up Interrupt Mode is set, the TCS automatically generates an interrupt to the host indicating that power has just been restored.
The host can selectively disable touch reporting from touchkeys that do not correspond to touch targets by programming a touchkey type to be "dead." This simplifies touch report decoding for the host because the TCS does not generate any touch reports from dead touchkeys. However, if the Touchkey Type command is incorrectly sent with the dead parameter, especially if it is applied to the entire touch panel, touch reporting may appear to be defective or Touch Lockout Mode may seem to be set because no touch reports occur.
Page 333
To make interfacing as trouble-free as possible, the TCS features easily configured communication parameters. This configurability takes some care to manage. Usually a report in the Operational Status Window of the Setup Screen provides a tip if there are any problems, but sometimes the communication link is not properly established, and yet no message appears.
Page 334
Saving the Display Activity parameter as OFF (in the Setup Screen) can be mistaken for TCS failure when the unit is next powered up or reset and there is no display activity. Anytime the display is unexplainably dark, and remains so after a brief warm-up period, check the Set Up Screen first.
Page 335
This table explains the reports that can be displayed in the Operational Status Window of the Setup Screen. Also shown are the messages that can be communicated to the host via the Request Error Status command or the Error Interrupt Mode command. NOTE The term ’Expansion Memory’...
Page 336
The TCS received a code from the host but did not detect a stop bit. The code is lost, and an character is printed in its place. The host interface may not be configured to the proper framing format (see Communication Commands). A code received from the host was overwritten by a subsequent code before it could be consumed.
Page 337
The TCS has encountered a nonvolatile Expansion Memory device that has never been programmed or is improperly programmed for the current configuration. An Expansion Memory Uninitialized error can only occur during power-up or reset when the TCS reads the Expansion Memory configuration and performs automatic self-tests. During normal operation, the error should never occur following a Reset command.
Need help?
Do you have a question about the Dynapro ET TCS and is the answer not in the manual?
Questions and answers