Above80 |
A parameterized string to print character '%p1' if that character is HEX(80) or greater. Many terminals (e.g. vt100) have a seven bit character set and will need to switch fonts to print such characters. The font should be returned to normal after printing the character. If not defined characters above HEX(80) are printed unaltered. |
ACSFix |
A Boolean parameter used to fix a bug in ACS terminals where the terminal would incorrectly change the font when attributes were changed. |
AttribOff |
Disables all attributes. No parameters required. On terminals without bold capability dim should be selected to allow normal to be used as the bright attribute. |
AttribOn |
A parameterized string to select a combination of attributes depending on the parameters supplied. If any of the parameters is non-zero then it should have the corresponding attribute enabled.
%p1 |
bold |
%p2 |
blink |
%p3 |
reverse |
%p4 |
underline |
%p5 |
always zero |
|
Below20 |
A parameterized string to print character '%p1' if that character is less than HEX(20). Many terminals cannot directly print such characters and may require a font change to do so. The font should be returned to normal after printing the character. If not defined characters below HEX(20) are printed unaltered. |
BoxEnd |
Issued at the end of box drawing to restore the normal font. |
BoxStart |
A font selection sequence to be issued at the start of a box. This is used when the terminal needs a special font selected for character boxes (e.g. vt100). |
Boxtable |
Default value for the $BOXTABLE table which specifies the method to be used for drawing boxes in the BOX( function. |
CGAborder |
A parameterized string with '%p1' the required border or overscan color for a CGA display (as above). The 0x08 bit can be set for bright. |
CGAcolour |
Synonym for CGAcolor. |
CGAcolor |
A parameterized string to print color if possible. '%p1' is the required background color and '%p2' is the foreground color using legal color numbers for the IBM CGA color display.
0 |
black |
1 |
blue |
2 |
green |
3 |
cyan |
4 |
red |
5 |
magenta |
6 |
brown |
7 |
white |
So on the SCO UNIX console,
CGAcolor=\E[=%p1%dG\E[=%p2%dF
On screens which support the ANSI color sequences the %r command can be used to change these IBM codes into the corresponding ANSI codes for foreground colors. Adding decimal 10 to foreground colors gives the corresponding color code for the background. E.g.
CGAcolor=\E[%r%p2%d;%p1%{10}%+%dm
|
ClearEndLine |
Specifies the sequence used to clear from the current cursor position to the end of the current line. This can be used to speed up PRINT AT(n, m, c) on DEC and Wyse terminals. This sequence is ignored and spaces are issued if there are any box attributes within the area to be cleared. |
ClearRestOfScreen |
Specifies the sequence used to clear from the current cursor position to the end of the screen. This can be used to speed up PRINT AT(n, m, ) on DEC and Wyse terminals. This sequence is ignored and spaces are issued if there are any box attributes within the area to be cleared. |
ClearScreen |
The sequence to clear the screen. It is assumed that this sequence homes the cursor. If this is not the case then the home sequence should be included. |
Columns |
A numeric parameter that specifies the number of columns on the screen. If not specified a default of 80 is assumed. |
CUATab |
Key that is to return '7B. |
CUAMode |
Turns on CUA mode by re-mapping Escape to return HEX(7F), Shift Tab to return HEX(7E), and Tab to return HEX(7B). |
CurBlink |
Turn on a blinking cursor. Issued in response to a HEX(0205 0F) sequence. If not supported by a terminal the same sequence as used for 'CurOn' should be given. |
CurDown |
Move the cursor down a line in the same column. The screen is assumed to scroll if issued in the last row. |
CurHome |
Position the cursor in the top left. |
CurLeft |
Move the cursor non-destructively one column to the left in the same row. The cursor is assumed to stay in the first column if issued in that column. |
CurOff |
Make cursor invisible. |
CurOn |
Turn on a steady cursor. |
CurParmDown |
Parameterized version of 'CurUp' to move up '%p1' lines in the same column. |
CurParmLeft |
Parameterized version of 'CurLeft' to move '%p1' columns to the left in the same row. |
CurParmRight |
Parameterized version of 'CurRight' to move '%p1' columns to the right in the same row. |
CurParmUp |
Parameterized version of 'CurUp' to move up '%p1' lines in the same column. |
CurPos |
Position the cursor to row '%p1' and column '%p2'. Both row and column positions are counted from (0,0) as the top left. |
CurRight |
Move the cursor non-destructively one column to the right in the same row. The cursor is assumed to stay in the last column if issued in that column. Hence any autowrap capability of the terminal must be disabled in the ‘Enter’ string. |
CurUp |
Move the cursor up a line in the same column. If already in row 0 this cursor need not move as KCML will position the cursor automatically to the last row in the same column. |
DefaultColours |
May be required by color terminals that need to support the editor but which have not capability to save and restore screens. It defines a sequence which causes the terminal to restore the colors saved by the terminals setup. |
DefaultScreen |
A Boolean parameter which indicates that a terminal can accept KCML screen commands directly. The default is false. If set then most parameters are ignored and need not be specified but 'Enter' and 'Exit' sequences are still issued allowing dual mode terminals to be switched into KCML mode by the 'Enter' sequence. |
Editor |
A Boolean parameter used to enable the full screen editor and debugger for this terminal. Note that the editor is only really supported by the Kclient and the Kerridge Windows DW terminal emulator. Enabling the editor on other terminals will work but only limited functionality is available. For best results the Multiscreen clause should also be enabled. |
Enter |
This sequence is sent when KCML starts and also on return from a SHELL command. This should be used to disable any autowrap, to select application keyboard mode if necessary and to select suitable fonts. |
Exit |
This sequence is sent when KCML terminates and just before starting a SHELL command. It can be used to re-enable autowrap if required. |
FastClear |
A Boolean used to increase the speed of the PRINT AT(x, y, z) statement used to blank portions of the screen on Wyse and DEC terminals. KCML keeps a copy of what is known to be on the screen an if this flag is set then it will only issue space characters to the screen if required. If not set then the required number of spaces is sent but see also ClearEndLine and ClearRestOfScreen. |
FontBox |
For type 2 boxes where STR($BOXTABLE,,1) == HEX(02)boxtabled, this parameterized string is used to draw an overscored character ‘%p1’. It can be used in combination with BoxStart and BoxEnd. |
Ideographic |
A Boolean parameter used to enable the use of ideographic characters. |
Init |
This sequence is sent when KCML starts up just before the Enter sequence is issued. It is not sent on return from a SHELL statement. It can be requested by a programmer who issues a HEX(0203 0C0D 0F) terminal initialisation command. In this case the Init string will be followed by an 'Enter' string. |
Lines |
A numeric parameter that specifies the number of writable rows on the screen. If not specified a default of 24 is assumed. |
Multiscreen |
A Boolean parameter used to enable the multiscreen characteristics used by the full screen editor and debugger. This parameter should only be enabled if the Editor clause is enabled. |
PrintOff |
Ends local print mode and re-selects screen. |
PrintOn |
Selects local printer. Only supply this sequence if the terminal is capable of diverting output directly to the local printer without it appearing on the screen. |
RobustFlow |
A Boolean parameter used to enable the sending of the FBF6 sequence to instruct 2x36 terminals to start sending unsolicited XONs. This should be used when MICOM multiplexors are used with Chase Research IOLAN cards. |
ScreenDump |
Specifies the key that is to be mapped to force KCML to create a screen dump file. The screen is written to a file named scrndxxx in the current directory where xxx is the partition. This file can then be loaded from disk by another user and displayed on their screen with the PRINT SCREEN statement. |
SpecTerm |
A Boolean parameter which tells KCML that the terminal used the Spectrix bi-directional flow control and that certain screen sequences must be escaped. The default is false. It should only be set to true for SPX701 terminals. |
Termcode |
Copied into byte 9 of $MACHINE. Each terminal within the source file has a Termcode allocated see the list of specific terminals supported later in this chapter. |
Use |
Instructs tik to copy information from the specified terminal. This makes it easier to create terminal definitions for terminals that are very similar, for example the "sun" and the "sun-cmd" entries where only the Enter and Exit clauses are different. |
WinBorder |
Optional string used to override the default attributes and characters used for the border of a window drawn with the WINDOW OPEN statement. It is an 11 character string with the first 3 bytes specifying attributes to use and the remaining 8 bytes specifying characters to use. All 11 bytes must be specified.
1 |
title attribute |
2 |
border attribute |
3 |
font flag (0x00 or 0x01) |
4 |
left edge character |
5 |
right edge character |
6 |
bottom edge character |
7 |
bottom left corner character |
8 |
bottom right corner character |
9 |
top left corner character |
10 |
top right corner character |
11 |
title fill character |
Attributes are a binary OR of the attributes bits used in the INPUT SCREEN statement
80 |
alternate char set |
40 |
reverse video |
20 |
blink |
10 |
bright |
The font flag should be set to 0x01 if the border characters require a change of font. The BoxStart sequence will then be issued at the start of drawing the border and the BoxEnd sequence at the end. |