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