Text-Terminal-HOWTO (original) (raw)
NextPrevious Contents
David S. Lawyer mailto:dave@lafn.org
v1.43 March 2013
This document was originally written for real text terminals which were like monitors (with keyboards), but could only display text with a command line interface (no pictures). They were widely used to access mainframe computers in the late 1970's and 1980's but use of them declined in the 1990's and they are seldom used anymore. However much of this howto also applies to command-line interfaces on Linux PC's which are in wide use today. It's not about the user programs one might run on the command line, but about setting up, managing, and understanding the interface itself Such as using a monitor as a virtual (text-only) console, using a text-window in a GUI such as xterm, connecting to a remote computer over a network via ssh, telnet, etc., or even using software on another PC to turn it into a serial-port text-terminal. All these 4 methods are known as "text-terminal emulation". But unfortunately, the main emphasis in this howto is real text terminals and the coverage of emulation is inadequate for the first 3 methods of emulation mentioned above. The Keyboard-and-Console-HOWTO filled much this gap but it was written for Linux 2.0 and now needs rewriting (or merging into this Text-Terminal howto). A new author is needed that has time to do all this. For the seldom used real text-terminals, it explains how they work, explains how to install and configure them, and provides some info on how to repair them. This HOWTO also provides a brief overview of modern GUI terminals.
1. Introduction
- 1.1 Copyright, Trademarks, Disclaimer, & Credits
- 1.2 Future Plans: You Can Help
- 1.3 New Versions of this HOWTO
- 1.4 Related HOWTOs
- 1.5 Terminology Used in this Document
- 1.6 What is a Terminal ?
- 1.7 Real Text Terminals
2. Types of Terminals
3. Thin Clients Terminals
- 3.1 Introduction
- 3.2 MS Window terminals
- 3.3 Network computers (NC's)
- 3.4 Thin clients and NCs under Linux
- 3.5 Hardware hookups
- 3.6 History and the future
4. Quick Text-Terminal Install
5. Why Use a Terminal ?
- 5.1 Intro to Why Use a Terminal
- 5.2 Lower Hardware Costs ?
- 5.3 Control of Software
- 5.4 Hardware Upgrades
- 5.5 Other Advantages of Terminals
- 5.6 Major Disadvantages of Text Terminals
- 5.7 Major Disadvantages of All Terminals
- 5.8 Are Text Terminals Obsolete ?
6. Overview of How Text Terminals Work (in Linux)
- 6.1 Device Names
- 6.2 Login/Logout
- 6.3 Half/Full Duplex
- 6.4 Terminal Memory
- 6.5 Commands for the Terminal
- 6.6 Lack of Standardization Solved by Terminfo
- 6.7 The Interface
- 6.8 Emulation
- 6.9 The Console
7. Terminal Special Files such as /dev/tty
- 7.1 Serial Port Terminals
- 7.2 Pseudo Terminals
- 7.3 The Controlling Terminal /dev/tty
- 7.4 /dev/ttyIN "Terminals"
- 7.5 The Console: ttyN or vc/N
- 7.6 Creating a Device with "mknod"
8. Some Details on How Terminals Work
- 8.1 Terminal Memory Details
- 8.2 Early Terminals
- 8.3 Escape Sequences and Control Codes (intro)
- 8.4 Display Attributes & Magic Cookies
9. Special Features/Types of Some Terminals
- 9.1 Terminal Uses a PC Monitor
- 9.2 Color
- 9.3 Multiple Sessions
- 9.4 Printer/Auxiliary Port
- 9.5 Pages
- 9.6 Character-Sets
- 9.7 Fonts
- 9.8 Keyboards & Special Keys
- 9.9 Mouse
10. Terminal Emulation (including the Console)
- 10.1 Intro to Terminal Emulation
- 10.2 Don't Try to Use TERM Variable for Emulation
- 10.3 Serial Communication programs
- 10.4 Testing Terminal Emulation
- 10.5 The Linux Console
- 10.6 Emulation Software
- 10.7 Colors on Emulated Terminals
11. Flow Control (Handshaking)
- 11.1 Why Is Flow Control Needed ?
- 11.2 Padding
- 11.3 Overrunning a Serial Port
- 11.4 Stop Sending
- 11.5 Keyboard Lock
- 11.6 Resume Sending
- 11.7 Hardware Flow Control (RTS/CTS etc.)
- 11.8 Is Hardware Flow Control Done by Hardware ?
- 11.9 Obsolete ?? ETX/ACK or ENQ/ACK Flow Control
12. Physical Connection
- 12.1 Introduction
- 12.2 Multiport I/O Cards (Adapters)
- 12.3 Direct Serial Cable Connection.
- 12.4 Modem Connection
- 12.5 Telnet and ssh
- 12.6 Terminal Server Connection
- 12.7 Connector and Adapter Types
- 12.8 Making or Modifying a Cable
13. Set-Up (Configure) in General
- 13.1 Intro to Set-Up
- 13.2 Terminal Set-Up (Configure) Overview
- 13.3 Computer Set-Up (Configure) Overview
- 13.4 Many Options
- 13.5 Communication Interface Options
- 13.6 Quick Attempt
14. Terminal Set-Up (Configure) Details
- 14.1 Send Escape Sequences to the Terminal
- 14.2 Older Terminals Set-Up
- 14.3 Getting Into Set-Up (Configuration) Mode
- 14.4 Communication Options
- 14.5 Saving the Set-up
- 14.6 Set-Up Options/Parameters
- 14.7 Emulation {Personality} {{Terminal Modes}}
- 14.8 Display Options
- 14.9 Page Related Options
- 14.10 Reporting and Answerback
- 14.11 Keyboard Options
- 14.12 Meaning of Received Control Codes
- 14.13 Where New Text Goes
- 14.14 Function Keys
- 14.15 Block Mode Options
- 14.16 Locks
- 14.17 Screen Saver {Scrn Saver}
- 14.18 Printer
15. Computer Set-Up (Configure) Details
- 15.1 Getty (used in /etc/inittab)
- 15.2 Stty & Setserial
- 15.3 Setserial
- 15.4 Stty
- 15.5 Terminfo & Termcap (brief)
- 15.6 Setting TERM and TERMINFO
- 15.7 Rarely Needed /etc/ttytype File
- 15.8 Login Restrictions
- 15.9 Run Command Only If TERM=my_term_type
- 15.10 Character Mapping: mapchan
16. Terminfo and Termcap (detailed)
- 16.1 Intro to Terminfo
- 16.2 Terminfo Database
- 16.3 Bugs in Existing Terminfo Files (and Hardware)
- 16.4 Modifying Terminfo Files
- 16.5 Init String
- 16.6 TERM Variable
- 16.7 Terminfo/Termcap Documents
17. Using the Terminal
- 17.1 Intro to Using the Terminal
- 17.2 Starting Up the Terminal
- 17.3 Terminal (Serial) Device Driver
- 17.4 Problems with Editors
- 17.5 Problem with Slow Scrolling
- 17.6 Bugs in Bash ?
- 17.7 Color ls Corruption
- 17.8 Display Freezes (hung terminal)
- 17.9 Corrupted Terminal Interface
- 17.10 Special (Control) Characters
- 17.11 Viewing Latin1 Files on a non-Latin1 terminal
- 17.12 Eliminating Overstriking in Files
- 17.13 Inspecting the Interface
- 17.14 Changing the Terminal Settings
- 17.15 Multiple Sessions
- 17.16 Logging Out
- 17.17 Chatting between Terminals, Spying
- 17.18 Sharing the Serial Port
- 17.19 Browsers for Text-Terminals
18. Special Uses for a Terminal
- 18.1 Make a Serial Terminal the Console
- 18.2 Run Linux without a Monitor
- 18.3 Use a Keyboardless Terminal as the Monitor
19. Trouble-Shooting
- 19.1 Terminal Was Working OK
- 19.2 Terminal Newly Installed
- 19.3 Is the Terminal OK ?
- 19.4 Missing Text
- 19.5 All Keys Work Erratically; Must Hit a Key a Few Times
- 19.6 ... respawning too fast: disabled for 5 minutes
- 19.7 Fails Just After Login
- 19.8 Can't Login
- 19.9 Garbled Login Prompt
- 19.10 No Login Prompt
- 19.11 Displays Foreign/Weird Characters/Symbols
- 19.12 Displays Escape Sequences
- 19.13 Slow: pauses of several seconds between bursts of characters
- 19.14 Cursor Jumps
- 19.15 Terminal doesn't scroll
- 19.16 Serial Monitoring/Diagnostics
- 19.17 Local Mode
- 19.18 Serial Electrical Test Equipment
20. Repair & Diagnose
- 20.1 Repair Books & Websites
- 20.2 Safety
- 20.3 Appearance of Display
- 20.4 Diagnose
- 20.5 Detective work
- 20.6 Error Messages on the Screen
- 20.7 Capacitors
- 20.8 Keyboards
21. Appendix A: General
- 21.1 List of Linux Terminal Commands
- 21.2 The Internet and Books
- 21.3 Non-Linux OSs
22. Appendix B: Escape Sequence Commands Terminology
- 22.1 Esc Sequence Lists
- 22.2 8-bit Control Codes
- 22.3 Printer Esc
- 22.4 Reports
- 22.5 Cursor Movements
- 22.6 Pages (definition)
23. Appendix C: Serial Communications on EIA-232 (RS-232)
- 23.1 Intro to Serial Communication
- 23.2 Voltages
- 23.3 Parity Explained
- 23.4 Forming a Byte (Framing)
- 23.5 Limitations of EIA-232
- 23.6 Synchronization & Synchronous
- 23.7 Block Mode
- 23.8 EIA-232 (RS-232) Books
- 23.9 Serial Software
24. Appendix D: Notes by Brand/Model
- 24.1 Adds
- 24.2 CIT
- 24.3 IBM Terminals
- 24.4 Teletypes
- 24.5 VT (originally DEC, now Boundless)
- 24.6 Links
- 24.7 Qume
- 24.8 Wyse Terminals
NextPrevious Contents