(*
  (c) copyright 1988 by the Vrije Universiteit, Amsterdam, The Netherlands.
  See the copyright notice in the ACK home directory, in the file "Copyright".
*)

(*
  Module:       Interface to termcap database
  From:         Unix manual chapter 3
  Version:      $Id$
*)

(*$Foreign*)

DEFINITION MODULE XXTermcap;
(* See the Unix termcap manual to see what this does.
   Interfaces directly to C routines. Not pretty.
   Use Termcap.def instead for a nicer interface.
*)

  FROM SYSTEM IMPORT ADDRESS;

  TYPE PUTPROC = PROCEDURE(CHAR);

  VAR PC: CHAR;
      UP, BC: ADDRESS;
      ospeed: INTEGER[0..32767];


PROCEDURE tgetent(bp, name: ADDRESS): INTEGER;
(* name must be null-terminated *)

PROCEDURE tgetnum(id: ADDRESS): INTEGER;
(* id must be null-terminated *)

PROCEDURE tgetflag(id: ADDRESS): INTEGER;
(* id must be null-terminated *)

PROCEDURE tgetstr(id: ADDRESS; area: ADDRESS): ADDRESS;
(* id must be null-terminated *)

PROCEDURE tgoto(cm: ADDRESS; col, line: INTEGER) : ADDRESS;
(* cm must be null-terminated *)

PROCEDURE tputs(cp: ADDRESS; affcnt: INTEGER; p: PUTPROC);
(* cp must be null-terminated *)

END XXTermcap.