Ken was working in Ing70 [he was part of the Ingres group] - IngVax did not yet exist, ᐧ ᐧ On Sat, May 25, 2024 at 11:57 AM G. Branden Robinson < g.branden.robinson@gmail.com> wrote: > Hi Clem, > > At 2024-05-25T11:40:13-0400, Clem Cole wrote: > > It was never needed to be ported -- it was developed on V7. > > It was released in comp.sources.unix volume1 as pcurses > > This bit conflicts with other accounts. Here's what I have in draft. > > HISTORY > 4BSD (1980) introduced curses, implemented largely by Kenneth > C. R. C. Arnold, who organized the terminal abstraction and screen > management features of Bill Joy’s vi(1) editor into a library. > That system ran only on the VAX architecture; curses saw a port to > 2.9BSD (1983) for the PDP‐11. > > System V Release 2 (SVr2, 1984) significantly revised curses and > replaced the termcap portion thereof with a different API for > terminal handling, terminfo. System V added form and menu > libraries in SVr3 (1987) and enhanced curses with color support in > SVr3.2 later the same year. SVr4 (1989) brought the panel library. > > pcurses by distinction was, by the accounts I have, a later effort by > Pavel Curtis to clone SVr2 curses by taking BSD curses and replacing its > termcap bits with a reimplementation terminfo. This was apparently done > for licensing reasons, as BSD code was free ("as in freedom") and System > V certainly was not. > > The pcurses 0.7 tarball I have contains a document, doc/manual.tbl.ms, > which starts as follows. Note the 2nd and 3rd paragraphs. > > .po +.5i > .TL > The Curses Reference Manual > .AU > Pavel Curtis > .NH > Introduction > .LP > Terminfo is a database describing many capabilities of over 150 > different terminals. Curses is a subroutine package which > presents a high level screen model to the programmer, while > dealing with issues such as terminal differences and optimization of > output to change one screenfull of text into another. > .LP > Terminfo is based on Berkeley's termcap database, but contains a > number of improvements and extensions. Parameterized strings are > introduced, making it possible to describe such capabilities as > video attributes, and to handle far more unusual terminals than > possible with termcap. > .LP > Curses is also based on Berkeley's curses package, with many > improvements. The package makes use of the insert and delete > line and character features of terminals so equipped, and > determines how to optimally use these features with no help from the > programmer. It allows arbitrary combinations of video attributes > to be displayed, even on terminals that leave ``magic cookies'' > on the screen to mark changes in attributes. > > > That said, I believe late volumes have nervous updates. > > I'm gathering data for another paragraph of that "History" section now. > The long and short of it seems to be that: > > BSD curses, besides getting ported to many platforms, begat pcurses. > > pcurses begat PCCurses, PDCurses, and ncurses. > > PCCurses died. > > PDCurses went dormant, begat PDCursesMod, and roused from its slumber. > > ncurses, after a long period of erratic early administration that seemed > more concerned with seizing celebrity status for its developers (one of > whom was more single-minded and successful at this goal than the other) > than with software development, has been maintained with a steady hand > over 25 years. > > There also exists NetBSD curses, which wasn't developed ex nihilo but > I'm not sure yet what origin it forked from. > > Regards, > Branden >