X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fncurses-intro.doc;h=4e752ed0fc54816f5e0084db1b3fe46405aafd9b;hp=d9f978f1901a4b27bd319f8f01fc2be7058f342c;hb=95bcbd4bb8e933c86e6fc4aba9ea1c7fd3d30e3d;hpb=ed646e3f683083e787c6ba773364401dc9fa9d40 diff --git a/doc/ncurses-intro.doc b/doc/ncurses-intro.doc index d9f978f1..4e752ed0 100644 --- a/doc/ncurses-intro.doc +++ b/doc/ncurses-intro.doc @@ -132,20 +132,36 @@ A Brief History of Curses Historically, the first ancestor of curses was the routines written to - provide screen-handling for the game rogue; these used the - already-existing termcap database facility for describing terminal + provide screen-handling for the vi editor; these used the termcap + database facility (both released in 3BSD) for describing terminal capabilities. These routines were abstracted into a documented library - and first released with the early BSD UNIX versions. - - System III UNIX from Bell Labs featured a rewritten and much-improved - curses library. It introduced the terminfo format. Terminfo is based - on Berkeley's termcap database, but contains a number of improvements - and extensions. Parameterized capabilities strings were introduced, - making it possible to describe multiple video attributes, and colors - and to handle far more unusual terminals than possible with termcap. - In the later AT&T System V releases, curses evolved to use more - facilities and offer more capabilities, going far beyond BSD curses in - power and flexibility. + and first released with the early BSD UNIX versions. All of this work + was done by students at the University of California (Berkeley + campus). The curses library was first published in 4.0BSD, a year + after 3BSD (i.e., late 1980). + + After graduation, one of those students went to work at AT&T Bell + Labs, and made an improved termcap library called terminfo (i.e., + "libterm"), and adapted the curses library to use this. That was + subsequently released in System V Release 2 (early 1984). Thereafter, + other developers added to the curses and terminfo libraries. For + instance, a student at Cornell University wrote an improved terminfo + library as well as a tool (tic) to compile the terminal descriptions. + As a general rule, AT&T did not identify the developers in the + source-code or documentation; the tic and infocmp programs are the + exceptions. + + System V Release 3 (System III UNIX) from Bell Labs featured a + rewritten and much-improved curses library, along with the tic program + (late 1986). + + To recap, terminfo is based on Berkeley's termcap database, but + contains a number of improvements and extensions. Parameterized + capabilities strings were introduced, making it possible to describe + multiple video attributes, and colors and to handle far more unusual + terminals than possible with termcap. In the later AT&T System V + releases, curses evolved to use more facilities and offer more + capabilities, going far beyond BSD curses in power and flexibility. Scope of This Document @@ -2395,7 +2411,6 @@ typedef int (*HOOK)(); /* pointer to function returning int */ FIELDTYPE *new_fieldtype(HOOK f_validate, /* field validator */ HOOK c_validate) /* character validator */ - int free_fieldtype(FIELDTYPE *ftype); /* type to free */ At least one of the arguments of new_fieldtype() must be non-NULL. The