If you're considering porting tf to a non-UNIX-like operating system,
here are some assumptions in the code you should be aware of that are
true on UNIX-like systems but not necessarily others.

  socket() and select().  If your system doesn't have these, you should
  probably forget about porting tf.

  gethostbyname().

  The value returned by time() increases by 1 each second (I think ANSI
  guarantees only that it increases monotonically).  Used to time
  /quote, /repeat, mail checks, etc.

  variable.c:  environment variables are accessible through char **environ,
  and stored in the form "name=value".

  signals.c:  a superset of ANSI signals.

  tty.c:  one of termios, termio, or sgtty terminal driver.

  output.c:  termcap library and/or vt100/vt220/ansi compatible display.

  system() executes its argument in a subshell; its return value can be
  interpreted like that of POSIX or UNIX wait().

  tfio.c:  popen().  Used by "/quote !" and file decompression.

  ints are at least 32 bits (assumed by hook bitfield code).

  ASCII character set.

  Makefile and autoconfig:  Bourne shell and UNIX utilities.  These will
  probably have to be completely redesigned.

  Useful, but not essential:  getwd() or getcwd();  strftime().

  bsearch(), or all pointers are compatible.

  Probably a few other things I can't think of at the moment.
