The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Question about finding curses to build on v7
@ 2019-06-11  2:52 Adam Thornton
  2019-06-11  6:12 ` Erik E. Fair
  2019-06-11 17:05 ` Lars Brinkhoff
  0 siblings, 2 replies; 10+ messages in thread
From: Adam Thornton @ 2019-06-11  2:52 UTC (permalink / raw)
  To: tuhs

[-- Attachment #1: Type: text/plain, Size: 1618 bytes --]

I've been playing with simh recently, and there is a nonzero chance I will
soon be acquiring a PDP/11-70.

I realize I could run 2.11BSD on it, and as long as I stay away from a
networking stack, I probably won't see too many coremap overflow errors.
But I think I'd really rather run V7.

However, there's one thing that makes it a less than ideal environment for
me.  I grew up after cursor-addressable terminals were a thing, and, even
if I can eventually make "ed" do what I want, it isn't much fun.  I've been
an Emacs user since 1988 and my muscle memory isn't going to change soon
(and failing being able to find and build Gosmacs or an early GNU Emacs,
yes, I can get by in vi more easily than in ed; all those years playing
Nethack poorly were good for something).

So...where can I find a curses implementation (and really all I need in the
termcap or terminfo layer is ANSI or VTxxx) that can be coerced into
building on V7 pretty easily?

Also, I think folks here might enjoy reading a little personal travelogue
of some early Unix systems from my perspective (which is to say, a happy
user of Unix for 30+ years but hardly ever near core development (I did do
the DIAG 250 block driver for the zSeries port of OpenSolaris; then IBM
pushed a little too hard on the price and Sun sold itself to (ugh) Oracle
instead; the world would have been more fun if IBM had bought the company
like we were betting on)).  That's at
https://athornton.dreamwidth.org/14340.html ; that in turn references a
review I did about a year ago of The Unix Hater's Handbook, at
https://athornton.dreamwidth.org/14272.html .

Adam

[-- Attachment #2: Type: text/html, Size: 1933 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11  2:52 [TUHS] Question about finding curses to build on v7 Adam Thornton
@ 2019-06-11  6:12 ` Erik E. Fair
  2019-06-11 12:19   ` ron
  2019-06-11 17:08   ` Lars Brinkhoff
  2019-06-11 17:05 ` Lars Brinkhoff
  1 sibling, 2 replies; 10+ messages in thread
From: Erik E. Fair @ 2019-06-11  6:12 UTC (permalink / raw)
  To: Adam Thornton; +Cc: tuhs

Adam,

The emacs you should search for is "Montgomery emacs" written by Warren Montgomery - it ran on PDP-11's under Unix.

The first Unix system I had regular access to and learned on was the UCB Cory Hall PDP-11/70 running 2.8 BSD starting in Winter 1981, but before I learned vi, I'd learned Emacs on TOPS-20 on a DECsystem-20/60 at Stanford during summer school a few years prior, so any emacs was the quick way in for me. I switched because I got tired of having one finger on the CTRL key all day long ...

IIRC, it was a stripped down version as compared to what I now know is "original" Emacs written in TECO macros - no "minibuffer" and some other stuff missing, but it had enough of the "right" keybindings that someone who knew emacs already could make it go.

I'm still in touch with Ken Arnold (we were contemporaries at UCB), and he might be willing to help you make termcap & termlib go on V7 Unix. As I remember that code, it's not that big. It wouldn't surprise me if the NetBSD CVS repository for that code has the original versions.

As for the Unix Hater's Handbook, a long stretch of the chapter on sendmail is an E-mail I sent to the RISKS digest after an E-mail disaster I had to manage at Apple ... I remember being surprised at seeing in the published book, until I saw the footnote directly quoting the permission I gave the authors to publish it. "Oh, yeah ..."


	Erik <fair@clock.org>

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11  6:12 ` Erik E. Fair
@ 2019-06-11 12:19   ` ron
  2019-06-11 13:43     ` Clem Cole
  2019-06-11 17:08   ` Lars Brinkhoff
  1 sibling, 1 reply; 10+ messages in thread
From: ron @ 2019-06-11 12:19 UTC (permalink / raw)
  To: 'Erik E. Fair', 'Adam Thornton'; +Cc: tuhs

The other early "emacs" we ran before switching to gosmacs was
JOVE--Jonathan's Own Version of Emacs.




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11 12:19   ` ron
@ 2019-06-11 13:43     ` Clem Cole
  2019-06-11 15:48       ` Mary Ann Horton Gmail
  2019-06-11 17:12       ` Lars Brinkhoff
  0 siblings, 2 replies; 10+ messages in thread
From: Clem Cole @ 2019-06-11 13:43 UTC (permalink / raw)
  To: Ronald Natalie; +Cc: Erik E. Fair, TUHS main list

[-- Attachment #1: Type: text/plain, Size: 1321 bytes --]

Two more thoughts...

1.) Zimmerman EMACS (a.k.a. CCA EMACS) ran on the PDP-11 originally when
Steve wrote it at MIT.  It's the closest to the original ITS/PDP-10 emacs
of all the originals that I knew.    I'm pretty sure he converted it to
Pavel's freely available terminfo implementation at some point (when he was
at Masscomp), but I think the original Zimmerman code has screwed down
terminal support to a couple of terminals that were used at MIT.   I've
lost track of Steve, but I'll see if I can find you an email by reaching
out on an Alumni list.

2.) I believe the first (joy created) termcap was in 2BSD but I don't think
Arnold and Horton had started to pull the curses library out of vi yet.  I
think termcap itself had been but Mary Ann would be more authoritative than
I.  Check out the 2BSD, 3BSD, and 4BSD releases and look for the earliest
versions.   The C compiler is pretty much the same in all cases (the only
issue I can think is that by 3BSD folks at UCB had removed dmr's 7
character variable limit), but I think curses should compile without too
much issue on a virgin dmr V7 compiler.
ᐧ

On Tue, Jun 11, 2019 at 8:20 AM <ron@ronnatalie.com> wrote:

> The other early "emacs" we ran before switching to gosmacs was
> JOVE--Jonathan's Own Version of Emacs.
>
>
>
>

[-- Attachment #2: Type: text/html, Size: 2336 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11 13:43     ` Clem Cole
@ 2019-06-11 15:48       ` Mary Ann Horton Gmail
  2019-06-11 17:12       ` Lars Brinkhoff
  1 sibling, 0 replies; 10+ messages in thread
From: Mary Ann Horton Gmail @ 2019-06-11 15:48 UTC (permalink / raw)
  To: tuhs

[-- Attachment #1: Type: text/plain, Size: 2306 bytes --]

Termcap and termlib from 2BSD should work fine on standard V6/V7 - 
that's what they were originally written for.  You don't need curses for 
vi or emacs, they have their own comparable code internally.  In fact, 
the original 2BSD curses from Ken Arnold was basically the vi code 
pulled out into a separate library.

Warren Montgomery's emacs was internal to Bell Labs and intended for 
Bell Labs versions of PDP-11 UNIX, not 2BSD, although I recall it was 
often ported to the Vax. I can't recall which version of UNIX they ran 
in the various Computer Centers in the early 1980s when this happened, 
but I doubt it was V7; probably PWB or UNIX/TS. It would have had the 
Ritchie C compiler. I can't recall if it used termcap or had the 
terminals hardcoded - apparently both, according to this:

https://tech-insider.org/unix/research/1983/0119.html

     Mary Ann

On 6/11/19 6:43 AM, Clem Cole wrote:
> Two more thoughts...
>
> 1.) Zimmerman EMACS (a.k.a. CCA EMACS) ran on the PDP-11 originally 
> when Steve wrote it at MIT.  It's the closest to the original 
> ITS/PDP-10 emacs of all the originals that I knew.    I'm pretty sure 
> he converted it to Pavel's freely available terminfo implementation at 
> some point (when he was at Masscomp), but I think the original 
> Zimmerman code has screwed down terminal support to a couple of 
> terminals that were used at MIT.   I've lost track of Steve, but I'll 
> see if I can find you an email by reaching out on an Alumni list.
>
> 2.) I believe the first (joy created) termcap was in 2BSD but I don't 
> think Arnold and Horton had started to pull the curses library out of 
> vi yet.  I think termcap itself had been but Mary Ann would be more 
> authoritative than I.  Check out the 2BSD, 3BSD, and 4BSD releases and 
> look for the earliest versions.   The C compiler is pretty much the 
> same in all cases (the only issue I can think is that by 3BSD folks at 
> UCB had removed dmr's 7 character variable limit), but I think curses 
> should compile without too much issue on a virgin dmr V7 compiler.
> ᐧ
>
> On Tue, Jun 11, 2019 at 8:20 AM <ron@ronnatalie.com 
> <mailto:ron@ronnatalie.com>> wrote:
>
>     The other early "emacs" we ran before switching to gosmacs was
>     JOVE--Jonathan's Own Version of Emacs.
>
>
>

[-- Attachment #2: Type: text/html, Size: 4334 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11  2:52 [TUHS] Question about finding curses to build on v7 Adam Thornton
  2019-06-11  6:12 ` Erik E. Fair
@ 2019-06-11 17:05 ` Lars Brinkhoff
  1 sibling, 0 replies; 10+ messages in thread
From: Lars Brinkhoff @ 2019-06-11 17:05 UTC (permalink / raw)
  To: Adam Thornton; +Cc: tuhs

Adam Thornton wrote:
> I've been an Emacs user since 1988 and my muscle memory isn't going to
> change soon (and failing being able to find and build Gosmacs or an
> early GNU Emacs

I have Gosling Emacs and early versions of GNU Emacs here:

https://github.com/larsbrinkhoff/emacs-history

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11  6:12 ` Erik E. Fair
  2019-06-11 12:19   ` ron
@ 2019-06-11 17:08   ` Lars Brinkhoff
  1 sibling, 0 replies; 10+ messages in thread
From: Lars Brinkhoff @ 2019-06-11 17:08 UTC (permalink / raw)
  To: Erik E. Fair; +Cc: tuhs

Erik E. Fair wrote:
> The emacs you should search for is "Montgomery emacs" written by
> Warren Montgomery - it ran on PDP-11's under Unix.

It's also known as BTL Emacs, AT&T Emacs, Unix PC Emacs, and Toolchest
Emacs.  I have some later versions, but I'm not sure they'll run on a
PDP-11.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11 13:43     ` Clem Cole
  2019-06-11 15:48       ` Mary Ann Horton Gmail
@ 2019-06-11 17:12       ` Lars Brinkhoff
  2019-06-11 17:26         ` Clem Cole
  1 sibling, 1 reply; 10+ messages in thread
From: Lars Brinkhoff @ 2019-06-11 17:12 UTC (permalink / raw)
  To: Clem Cole; +Cc: Erik E. Fair, TUHS main list

Clem Cole wrote:
> 1.) Zimmerman EMACS (a.k.a. CCA EMACS) ran on the PDP-11 originally
> when Steve wrote it at MIT.

I have this on the origin of Montgomery and Zimmerman Emacs:

  "[Montgomery's] emacs implementation was begun in 1979, after having
  left MIT.  I made it freely available to people INSIDE of Bell Labs,
  and it was widely used. It was never officially "released" from Bell
  Labs."

  "Unfortunately, several copies did get out during that time, mainly
  due to people who left Bell Labs to return to school or gave copies to
  friends.  When Zimmerman modified one of those copies as the original
  basis for CCA emacs, AT&T and CCA had a prolonged debate over it.
  Eventually the matter was resolved when Zimmerman replaced the last of
  my code"

https://github.com/larsbrinkhoff/emacs-history/blob/sources/Usenet/net.emacs/btl-emacs-2.txt

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11 17:12       ` Lars Brinkhoff
@ 2019-06-11 17:26         ` Clem Cole
  2019-06-11 18:05           ` Mary Ann Horton Gmail
  0 siblings, 1 reply; 10+ messages in thread
From: Clem Cole @ 2019-06-11 17:26 UTC (permalink / raw)
  To: Lars Brinkhoff; +Cc: Erik E. Fair, TUHS main list

[-- Attachment #1: Type: text/plain, Size: 2168 bytes --]

Interesting and that sounds quite plausible.   CCA sold it at one point.
Masscomp (because Steve was working for us) got a license and a
redistribution license.   IIRC: we could redistribute the binary for free
as long as CCA got Steve's changes back.

Steve definitely did the terminfo/lib work for CCA Emacs at Masscomp, as I
had pointed out that AT&T was moving to terminfo but was locking it up
inside of the System V (AT&T 'consider it standard' stuff - much to a
number of their own people telling them not too).   Pavel ?? Curtis I think
?? - I've forgotten his last name -  had written a new uncontaminated
version at Cornell that was a functional replacement and that could read
the AT&T ASCII database and compile them properly.   (I don't remember if
Pavel's version could take the AT&T binary versions).  I had obtained
Pavel's version and we were shipping that as our terminfo/lib
implementation on the Masscomp boxes and were switching our code to use it,
as we had not yet signed a System V license and were shipping on a System
III based one.    Steve started to include Pavel's library in the CCA
version, which he got from me.
ᐧ

On Tue, Jun 11, 2019 at 1:12 PM Lars Brinkhoff <lars@nocrew.org> wrote:

> Clem Cole wrote:
> > 1.) Zimmerman EMACS (a.k.a. CCA EMACS) ran on the PDP-11 originally
> > when Steve wrote it at MIT.
>
> I have this on the origin of Montgomery and Zimmerman Emacs:
>
>   "[Montgomery's] emacs implementation was begun in 1979, after having
>   left MIT.  I made it freely available to people INSIDE of Bell Labs,
>   and it was widely used. It was never officially "released" from Bell
>   Labs."
>
>   "Unfortunately, several copies did get out during that time, mainly
>   due to people who left Bell Labs to return to school or gave copies to
>   friends.  When Zimmerman modified one of those copies as the original
>   basis for CCA emacs, AT&T and CCA had a prolonged debate over it.
>   Eventually the matter was resolved when Zimmerman replaced the last of
>   my code"
>
>
> https://github.com/larsbrinkhoff/emacs-history/blob/sources/Usenet/net.emacs/btl-emacs-2.txt
>

[-- Attachment #2: Type: text/html, Size: 3254 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [TUHS] Question about finding curses to build on v7
  2019-06-11 17:26         ` Clem Cole
@ 2019-06-11 18:05           ` Mary Ann Horton Gmail
  0 siblings, 0 replies; 10+ messages in thread
From: Mary Ann Horton Gmail @ 2019-06-11 18:05 UTC (permalink / raw)
  To: tuhs

[-- Attachment #1: Type: text/plain, Size: 4589 bytes --]

Most of what was produced internally to AT&T had to stay there, because 
lawyers.

I was at Bell Labs by the time I changed termcap/termlib and the Arnold 
curses into "The New Curses and Terminfo", which I presented at Usenix 
in Boston 1982.  Terminfo was "compiled", and Curses had a new algorithm 
to use insert/delete line/char to avoid having to redraw the whole screen.

I wasn't allowed to distribute it outside AT&T. Pavel Curtis of CMU 
stepped up and, at my encouragement, volunteered to rewrite it to the 
same spec. I worked with him on the spec and the algorithm, and his 
version was available to open source.

If you were at the Boston conference, you may recall my presentation. My 
Director, Tony Cuilwik, was in the audience, and this was my first 
public talk since joining Bell Labs, so I was nervous. As I was stepping 
to the podium to begin my talk, Armando Stettner interrupted to present 
me with the "Flying Rubber Chicken Award". Someone offstage threw him a 
rubber chicken. The chicken was quickly vanished and replaced with the 
real award, "The Term Cap". Armando explained that the hat was an Bell 
System hard hat, donated by Ken Thompson himself. Scotched to the hat 
were "hacker eyes" (googly eye glasses) and a Steve Martin style 
arrow-through-the-head "for the term info to go in and come out". He 
left me there, holding the award, as I had to reboot my brain to begin 
my talk.

I still have that award. It graced my workplace for many years. When I 
worked at Bank One in Columbus, I put it on a styrofoam head on top of 
my cube. A coworker had contributed a yellow cheerleader pompom which 
gave her hair. When Chase bought Bank One, there were Chase big shots 
coming through our building, I was told to take it down because it 
didn't look "professional". I was offended - "that's an award!" It 
stayed down for several months, and people complained because, in that 
cube farm of identical rows of cubes, "people used that for navigation". 
I made a little plaque explaining the award and placed it next to the 
restored Term Cap on my cube. The award sat on my cube at SDG&E for 11 
years without incident, and now that I'm retired I proudly display it on 
my piano at home.

     Mary Ann

On 6/11/19 10:26 AM, Clem Cole wrote:
> Interesting and that sounds quite plausible.   CCA sold it at one 
> point. Masscomp (because Steve was working for us) got a license and a 
> redistribution license.   IIRC: we could redistribute the binary for 
> free as long as CCA got Steve's changes back.
>
> Steve definitely did the terminfo/lib work for CCA Emacs at Masscomp, 
> as I had pointed out that AT&T was moving to terminfo but was locking 
> it up inside of the System V (AT&T 'consider it standard' stuff - much 
> to a number of their own people telling them not too).   Pavel ?? 
> Curtis I think ?? - I've forgotten his last name -  had written a new 
> uncontaminated version at Cornell that was a functional replacement 
> and that could read the AT&T ASCII database and compile them 
> properly.   (I don't remember if Pavel's version could take the AT&T 
> binary versions).  I had obtained Pavel's version and we were shipping 
> that as our terminfo/lib implementation on the Masscomp boxes and were 
> switching our code to use it, as we had not yet signed a System V 
> license and were shipping on a System III based one.   Steve started 
> to include Pavel's library in the CCA version, which he got from me.
> ᐧ
>
> On Tue, Jun 11, 2019 at 1:12 PM Lars Brinkhoff <lars@nocrew.org 
> <mailto:lars@nocrew.org>> wrote:
>
>     Clem Cole wrote:
>     > 1.) Zimmerman EMACS (a.k.a. CCA EMACS) ran on the PDP-11 originally
>     > when Steve wrote it at MIT.
>
>     I have this on the origin of Montgomery and Zimmerman Emacs:
>
>       "[Montgomery's] emacs implementation was begun in 1979, after having
>       left MIT.  I made it freely available to people INSIDE of Bell Labs,
>       and it was widely used. It was never officially "released" from Bell
>       Labs."
>
>       "Unfortunately, several copies did get out during that time, mainly
>       due to people who left Bell Labs to return to school or gave
>     copies to
>       friends.  When Zimmerman modified one of those copies as the
>     original
>       basis for CCA emacs, AT&T and CCA had a prolonged debate over it.
>       Eventually the matter was resolved when Zimmerman replaced the
>     last of
>       my code"
>
>     https://github.com/larsbrinkhoff/emacs-history/blob/sources/Usenet/net.emacs/btl-emacs-2.txt
>

[-- Attachment #2: Type: text/html, Size: 6863 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-06-11 18:05 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-11  2:52 [TUHS] Question about finding curses to build on v7 Adam Thornton
2019-06-11  6:12 ` Erik E. Fair
2019-06-11 12:19   ` ron
2019-06-11 13:43     ` Clem Cole
2019-06-11 15:48       ` Mary Ann Horton Gmail
2019-06-11 17:12       ` Lars Brinkhoff
2019-06-11 17:26         ` Clem Cole
2019-06-11 18:05           ` Mary Ann Horton Gmail
2019-06-11 17:08   ` Lars Brinkhoff
2019-06-11 17:05 ` Lars Brinkhoff

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).