Terminal Compatibility
CONSOLE TERMINAL
Most operating systems, and JANOS is no exception, utilize some form of
Command Line Interface. With the JNIOR, the command line can be accessed
serially through the RS-232 (COM) port at 115,200 baud, 8 data bits, 1 stop
bit and no parity. Typically these days this is accomplished with a
USB-To-Serial adapter and a terminal program. When the JNIOR is properly
configured for the network, any number of Telnet client programs can be used
to access the command line. With the Series 4 JNIOR one can also open the
default Dynamic Configuration Pages (WebUI) using a standard browser. In this
case the command line is referred to as a Console Session and you can login
via the Console tab.
The command line interface uses the standard ASCII character set and is not
graphical. Telnet client programs and terminal emulators communicate on a
character by character basis allowing you to utilize the features of the
JANOS command line. In general a program supporting the ANSI or VT-100 escape
sequences is required. While you can interact successfully with only a basic
terminal passing keystrokes and displaying characters, the experience is
greatly improved when the correct emulation is in place.
JANOS utilizes only a basic subset of the VT-100 codes. These will be outlined
below. It is recommended that any custom terminal emulation program be written
to support these sequences.
KEYBOARD EMULATION
Keystrokes are sent to the JNIOR for processing. If appropriate they are echoed
for display by the JNIOR. ASCII characters fall into the range 0 to 127 which
encompasses the standard character set with punctuation and a series of control
characters (values less than 32). There are a number of special keys on the
standard computer keyboard that do not translate into individual ASCII codes.
Fortunately the JNIOR utilizes only a few special keys. With VT-100 emulation
these keys are automatically translated into an escape sequence. The custom
terminal emulator must enable these translations. The following are used by
the command line interface:
Cursor Emulation, Positioning and Editing
Up Arrow ESC[A
Down Arrow ESC[B
Right Arrow ESC[C
Left Arrow ESC[D
Home Key ESC[1~
End Key ESC[4~
Page Up Key ESC[5~
Page Down Key ESC[6~
Ins Key ESC[2~
Note that the Backspace Key is assumed to translate to an ASCII 0x08. The
Delete Key (Del) should translate to an ASCII 0x7F (127) code. In terminal
programs (e.g. PuTTY) this behavior can be customized.
CONTROL CODES
Control codes are ASCII values between 0 and 0x1F (31 decimal) inclusive.
They have various meanings. In particular the following are used by the JNIOR.
Ctrl-A 0x01 (1 decimal)
toggles anchor used in text selection [2]
Ctrl-C 0x03 (3 decimal)
cancels current actions, displays the banner, editor
selection copy [2]
Ctrl-H 0x08 (8 decimal)
backspace - Backspace Key
Ctrl-I 0x09 (9 decimal)
tab toggles filename auto-fill [1], advances to tab
stops in editing [2] - Tab Key
Ctrl-M 0x0D (13 decimal)
Carriage return Enter Key
Ctrl-Q 0x11 (17 decimal)
Exits editor [2]
Ctrl-V 0x16 (22 decimal)
Editor selection paste [2]
Ctrl-X 0x18 (24 decimal)
Editor selection cut [2]
Ctrl-Y 0x19 (25 decimal)
Editor Redo [2]
Ctrl-Z 0x1A (26 decimal)
Editor Undo [2]
Ctrl-[ 0x1B (27 decimal)
Editor Escape [2] - Esc Key
[1] JNIOR Series 4 feature
[2] JANOS v2 feature.
SCREEN EDITOR
The JNIOR Series 3 and Series 4 with JANOS v1 operating code do not utilize
escape sequences to manipulate displayed character data. The following are
required by JANOS v2 specifically to support the the screen editor
EDIT .
Where shown the '#' is replaced by a numeric value represented by ASCII
digits. This indicates the number of times that the action is to be repeated.
If the decimal value is omitted it is assumed to be one (1).
Move cursor Up ESC[#A
Move cursor Down ESC[#B
Move cursor Right ESC[#C
Move cursor Left ESC[#D
Erase from cursor to end of line ESC[K
Format character normal ESC[0m
Format character reverse video (selected) ESC[7m
Disable Line Wrap ESC[?l
Note that the UP and DOWN arrow movements move to the same column in the line
above or below on the display respectively. If the destination line is shorter
and does not extend to the target column the cursor is moved to the after the
last position on the new line. A RIGHT arrow is ignored once the cursor reaches
the end of the line. A LEFT arrow is ignored if the cursor is positioned at
the beginning of the line. In other words there is no wrap. The logic for this
is handled by JANOS. So if your terminal emulation handles movements
differently the result should still be as described here.
The Disable Line Wrap escape sequence is sent when the screen editor is
started. Lines that wrap would cause confusion with page oriented editing.
This wrapping feature is to be disabled. The character formatting is used in
highlighting characters when being selected for Copy, Cut and Paste operations.
The editor cannot detect the state of the Shift key and relies on dropping
the Ctrl-A anchor to start highlighting. Characters are then highlighted as
the cursor is moved. Terminal emulation that does not support the formatting
of individual characters (e.g. HTML textarea) can accomplish the selection
highlighting by some other means. The formatting escape sequences should be
ignored in that case. The cursor movement and line erasure escape sequences
are critical in enabling a functional screen oriented editor.
[/flash/manpages/reference.hlp:717]