From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/tty/ttyclln.x | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 sys/tty/ttyclln.x (limited to 'sys/tty/ttyclln.x') diff --git a/sys/tty/ttyclln.x b/sys/tty/ttyclln.x new file mode 100644 index 00000000..34e57328 --- /dev/null +++ b/sys/tty/ttyclln.x @@ -0,0 +1,32 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include +include "tty.h" + +# TTYCLEARLN -- Clear the current line. The cursor is left positioned at the +# left margin. If the clear has to be performed by overwriting the line with +# blanks, the final column is not cleared. + +procedure ttyclearln (fd, tty) + +int fd +pointer tty +pointer sp, buf +int nchars, ttygets() +errchk salloc, ttygets, putc, ttywrite, fprintf, pargi + +begin + call smark (sp) + call salloc (buf, SZ_CTRLSTR, TY_CHAR) + + nchars = ttygets (tty, "ce", Memc[buf], SZ_CTRLSTR) + if (nchars > 0) { + call putci (fd, '\r') + call ttywrite (fd, tty, Memc[buf], nchars, 1) + } else { + call fprintf (fd, "\r%*w\r") + call pargi (T_NCOLS(tty) - 1) + } + + call sfree (sp) +end -- cgit