[comp.arch] kit wishlist and software

johnw@astroatc.UUCP (John F. Wardale) (03/01/88)

	In a recnet ncs.32k discussion:

In article <183@anumb.UUCP> mvuxq!adh@anumb.UUCP (a.d.hay) writes:

>one thing i've always wanted to try --
>instead of just hanging a uart off the bus to implement a serial port,
>why not imbed the tty driver in a single-chip micro with embedded uart?
>single-chippers are almost as cheap as a separate uart.
>buffer i/o with a byte-wide ram dual-ported by cycle-stealing.

In 4.2/4.3 the the tty drivers all call the line-disipline
routines, which do the "real" tty stuff.  There are several
line-disciplines (LDs): The old v7 one (OTTYDISC), the new
(Berkeley) one (NTTYDISC), the Berkely-tty-net one (NETDISC) usefull
with block-transter terminals (i.e. *NOT* a vi-editing environ.)
And new with 4.3: SLIPDISC for running Serial Internet Protocal on
a serial medium!   If we had the 4.2 driver in your single-chiper,
and got 4.3 and WANTED SLIPDISC, we'd be S.O.L. !!!  (Ok, so you
could probably hack around it, but it'd be UGLY!)

Also, ptys need to use this code too (script, rlogind, et.al.) so
imbeding it does NOT let you remove it!  (Or did you want to copy
in into *ALL* the network drivers too?  or maybe have all the
network drivers talk to it??)

It's a hard problem, but there are many cases (like here) where
centralization is *GOOD*.

--------------------------------------

Things that DO work:

tty OUTPUT is generally 50 to 200 times more common than input.
(cat foo, ^F in vi, etc. etc.)
What you really need/want is to process all the output, buffer it,
THEN let some semi-inteligent <hunk-of-HW> spit the characters at
the terminal one-at-a-time.  For input, you frequently have to
send *EACH* character to the host: *remost-hosts* always send
each.  *VI* must send each, or imbed editor support into the
controller-or-whatever.

What I'm contemplating is setting up my controller (8 ports, 19.2k,
9600 baud max, one 68000) with a loadable character-indexed
"what-to-do" table.  For "normal" operations, normal letters would
echo them selves, Control-characters could echo ^<letter> if set
up to...     Given sufficient ambition, the "actions" could
involve things like "redisplay screen-buffer"

This (of course) means that vi, emacs, jove, et-al. would have to
be hacked (alot ??) to take advantage of such things.



-- 
					John Wardale
... {seismo | harvard | ihnp4} ! {uwvax | cs.wisc.edu} ! astroatc!johnw

To err is human, to really foul up world news requires the net!