Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

The early history of the "more" command

4 views
Skip to first unread message

Daniel C Halbert

unread,
Mar 4, 1994, 9:59:11 AM3/4/94
to
[I mentioned this where I work, and was inspired to write it down. --Dan]

I was a first-year graduate student at UC Berkeley in 1978. I had been
an undergraduate at MIT, and had used the ITS timesharing systems
there, which ran on PDP-10's. ITS put a "--MORE--" at the bottom of the
screen when one typed out files; you pressed the space bar to
continue.

At Berkeley, we'd just gotten our first VAX UNIX system, though there
were already PDP-11 UNIX systems. There was a very simple program
through which one could pipe stdout to do screen-at-a-time output. It
rang the terminal bell after printing 24 lines, and waited for a
carriage return. It was called "cr3". My guess is that in some version
of UNIX, someone had hacked a page-at-a-time output mode into the
tty output drivers. Using stty, one could already say "cr0", "cr1",
and "cr2", which added different amounts of delay when printing a
carriage return, for the benefit of slow printing terminals. "cr3" was
probably unused, and the page-at-a-time mode was piggybacked on it. But
our version of UNIX didn't have this "cr3" stty mode; instead we had
the "cr3" program that provided equivalent functionality.

Many of the terminals at Berkeley were Lear-Siegler ADM-3 and ADM-3A
"dumb" terminals. Both models (or maybe just the ADM-3 - I don't
remember) rang the terminal bell when the cursor advanced to near the
right margin, as a typewriter bell would. Unfortunately, they rang the
bell on output as well as keyboard input, which made for incessant
beeping. It was particularly maddening in a room full of terminals.
So most of the bell speakers had been disconnected.

Since "cr3" rang the terminal bell to indicate that a full page had
been output, you couldn't tell when it was waiting for input on those
muted terminals. The problem was exacerbated by the slow response time
of the overloaded UNIX systems.

So I wrote a simple "cr3"-like program, but had it print "--More--"
instead of ringing the bell. I had it accept space instead of carriage
return to continue, because that was what I was used to from ITS. I
also made it take multiple filenames, and had it print lines of colons
("::::::::::::") before and after it printed each filename.

I named the program "more". This was a daring move at the time, since
it was such a long name for a UNIX command, and was also a real English
word.

Subsequently, my friends and fellow graduate students Eric Shienbrood
and Geoff Peck greatly expanded the program, adding all kinds of
command line options and different possible responses to the "--More--"
prompt. It was of course distributed in the BSD versions of UNIX.

Some time later, Don Norman wrote an article for Datamation entitled
"The Trouble with UNIX", in which he complained, among other things,
about the cryptic nature of most UNIX command names, citing "more" as
an example. I never did tell him that I thought "more" was a great
improvement over "cr3".

I was later amused to see "more" appear in MS-DOS (and perhaps even
before, in CP/M?).

Dan Halbert
hal...@world.std.com

Ed Falk

unread,
Mar 6, 1994, 9:52:23 PM3/6/94
to
In article <CM5AG...@world.std.com> hal...@world.std.com (Daniel C Halbert) writes:
>[I mentioned this where I work, and was inspired to write it down. --Dan]
>
>I was later amused to see "more" appear in MS-DOS (and perhaps even
>before, in CP/M?).

I implemented a "more" under CP/M in 1979. Like you, I'd grown fond of
the pager functionality in ITS in 1975. So when I was using an Imsai
8080 with an ADM3a, I hacked up the tty driver in the bios to give a
--more-- prompt every screenful.

If you tell that to kids today, they won't believe you.

0 new messages