TIPIN and TIPOUT processes with a third "attention" pipe. While we're
here, fix a few other minor nits like the hardcoded use of fd 3 in
consh().
Now ~+/~C appear to work. This must have been broken for years.
encountered, such as a USB serial device being unplugged.
Instead of spinning, the process reading from the serial line will exit,
leaving the process reading from the local terminal to exit when it notices
that its child has gone away.
and address() macros with new macros of the same names (to get values),
and macros with those names but with "set" prepended and which take a
second argument (to set values). The new macros use type casts to do
type conversion, which is much cleaner than using a union and making
endianness-related hacks to get the right 'short's and 'char's from
the right array indices. (YUCK! again, for good measure.)