gm2-libs-pim/Terminal#
DEFINITION MODULE Terminal ;
(*
   It provides simple terminal input output
   routines which all utilize the TermBase module.
*)
EXPORT QUALIFIED Read, KeyPressed, ReadAgain, ReadString, Write,
                 WriteString, WriteLn ;
(*
   Read - reads a single character.
*)
Read
PROCEDURE Read (VAR ch: CHAR) ;
(*
   KeyPressed - returns TRUE if a character can be read without blocking
                the caller.
*)
KeyPressed
PROCEDURE KeyPressed () : BOOLEAN ;
(*
   ReadString - reads a sequence of characters.
                Tabs are expanded into 8 spaces and <cr> or <lf> terminates
                the string.
*)
ReadString
PROCEDURE ReadString (VAR s: ARRAY OF CHAR) ;
(*
   ReadAgain - makes the last character readable again.
*)
ReadAgain
PROCEDURE ReadAgain ;
(*
   Write - writes a single character to the Termbase module.
*)
Write
PROCEDURE Write (ch: CHAR) ;
(*
   WriteString - writes out a string which is terminated by a <nul>
                 character or the end of string HIGH(s).
*)
WriteString
PROCEDURE WriteString (s: ARRAY OF CHAR) ;
(*
   WriteLn - writes a lf character.
*)
WriteLn
PROCEDURE WriteLn ;
END Terminal.