[net.games.rogue] Spouse- and boss-friendly feature for rogue

riddle@ut-sally.UUCP (10/13/83)

Here's a proposed enhancement to rogue that would probably save a few
marriages and make a lot of bosses happier:  how about adding a clock
that unobtrusively displays the time of day in one corner of the screen?
Vnews, another piece of viceware on our system, has this feature and
even if it doesn't prevent us news junkies from wasting time, it at least
helps to make us feel guilty about it.

For that matter, how about a general-purpose process that sits between
the terminal and the system, reducing a 24-line terminal to a 23-line
window plus a single user-definable status line containing goodies like
the time-of-day, system name, current working directory, or whatever
else can be packed into 80 characters?

Always happy to suggest work for other people to do...

                                 -- Prentiss Riddle
                                    {ihnp4,kpno,ctvax}!ut-sally!riddle
                                    riddle@ut-sally.UUCP

mark@cbosgd.UUCP (Mark Horton) (10/14/83)

The feature Prentiss Riddle requests obviously does not, as you've
pointed out, belong in rogue, but in a separate tool.  The good
news is that this tool already exists.  It's called "sysline" and
it comes in the stock 4.2BSD distribution.  It does much more than
just keep a clock up there.  It also shows the load average, recent
change in load average, number of users on the system, number of
running and stopped processes you have, and other stuff.  It tells
you when someone logs on or off.  When mail comes in, it tells you
this fact, who it's from, and what it's about.  (Since it updates
the screen every minute, this goes away if you're away from your
terminal.  Unread mail is then marked with an * so you can still tell.)
It will also show any information you provide - I have mine configured
to show my current working directory.  In short, it's a slick program.

Now for the bad news.  Since you have to still have your shell and
related child programs (e.g. editors) running without them knowing
anything special ("any fix that requires the rest of the world to be
modified for it to work is not a fix, it's a bug"), and in order to
keep things reasonably efficient (e.g. avoiding a pty and curses
layer between you and your shell), the only way to make sysline work
is to have a terminal with a status line.  sysline writes out messages
(with a single "write" call) that save the cursor position, go to
the status line, write out the info, and restore the cursor position.
So you also need a save/restore cursor capability, or some way to
fake a status line and save/restore cursor.  Several capabilities
have been added to termcap and terminfo for this, but not all terminals
have them.  So sysline only works on a handful of terminals.  From
memory, these terminals are:

	Heath/Zenith h19
	Televideo 950		(ugly left justified unhighlighted display)
	DEC VT100		(stealing top line, leaving 23)
	Concept AVT
	Ann Arbor Ambassador	(stealing top line, leaving 59)
	HP 2626			(stealing one window and bottom line)
	Freedom 100
	Wyse 100

Sysline works with either termcap or terminfo.  However, it does poke
in the kernel's memory to get the load average and process counts, so
it would require some porting to other systems.

	Mark