On 03/29/16 07:20, Mihai Popescu wrote:
> Hello,
> 
> This question is somehow off topic but I know there are some readers
> here old enough to shade some light in this matter.
> I want to get and idea of what was or is an old true hardware UNIX
> terminal. I have searched google, but the word "terminal" associated
> with UNIX points most of the time to what we know today as UNIX shell.
> If someone, please, can show me a doc or explain a little bit what was
> a terminal at that moment back in time. I know that it was some kind
> of hardware, maybe RS232 related, used to connect to some main frame.
> But I am unable to find the details. I even lack some tech words to
> search deeper on the web.
> 
> Thank you.

long, long ago...on a computer in a dump far far away...

Rather than having a video display device inside the computer, a serial
terminal was used.  The terminal provided the keyboard and the display
of some kind and communicated with the computer over relatively simple
protocol, typically a RS-232 serial port.

The first generation "display of some kind" were typically printers.
After killing huge quantities of trees, the industry switched to using
CRTs as the display device.

If the computer sent out the sequence of bytes (in hex)
48 65 6c 6c 6f 0d 0a 57 6f 72 6c 64 21
the terminal would display something like:
+-------------------
| Hello
| World!_
|

the "0d" is a "carriage return" (CR), and moves the cursor (where the
next character will be displayed (and represented by the "_"  after the
"!" above) to the beginning of the SAME line, and "0a" is a Line Feed
(LF) and moves the character DOWN a line, so the next characters are at
the beginning of the next line.  (This is a point of confusion -- while
most terminals required a CR and a LF to move the cursor to the
beginning of the next line, different computers used different character
sequences to indicate the end of the line internally.  MSDOS, CP/M and
most other older, non-Unix systems used the CR/LF combination.  Apple
used CR only.  Unix uses LF only.  I'd argue that Unix is technically
WRONG, but it is ever so convenient for a LOT of reasons.

Most CRT-based terminals supported magic character sequences that did
things like clear the screen, locate the cursor at a particular
position, increase the intensity of the character (bold face) or reverse
video the character, etc.  More advanced (i.e., "less ancient")
terminals could do different sized characters (though usually an integer
multiple of the standard size -- double high, double wide),

Meanwhile, characters you type on the keyboard are sent to the computer
over the same serial interface.  One thing worth understanding is that
some keys on the keyboard generate one character (a-z, numbers,
punctuation), others generate NONE, but modify the other key's sent code
(i.e., "a" sends 61 hex, shift-a sends 41 hex, ctrl-a sends 01 hex), and
others send MULTIPLE characters (arrow keys, function keys).

Terminals were not a "Unix" thing -- most terminals (ignoring IBM's
products) were device agnostic, and could be used with almost any
computer that spoke the same language, which was usually ASCII (again,
ignoring IBM).  And yes, most of them were horribly Western language
(and even then, mostly "English") focused.

You can still attach a serial terminal to a unix machine and use it as
back in the 1970s and 1980s, but today, we generally use a full computer
running a terminal emulator program.  And in fact, when you ssh to a
machine, you are using a terminal-like system, with SSH as the protocol
over an ethernet cable instead of the serial cable.


Some things to search for:
* DEC VT100  (a terminal that still influcences the standards today)
* DEC VT52   (a terminal with an easier to understand command set)
* ADM3A      (a terminal that was old when the DEC vt100 came out)
* DECwriter  (printing terminal.  DECwriter II was a beautiful machine)
* TI Silent 700 ("home oriented" printing terminal.  At the time, in the
US, it was illegal to attach non-telephone company equipment to the
telephone company's phone lines...)
* ASCII      (the non-IBM standard character coding system)
* EBCDIC     (the IBM standard)
* ASR33      (one of the earliest printing terminals.  And why we use
"TTY" today in the Unix world!  If you wonder why unix commands are so
short, imagine typing on this...)
* Tektronix 4010 (In case you thought terminals were dull and graphics
free...and I suspect a LOT of people who have been rolling their eyes at
everything I've said up to now will have their eyes bug out a bit when
they figure out how these things work)

Anything more than that (and probably a lot less than that), probably
best to ask me off list. :)  (and yes, I've glossed over and simplified
a few things here)

Nick.

Reply via email to