Next
Previous
Contents
Since a PC has a screen and keyboard (as does a terminal) but also
has much more computing power, it's easy to use some of this computing
power to make the PC computer behave like a text terminal. This is
one type of terminal emulation. Another type of terminal emulation is
where you set up a real terminal to emulate another brand/model of
terminal. To do this you select the emulation you want (called
"personality" in Wyse jargon) from the terminal's set-up menu. This
section is about the first type of emulation: emulating a terminal on
a PC.
In emulation, one of the serial ports of the computer will be used to
connect the emulated terminal to another computer, either with a
direct cable connection from serial port to serial port, or via a
modem. Emulation provides more that just a terminal since the PC
doing the emulation can also do other tasks at the same time it's
emulating a terminal. For example, kermit or zmodem may be run on the
PC to enable transfer of files over the serial line (and possibly over
the phone line via a modem) to the other computer that you are
connected to. The emulation needs only to be run on one of the virtual
consoles of the PC, leaving the other virtual consoles available for
using the PC in command-line-interface.
Much emulation software is available for use under the MS Windows OS.
See
Make a non-Linux PC a terminal This
can be used to connect a Windows PC to a Linux PC (as a
Text-Terminal). Most Linux free software can only emulate a VT100,
VT102, or VT100/ANSI. If you find out about any others, let me know.
Since most PC's have color monitors while VT100 and VT102 were
designed for a monochrome monitor, the emulation usually adds color
capabilities (including a choice of colors). Sometimes the emulation
is not 100% perfect but this usually causes few problems. For using a
Mac computer to emulate a terminal see the mini-howto: Mac-Terminal.
Some have erroneously thought that they could create an emulator
at a Linux console (monitor) by setting the environment variable TERM
to the type of terminal they would like to emulate. This does not
work. The value of TERM only tells an application program what
terminal you are using. This way it doesn't need to interactively ask
you this question. If you're at a Linux PC monitor (command line
interface) it's a terminal of type "Linux" and your can't change this.
So you must set TERM to "Linux".
If you set it to something else you are fibbing to application
programs. As a result they will incorrectly interpret certain escape
sequences from the console resulting in a corrupted interface. Since
the Linux console behaves almost like a vt100 terminal, it could still
work almost OK if you falsely claimed it was a vt100 (or some other
terminal which is something like a vt100). It may seeming work OK
most of the time but once in a while will make a mistake when editing
or the like.
Dialing programs for making a PPP connection to the Internet don't
normally include any terminal emulation. But some other modem dialing
programs (such as minicom or seyon) do. Using them, one may (for
example) dial up some public libraries to use their catalogs and
indexes, (or even read magazine articles). They are also useful for
testing modems. Seyon is only for use with X Window and can emulate
Tektronix 4014 terminals.
The communication program Kermit doesn't do terminal emulation as it
is merely a semi-transparent pipe between whatever terminal you are on
and the remote site you are connected to. Thus if you use kermit on a
Linux PC the terminal type will be "Linux". If you have a Wyse60
connected to your PC and run kermit on that, you will appear as a
Wyse60 to the remote computer (which may not be able to handle Wyse60
terminals). Minicom emulates a VT102 and if you use it on Wyse60
terminal VT102 escape sequences coming into your computer's serial
port from a remote computer will get translated to the Wyse escape
sequences before going out another serial port to your Wyse60
terminal. Kermit can't do this sort of thing.
Emulators exist under DOS such as telix and procomm work
just as well. The terminal emulated is often the old VT100, VT102, or
ANSI (like VT100).
Emulation under X Window
Xterm (or uxterm which is like xterm except it supports unicode)
may be run under X Window. They can emulate a VT102, VT220, or
Tektronix 4014. There are also various xterm emulations (although
there is no physical terminal named "xterm"). If you want pixmaps
but don't need the Tektronix 4014 emulation (a vector graphics
terminal; see
Graphics Terminals)
you may use eterm . Predecessors to eterm are rxvt and
xvt . One way to change font size in xterm is to right click the
mouse while holding down the Ctrl key.
For non-Latin alphabets, kterm is for Kanji terminal emulation (or for
other non-Latin alphabets) while xcin is for Chinese. There is also
9term emulation. This seems to be more than just an emulator as it
has a built-in editor and scroll-bars. It was designed for Plan 9, a
Unix-like operating system from AT&T.
Real terminals better
Unless you are using X Window with a large display, a real
terminal is often nicer to use than emulating one. It usually has
better resolution for text, and has no disk drives to make annoying
noises.
For the VT series terminals there is a test program: vttest
to help determine if a terminal behaves correctly like a vt53, vt100,
vt102, vt220, vt320, vt420 etc. There is no documentation but it has
menus and is easy to use. To compile it run the configure script and
then type "make". It may be downloaded from:
http://ibiblio.unc.edu/pub/Linux/utils/console/
The console for a PC Linux system is normally the computer monitor
in text mode. It emulates a terminal of type "Linux" and the escape
sequences it uses are in the man page: console_codes. There is no way
(unless you want to spend weeks rewriting the kernel code) to get it
to emulate anything else. Setting the TERM environment variable to
any type of terminal other than "Linux" will not result in emulating
that other terminal. It will only result in a corrupted interface
since you have falsely declared (via the TERM variable) that your
"terminal" is of a type different from what it actually is. See
Don't Use TERM For Emulation
In some cases, the console for a Linux PC is a text-terminal. One may
recompile Linux to make a terminal receive most of the messages which
normally go to the console. See
Make a Serial Terminal the Console.
The "Linux" emulation of the monitor is flexible and has features
which go well beyond those of the vt102 terminal which it was intended
to emulate. These include the ability to use custom fonts and easily
re-map the keyboard. These extra features reside in the console
driver software (including the keyboard driver). The console driver
only works for the monitor and will not work for a real terminal even
if it's being used for the console. Thus the "console driver" is
really a "monitor driver". In the early days of Linux one couldn't
use a real terminal as the console so "monitor" and "console" were
once always the same thing.
The stty commands work for the monitor-console just like it was a real
terminal. They are handled by the same terminal driver that is used
for real terminals. Bytes headed for the screen first go thru the
terminal (tty) driver and then thru the console driver. For the monitor
some of the stty commands don't do anything (such as setting the baud rate).
You may set the monitor baud rate to any allowed value (such as a slow
300 speed) but the actual speed of putting text on the monitor screen
will not actually change. The file /etc/ioctl.save stores stty
settings for use only when the console is in single user mode (but you
are normally in multiuser-user mode). This is explained (a little) in the
init man page.
Many commands exist to utilize the added features provided by the
console-monitor driver. Real terminals, which use neither scan codes
nor VGA cards, unfortunately can't use these features. To find out
more about the console see the Keyboard-and-Console-HOWTO. Also see
the various man pages about the console (type "man -k console").
Unfortunately, much of this documentation is outdated.
Emulators often don't work quite right so before purchasing
software you should try to throughly check out what you will get.
Make a Linux PC a terminal
Unless you want to emulate the standard vt100 (or close to it) or
a Wyse 60, there doesn't seem to be much free terminal emulation
software available for Linux. The free programs minicom and seyon
(only for X Window) can emulate a vt100 (or close to it). Seyon can
also emulate a Tektronix 4014 terminal. See
Wyse 60 emulator
Minicom may be used to emulate a directly connected terminal by simply
starting minicom (after configuring it for the serial port used). Of
course, you don't dial out and when you want to quit (after you logout
from the other PC) you use minicom's q command to quit without reset
since there is no modem to reset. When minicom starts, it
automatically sends out a modem init string to the serial port. But
since there's no modem there, the string gets put after the
"login:" prompt. If this string is mostly capital letters, the getty
program (which runs login) at the other PC may think that your
terminal has only capital letters and try to use only capital letters.
To avoid this, configure the modem init strings sent by minicom to
null (erase the init strings).
The terminal emulator "Procomm" (which is from Dos), can be used on a
Linux PC if you run dosemu to emulate Dos. For details see:
http://solarflow.dyndns.org/pcplus/.
There's a specialized Linux distribution: Serial Terminal Linux. It
will turn a PC to into a minicom-like terminal. It's small (fits on a
floppy) and will not let you use the PC for any other purpose (when
it's running). See
http://www.eskimo.com/~johnnyb/computers/stl/. It will let you
have more than one session running (similar to virtual terminals), one
for each serial port you have.
TERM (non-free commercial software from Century Software)
Terminal Emulator can emulate Wyse60, 50; VT 220, 102, 100,
52: TV950, 925, 912; PCTERM; ANSI; IBM3101; ADM-1l; WANG 2110. Block
mode is available for IBM and Wyse. It runs on a Linux PC.
Make a non-Linux PC a terminal
Emulators exist which run on non-Linux PCs. They permit you to
use a non-Linux-PC as a terminal connected to a Linux-PC. Under DOS
there is telix and procomm . Windows comes with
"HyperTerminal" (formerly simply called "Terminal" in Windows 3.x and
DOS). Competing with this is "HyperTerminal Private Edition"
http://www.hilgraeve.com/htpe/index.html which is non-free to
business. It can emulate vt-220. The Windows "terminals" are
intended for calling out with a modem but they should also work as
directly connected terminals?? Turbosoft's TTWin can emulate over 80
different terminals under Windows. See
http://www.ttwin.com/ or
http://www.turbosoft.com.au/ (Australia). See also
Reflection
For the Mac Computer there is emulation by Carnation Software
http://www.carnationsoftware.com/carnation/HT.Carn.Home.html
One place to check terminal emulation products is Shuford's site, but
it seems to lists old products (which may still work OK). The fact
that most only run under DOS (and not Windows) indicates that this
info is dated. See
http://www.cs.utk.edu/~shuford/terminal/term_emulator_products.txt.
Next
Previous
Contents
|