Subject: Re: Anyone recommend a good terminal type?
To: None <port-i386@netbsd.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: port-i386
Date: 03/29/2000 18:23:32
> A "termcap" (or "terminfo") entry defines the capabilities of the
> terminal.

Well, I'd say "describes"; it's the terminal itself that *defines* its
capabilities.

> As for the authors of the terminal emulators (and in particular the
> eumlators used for the OS consoles of machines like PCs), they should
> be extremely careful in thinking about which base terminal type to
> choose to emulate, which features to leave out (if any), and just as
> importantly which new features they might think to add to enhance the
> base terminal type (if any).

Of course, there's no particular reason why they have to emulate any
particular existing "real" terminal.  When I did my terminal emulator,
I did exactly that: ignored all "real" terminals.  (Later, I added an
emulation module designed around ANSI X3.41/X3.64, to which I added
various DEC extensions, producing a very serviceable VT100 emulator.)

> Personally I'd be extremely happy if the standard MI console emulator
> for NetBSD were to take a lesson from Kermit and *exactly* emulate a
> real terminal with no extensions at all whatsoever, with 100%
> bug-for-bug compatability.

I doubt that's really possible in any significant number of cases.  If
nothing else, the keyboard will be different.

> If several types are possible then all the better, just so long as
> they are *perfect* emulations.

Note also that true bug-for-bug emulation will more or less require the
ROMed code from the original terminal, since AFAIK nobody knows what
bugs may lurk in corner cases.  (I'm also not sure full bug-for-bug
compatability is a good thing; is it necessarily desirable to have the
emulated terminal crash when - and in the same way that - the real one
would?)

> There's nothing more painful and frustrating than a unique terminal
> "emulation" on a console that doesn't 100% match any real terminal
> from a terminfo/termcap point of view,

I don't think I've yet seen a terminal emulation that 100% matches the
real thing.  If nothing else the keybaord layouts are always wrong.
(Yes, this can matter, if some program assumes things about the
keyboard geometry.)  Even with respect to output only, I've never seen
an emulator that was a perfect emulation.  Even my own, the closest
thing it emulates is something in the VT-xxx line, and it supports some
of X3.64 that AFAIK none of the VT-xxx terminals do, and definitely
supports some DCS sequences the rael things don't.

With respect to the specific case of an i386 console, I suspect that
you'll find very few real 25-line terminals, and also suspect you'll
find comparatively few people willing to give up that 25th line for the
sake of your desire for an unattainable perfect emulation of some real
thing.  (As opposed to terminals which have a 25th line in hardware but
make it accessible only as a "status" line of some sort, which of
course would be emulable but would lose that line as far as most
programs are concerned.)

					der Mouse

			       mouse@rodents.montreal.qc.ca
		     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B