From 61790aa3ac9e0dff2b443ac567b174fc4d235b86 Mon Sep 17 00:00:00 2001 From: "Thomas E. Dickey" Date: Sun, 3 Jan 2021 02:22:25 +0000 Subject: [PATCH 1/1] ncurses 6.2 - patch 20210102 + update man/curs_memleaks.3x, to include which declares exit_terminfo. + clarify man/curs_terminfo.3x, to mention why the macro setterm is defined in , and remove it from the list of prototypes (prompted by patch by Graeme McCutcheon). + amend man/curs_terminfo.3x, to note that is required for certain functions, e.g., those using chtype or attr_t for types, as well as mvcur (cf: 20201031). + use parameter-names in prototypes in curs_sp_funcs.3x, for consistency with other manpages. --- Ada95/package/debian/copyright | 7 +- COPYING | 4 +- NEWS | 16 +- VERSION | 2 +- dist.mk | 6 +- doc/html/man/adacurses6-config.1.html | 2 +- doc/html/man/captoinfo.1m.html | 2 +- doc/html/man/clear.1.html | 2 +- doc/html/man/curs_memleaks.3x.html | 40 ++-- doc/html/man/curs_slk.3x.html | 3 +- doc/html/man/curs_sp_funcs.3x.html | 271 +++++++++++++------------ doc/html/man/curs_terminfo.3x.html | 137 +++++++------ doc/html/man/curs_threads.3x.html | 6 +- doc/html/man/form.3x.html | 2 +- doc/html/man/infocmp.1m.html | 2 +- doc/html/man/infotocap.1m.html | 2 +- doc/html/man/menu.3x.html | 2 +- doc/html/man/ncurses.3x.html | 2 +- doc/html/man/ncurses6-config.1.html | 2 +- doc/html/man/panel.3x.html | 2 +- doc/html/man/tabs.1.html | 2 +- doc/html/man/terminfo.5.html | 2 +- doc/html/man/tic.1m.html | 2 +- doc/html/man/toe.1m.html | 2 +- doc/html/man/tput.1.html | 2 +- doc/html/man/tset.1.html | 2 +- man/curs_memleaks.3x | 21 +- man/curs_slk.3x | 4 +- man/curs_sp_funcs.3x | 282 +++++++++++++------------- man/curs_terminfo.3x | 50 +++-- man/curs_threads.3x | 6 +- package/debian-mingw/changelog | 4 +- package/debian-mingw/copyright | 4 +- package/debian-mingw64/changelog | 4 +- package/debian-mingw64/copyright | 4 +- package/debian/changelog | 4 +- package/debian/copyright | 4 +- package/mingw-ncurses.nsi | 6 +- package/mingw-ncurses.spec | 2 +- package/ncurses.spec | 2 +- package/ncursest.spec | 2 +- test/package/debian-mingw/copyright | 4 +- test/package/debian-mingw64/copyright | 4 +- test/package/debian/copyright | 2 +- 44 files changed, 498 insertions(+), 435 deletions(-) diff --git a/Ada95/package/debian/copyright b/Ada95/package/debian/copyright index d248d73b..897961d0 100644 --- a/Ada95/package/debian/copyright +++ b/Ada95/package/debian/copyright @@ -1,14 +1,15 @@ -Upstream source https://invisible-island.net/ncurses/ncurses-examples.html +Upstream source https://invisible-island.net/ncurses/Ada95.html Current ncurses maintainer: Thomas Dickey ------------------------------------------------------------------------------- Files: * -Copyright: 1998-2019,2020 Free Software Foundation, Inc. +Copyright: 2017-2020,2021 by Thomas E. Dickey +Copyright: 1998-2016,2017 Free Software Foundation, Inc. Licence: X11 Files: aclocal.m4 package -Copyright: 2010-2019,2020 by Thomas E. Dickey +Copyright: 2010-2020,2021 by Thomas E. Dickey Licence: X11 Permission is hereby granted, free of charge, to any person obtaining a diff --git a/COPYING b/COPYING index 87658988..3a229753 100644 --- a/COPYING +++ b/COPYING @@ -1,4 +1,4 @@ -Copyright 2018-2019,2020 Thomas E. Dickey +Copyright 2018-2020,2021 Thomas E. Dickey Copyright 1998-2017,2018 Free Software Foundation, Inc. Permission is hereby granted, free of charge, to any person obtaining a @@ -26,4 +26,4 @@ sale, use or other dealings in this Software without prior written authorization. -- vile:txtmode fc=72 --- $Id: COPYING,v 1.9 2020/02/08 13:34:12 tom Exp $ +-- $Id: COPYING,v 1.10 2021/01/01 09:54:30 tom Exp $ diff --git a/NEWS b/NEWS index 8eb99de7..ed85f6fa 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,5 @@ ------------------------------------------------------------------------------- --- Copyright 2018-2019,2020 Thomas E. Dickey -- +-- Copyright 2018-2020,2021 Thomas E. Dickey -- -- Copyright 1998-2017,2018 Free Software Foundation, Inc. -- -- -- -- Permission is hereby granted, free of charge, to any person obtaining a -- @@ -26,7 +26,7 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------- --- $Id: NEWS,v 1.3610 2020/12/27 23:49:02 tom Exp $ +-- $Id: NEWS,v 1.3614 2021/01/02 23:56:42 tom Exp $ ------------------------------------------------------------------------------- This is a log of changes that ncurses has gone through since Zeyd started @@ -46,6 +46,18 @@ See the AUTHORS file for the corresponding full names. Changes through 1.9.9e did not credit all contributions; it is not possible to add this information. +20210102 + + update man/curs_memleaks.3x, to include which declares + exit_terminfo. + + clarify man/curs_terminfo.3x, to mention why the macro setterm is + defined in , and remove it from the list of prototypes + (prompted by patch by Graeme McCutcheon). + + amend man/curs_terminfo.3x, to note that is required + for certain functions, e.g., those using chtype or attr_t for + types, as well as mvcur (cf: 20201031). + + use parameter-names in prototypes in curs_sp_funcs.3x, for + consistency with other manpages. + 20201227 + update terminology entry to 1.8.1 -TD + fix some compiler-warnings which gcc8 reports incorrectly. diff --git a/VERSION b/VERSION index b1ea8743..ec4a2772 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5:0:10 6.2 20201227 +5:0:10 6.2 20210102 diff --git a/dist.mk b/dist.mk index f7525de2..4b8ddcf9 100644 --- a/dist.mk +++ b/dist.mk @@ -1,5 +1,5 @@ ############################################################################## -# Copyright 2018-2019,2020 Thomas E. Dickey # +# Copyright 2018-2020,2021 Thomas E. Dickey # # Copyright 1998-2017,2018 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # @@ -26,7 +26,7 @@ # use or other dealings in this Software without prior written # # authorization. # ############################################################################## -# $Id: dist.mk,v 1.1393 2020/12/27 23:48:19 tom Exp $ +# $Id: dist.mk,v 1.1394 2021/01/02 15:00:00 tom Exp $ # Makefile for creating ncurses distributions. # # This only needs to be used directly as a makefile by developers, but @@ -38,7 +38,7 @@ SHELL = /bin/sh # These define the major/minor/patch versions of ncurses. NCURSES_MAJOR = 6 NCURSES_MINOR = 2 -NCURSES_PATCH = 20201227 +NCURSES_PATCH = 20210102 # We don't append the patch to the version, since this only applies to releases VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) diff --git a/doc/html/man/adacurses6-config.1.html b/doc/html/man/adacurses6-config.1.html index b92ece9a..e02b3cd6 100644 --- a/doc/html/man/adacurses6-config.1.html +++ b/doc/html/man/adacurses6-config.1.html @@ -126,7 +126,7 @@

SEE ALSO

        curses(3x)
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/captoinfo.1m.html b/doc/html/man/captoinfo.1m.html
index 95490a8d..57d72acf 100644
--- a/doc/html/man/captoinfo.1m.html
+++ b/doc/html/man/captoinfo.1m.html
@@ -199,7 +199,7 @@
 

SEE ALSO

        infocmp(1m), curses(3x), terminfo(5)
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 

AUTHOR

diff --git a/doc/html/man/clear.1.html b/doc/html/man/clear.1.html
index d2d85441..37ef20c0 100644
--- a/doc/html/man/clear.1.html
+++ b/doc/html/man/clear.1.html
@@ -150,7 +150,7 @@
 

SEE ALSO

        tput(1), terminfo(5)
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/curs_memleaks.3x.html b/doc/html/man/curs_memleaks.3x.html
index 62f03549..388d969a 100644
--- a/doc/html/man/curs_memleaks.3x.html
+++ b/doc/html/man/curs_memleaks.3x.html
@@ -1,6 +1,6 @@
 
 
 
@@ -47,36 +47,36 @@
 
 
 

NAME

-       _nc_freeall, _nc_free_and_exit, _nc_free_tinfo - curses memory-leak
-       checking
+       exit_curses, exit_terminfo - curses memory-leak checking
 
 
 

SYNOPSIS

        #include <curses.h>
+       void exit_curses(int code);
 
-       void exit_curses(int);
-       void exit_terminfo(int);
+       #include <term.h>
+       void exit_terminfo(int code);
 
-       /* deprecated */
+       /* deprecated (intentionally not declared in curses.h or term.h) */
        void _nc_freeall(void);
-       void _nc_free_and_exit(int);
-       void _nc_free_tinfo(int);
+       void _nc_free_and_exit(int code);
+       void _nc_free_tinfo(int code);
 
 
 

DESCRIPTION

-       These functions are used to simplify analysis of memory  leaks  in  the
+       These  functions  are  used to simplify analysis of memory leaks in the
        ncurses library.
 
        Any implementation of curses must not free the memory associated with a
        screen, since (even after calling endwin(3x)), it must be available for
-       use  in  the next call to refresh(3x).  There are also chunks of memory
+       use in the next call to refresh(3x).  There are also chunks  of  memory
        held for performance reasons.  That makes it hard to analyze curses ap-
-       plications  for  memory leaks.  When using the specially configured de-
+       plications for memory leaks.  When using the specially  configured  de-
        bugging version of the ncurses library, applications can call functions
-       which  free  those chunks of memory, simplifying the process of memory-
+       which free those chunks of memory, simplifying the process  of  memory-
        leak checking.
 
-       Some of the functions are named with a "_nc_" prefix because  they  are
+       Some  of  the functions are named with a "_nc_" prefix because they are
        not intended for use in the non-debugging library:
 
        _nc_freeall
@@ -89,18 +89,18 @@
             ply exiting (with the given exit-code) is safer.
 
        _nc_free_tinfo
-            Use this function if only the low-level  terminfo  functions  (and
+            Use  this  function  if only the low-level terminfo functions (and
             corresponding library) are used.  Like _nc_free_and_exit, it exits
             the program after freeing memory.
 
-       The functions prefixed "_nc" are normally not available; they  must  be
+       The  functions  prefixed "_nc" are normally not available; they must be
        configured into the library at build time using the --disable-leaks op-
-       tion.  That compiles-in code that frees memory that normally would  not
+       tion.   That compiles-in code that frees memory that normally would not
        be freed.
 
-       The  exit_curses and exit_terminfo functions call _nc_free_and_exit and
-       _nc_free_tinfo if the library  is  configured  to  support  memory-leak
-       checking.   If  the  library  is  not configured to support memory-leak
+       The exit_curses and exit_terminfo functions call _nc_free_and_exit  and
+       _nc_free_tinfo  if  the  library  is  configured to support memory-leak
+       checking.  If the library is  not  configured  to  support  memory-leak
        checking, they simply call exit.
 
 
diff --git a/doc/html/man/curs_slk.3x.html b/doc/html/man/curs_slk.3x.html
index bfa1a945..38c3c61b 100644
--- a/doc/html/man/curs_slk.3x.html
+++ b/doc/html/man/curs_slk.3x.html
@@ -27,7 +27,7 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_slk.3x,v 1.36 2020/02/02 23:34:34 tom Exp @
+  * @Id: curs_slk.3x,v 1.37 2020/12/30 18:37:43 tom Exp @
 -->
 
 
@@ -59,6 +59,7 @@
        int slk_init(int fmt);
 
        int slk_set(int labnum, const char *label, int fmt);
+       /* extension */
        int slk_wset(int labnum, const wchar_t *label, int fmt);
 
        char *slk_label(int labnum);
diff --git a/doc/html/man/curs_sp_funcs.3x.html b/doc/html/man/curs_sp_funcs.3x.html
index c70a6d39..c934b28f 100644
--- a/doc/html/man/curs_sp_funcs.3x.html
+++ b/doc/html/man/curs_sp_funcs.3x.html
@@ -1,6 +1,6 @@
 
@@ -59,8 +59,8 @@
        typedef int (*NCURSES_SCREEN_CB)(SCREEN *, void *);
 
        int get_escdelay(void);
-       int set_escdelay(int size);
-       int set_tabsize(int size);
+       int set_escdelay(int ms);
+       int set_tabsize(int cols);
 
        int use_screen(SCREEN *scr, NCURSES_SCREEN_CB func, void *data);
        int use_window(WINDOW *win, NCURSES_WINDOW_CB func, void *data);
diff --git a/doc/html/man/form.3x.html b/doc/html/man/form.3x.html
index 8549b333..a0447c8c 100644
--- a/doc/html/man/form.3x.html
+++ b/doc/html/man/form.3x.html
@@ -248,7 +248,7 @@
        curses(3x) and related pages whose names  begin  "form_"  for  detailed
        descriptions of the entry points.
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/infocmp.1m.html b/doc/html/man/infocmp.1m.html
index dd53d551..04f469fc 100644
--- a/doc/html/man/infocmp.1m.html
+++ b/doc/html/man/infocmp.1m.html
@@ -514,7 +514,7 @@
 
        https://invisible-island.net/ncurses/tctest.html
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 

AUTHOR

diff --git a/doc/html/man/infotocap.1m.html b/doc/html/man/infotocap.1m.html
index 4c0bd602..9b755fb8 100644
--- a/doc/html/man/infotocap.1m.html
+++ b/doc/html/man/infotocap.1m.html
@@ -91,7 +91,7 @@
 

SEE ALSO

        infocmp(1m), tic(1m), curses(3x), terminfo(5)
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 

AUTHOR

diff --git a/doc/html/man/menu.3x.html b/doc/html/man/menu.3x.html
index 606e42fd..5b80f139 100644
--- a/doc/html/man/menu.3x.html
+++ b/doc/html/man/menu.3x.html
@@ -223,7 +223,7 @@
        curses(3x) and related pages whose names  begin  "menu_"  for  detailed
        descriptions of the entry points.
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/ncurses.3x.html b/doc/html/man/ncurses.3x.html
index 5408c286..dff3d2f4 100644
--- a/doc/html/man/ncurses.3x.html
+++ b/doc/html/man/ncurses.3x.html
@@ -60,7 +60,7 @@
        method of updating  character  screens  with  reasonable  optimization.
        This  implementation  is  "new  curses"  (ncurses)  and is the approved
        replacement for 4.4BSD classic curses,  which  has  been  discontinued.
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
        The  ncurses  library emulates the curses library of System V Release 4
        UNIX, and XPG4 (X/Open Portability Guide) curses  (also  known  as  XSI
diff --git a/doc/html/man/ncurses6-config.1.html b/doc/html/man/ncurses6-config.1.html
index 2ad91d50..a050e86f 100644
--- a/doc/html/man/ncurses6-config.1.html
+++ b/doc/html/man/ncurses6-config.1.html
@@ -113,7 +113,7 @@
 

SEE ALSO

        curses(3x)
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/panel.3x.html b/doc/html/man/panel.3x.html
index e27dd5f4..ff96a1ec 100644
--- a/doc/html/man/panel.3x.html
+++ b/doc/html/man/panel.3x.html
@@ -281,7 +281,7 @@
 

SEE ALSO

        curses(3x), curs_variables(3x),
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 

AUTHOR

diff --git a/doc/html/man/tabs.1.html b/doc/html/man/tabs.1.html
index 23cedfdc..f86e4e94 100644
--- a/doc/html/man/tabs.1.html
+++ b/doc/html/man/tabs.1.html
@@ -207,7 +207,7 @@
 

SEE ALSO

        infocmp(1m), tset(1), curses(3x), terminfo(5).
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/terminfo.5.html b/doc/html/man/terminfo.5.html
index bea6cf97..cdb63a86 100644
--- a/doc/html/man/terminfo.5.html
+++ b/doc/html/man/terminfo.5.html
@@ -106,7 +106,7 @@
        have, by specifying how to perform screen operations, and by specifying
        padding requirements and initialization sequences.
 
-       This manual describes ncurses version 6.2 (patch 20201219).
+       This manual describes ncurses version 6.2 (patch 20210102).
 
 
 

Terminfo Entry Syntax

diff --git a/doc/html/man/tic.1m.html b/doc/html/man/tic.1m.html
index 6074d411..64fc7977 100644
--- a/doc/html/man/tic.1m.html
+++ b/doc/html/man/tic.1m.html
@@ -461,7 +461,7 @@
        captoinfo(1m),   infocmp(1m),   infotocap(1m),   toe(1m),   curses(3x),
        term(5).  terminfo(5).  user_caps(5).
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 

AUTHOR

diff --git a/doc/html/man/toe.1m.html b/doc/html/man/toe.1m.html
index 212de1cc..bf3d4d94 100644
--- a/doc/html/man/toe.1m.html
+++ b/doc/html/man/toe.1m.html
@@ -171,7 +171,7 @@
        captoinfo(1m),   infocmp(1m),   infotocap(1m),   tic(1m),   curses(3x),
        terminfo(5).
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/tput.1.html b/doc/html/man/tput.1.html
index 2378f5ac..fcdaf716 100644
--- a/doc/html/man/tput.1.html
+++ b/doc/html/man/tput.1.html
@@ -523,7 +523,7 @@
 

SEE ALSO

        clear(1), stty(1), tabs(1), tset(1), curs_termcap(3x), terminfo(5).
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/doc/html/man/tset.1.html b/doc/html/man/tset.1.html
index 16c14009..53ca0ae5 100644
--- a/doc/html/man/tset.1.html
+++ b/doc/html/man/tset.1.html
@@ -391,7 +391,7 @@
        csh(1),   sh(1),   stty(1),   curs_terminfo(3x),  tty(4),  terminfo(5),
        ttys(5), environ(7)
 
-       This describes ncurses version 6.2 (patch 20201219).
+       This describes ncurses version 6.2 (patch 20210102).
 
 
 
diff --git a/man/curs_memleaks.3x b/man/curs_memleaks.3x
index 94a5766a..59bd3e85 100644
--- a/man/curs_memleaks.3x
+++ b/man/curs_memleaks.3x
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright 2019,2020 Thomas E. Dickey                                     *
+.\" Copyright 2019-2020,2021 Thomas E. Dickey                                *
 .\" Copyright 2008-2010,2017 Free Software Foundation, Inc.                  *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_memleaks.3x,v 1.9 2020/06/13 23:35:34 tom Exp $
+.\" $Id: curs_memleaks.3x,v 1.11 2021/01/02 23:47:51 tom Exp $
 .TH curs_memleaks 3X ""
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -36,25 +36,26 @@
 .na
 .hy 0
 .SH NAME
-\fB_nc_freeall\fP,
-\fB_nc_free_and_exit\fP,
-\fB_nc_free_tinfo\fP \- \fBcurses\fR memory-leak checking
+\fBexit_curses\fP,
+\fBexit_terminfo\fP \- \fBcurses\fR memory-leak checking
 .ad
 .hy
 .SH SYNOPSIS
 \fB#include \fR
+.br
+\fBvoid exit_curses(int \fP\fIcode\fP\fB);\fR
 .sp
-\fBvoid exit_curses(int);\fR
+\fB#include \fR
 .br
-\fBvoid exit_terminfo(int);\fR
+\fBvoid exit_terminfo(int \fP\fIcode\fP\fB);\fR
 .sp
-/* deprecated */
+/* deprecated (intentionally not declared in curses.h or term.h) */
 .br
 \fBvoid _nc_freeall(void);\fR
 .br
-\fBvoid _nc_free_and_exit(int);\fR
+\fBvoid _nc_free_and_exit(int \fP\fIcode\fP\fB);\fR
 .br
-\fBvoid _nc_free_tinfo(int);\fR
+\fBvoid _nc_free_tinfo(int \fP\fIcode\fP\fB);\fR
 .SH DESCRIPTION
 These functions are used to simplify analysis of memory leaks in the ncurses
 library.
diff --git a/man/curs_slk.3x b/man/curs_slk.3x
index 9eb2dfb4..a99be8f7 100644
--- a/man/curs_slk.3x
+++ b/man/curs_slk.3x
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_slk.3x,v 1.36 2020/02/02 23:34:34 tom Exp $
+.\" $Id: curs_slk.3x,v 1.37 2020/12/30 18:37:43 tom Exp $
 .TH curs_slk 3X ""
 .de bP
 .ie n  .IP \(bu 4
@@ -63,6 +63,8 @@
 .sp
 \fBint slk_set(int \fP\fIlabnum\fP\fB, const char *\fP\fIlabel\fP\fB, int \fP\fIfmt\fP\fB);\fR
 .br
+/* extension */
+.br
 \fBint slk_wset(int \fP\fIlabnum\fP\fB, const wchar_t *\fP\fIlabel\fP\fB, int \fP\fIfmt\fP\fB);\fR
 .sp
 \fBchar *slk_label(int \fP\fIlabnum\fP\fB);\fR
diff --git a/man/curs_sp_funcs.3x b/man/curs_sp_funcs.3x
index 76cfdad5..fd1c9b46 100644
--- a/man/curs_sp_funcs.3x
+++ b/man/curs_sp_funcs.3x
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright 2018-2019,2020 Thomas E. Dickey                                *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey                                *
 .\" Copyright 2010-2015,2017 Free Software Foundation, Inc.                  *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_sp_funcs.3x,v 1.21 2020/10/31 22:58:24 tom Exp $
+.\" $Id: curs_sp_funcs.3x,v 1.24 2021/01/02 23:53:22 tom Exp $
 .TH curs_sp_funcs 3X ""
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -43,277 +43,275 @@ curs_sp_funcs \- \fBcurses\fR screen-pointer extension
 \fB#include \fR
 .nf
 .sp
-\fBint alloc_pair_sp(SCREEN*, int, int);\fR
+\fBint alloc_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
 .br
-\fBint assume_default_colors_sp(SCREEN*, int, int);\fR
+\fBint assume_default_colors_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
 .br
-\fBint baudrate_sp(SCREEN*);\fR
+\fBint baudrate_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint beep_sp(SCREEN*);\fR
+\fBint beep_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBbool can_change_color_sp(SCREEN*);\fR
+\fBbool can_change_color_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint cbreak_sp(SCREEN*);\fR
+\fBint cbreak_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint color_content_sp(SCREEN*, short, short*, short*, short*);\fR
+\fBint color_content_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIcolor\fP\fB, short* \fP\fIr\fP\fB, short* \fP\fIg\fP\fB, short* \fP\fIb\fP\fB);\fR
 .br
-\fBint curs_set_sp(SCREEN*, int);\fR
+\fBint curs_set_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIvisibility\fP);\fR
 .br
-\fBint def_prog_mode_sp(SCREEN*);\fR
+\fBint def_prog_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint def_shell_mode_sp(SCREEN*);\fR
-.br
-\fBint define_key_sp(SCREEN*, const char *, int);\fR
-.br
-\fBint delay_output_sp(SCREEN*, int);\fR
-.br
-\fBint doupdate_sp(SCREEN*);\fR
-.br
-\fBint echo_sp(SCREEN*);\fR
-.br
-\fBint endwin_sp(SCREEN*);\fR
+\fBint def_shell_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint define_key_sp(SCREEN* \fP\fIsp\fP\fB, const char * \fP\fIdefinition\fP\fB, int \fP\fIkeycode\fP\fB);\fR
 .br
-\fBchar erasechar_sp(SCREEN*);\fR
+\fBint delay_output_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIms\fP\fB);\fR
 .br
-\fBint extended_color_content_sp(SCREEN *, int, int *, int *, int *);\fR
+\fBint doupdate_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint extended_pair_content_sp(SCREEN*, int, int *, int *);\fR
+\fBint echo_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint extended_slk_color_sp(SCREEN*, int);\fR
+\fBint endwin_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBvoid filter_sp(SCREEN*);\fR
+\fBchar erasechar_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint find_pair_sp(SCREEN*, int, int);\fR
+\fBint extended_color_content_sp(SCREEN * \fP\fIsp\fP\fB, int \fP\fIcolor\fP\fB, int * \fP\fIr\fP\fB, int * \fP\fIg\fP\fB, int * \fP\fIb\fP\fB);\fR
 .br
-\fBint flash_sp(SCREEN*);\fR
+\fBint extended_pair_content_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB, int * \fP\fIfg\fP\fB, int * \fP\fIbg\fP\fB);\fR
 .br
-\fBint flushinp_sp(SCREEN*);\fR
+\fBint extended_slk_color_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB);\fR
 .br
-\fBint free_pair_sp(SCREEN*, int);\fR
+\fBvoid filter_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint find_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
 .br
-\fBint get_escdelay_sp(SCREEN*);\fR
+\fBint flash_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint getmouse_sp(SCREEN*, MEVENT*);\fR
+\fBint flushinp_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBWINDOW* getwin_sp(SCREEN*, FILE*);\fR
+\fBint free_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB);\fR
 .br
-\fBint halfdelay_sp(SCREEN*, int);\fR
+\fBint get_escdelay_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBbool has_colors_sp(SCREEN*);\fR
+\fBint getmouse_sp(SCREEN* \fP\fIsp\fP\fB, MEVENT* \fP\fBevent\fP\fB);\fR
 .br
-\fBbool has_ic_sp(SCREEN*);\fR
+\fBWINDOW* getwin_sp(SCREEN* \fP\fIsp\fP\fB, FILE* \fP\fIfilep\fP\fB);\fR
 .br
-\fBbool has_il_sp(SCREEN*);\fR
+\fBint halfdelay_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fItenths\fP\fB);\fR
 .br
-\fBint has_key_sp(SCREEN*, int);\fR
+\fBbool has_colors_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBbool has_mouse_sp(SCREEN*);\fR
+\fBbool has_ic_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBbool has_il_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint init_color_sp(SCREEN*, short, short, short, short);\fR
+\fBint has_key_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIch\fP\fB);\fR
 .br
-\fBint init_extended_color_sp(SCREEN*, int, int, int, int);\fR
+\fBbool has_mouse_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint init_extended_pair_sp(SCREEN*, int, int, int);\fR
+\fBint init_color_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIcolor\fP\fB, short \fP\fIr\fP\fB, short \fP\fIg\fP\fB, short \fP\fIb\fP\fB);\fR
 .br
-\fBint init_pair_sp(SCREEN*, short, short, short);\fR
+\fBint init_extended_color_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIcolor\fP\fB, int \fP\fIr\fP\fB, int \fP\fIg\fP\fB, int \fP\fIb\fP\fB);\fR
 .br
-\fBint intrflush_sp(SCREEN*, WINDOW*, bool);\fR
+\fBint init_extended_pair_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIpair\fP\fB, int \fP\fIfg\fP\fB, int \fP\fIbg\fP\fB);\fR
 .br
-\fBbool is_term_resized_sp(SCREEN*, int, int);\fR
+\fBint init_pair_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIpair\fP\fB, short \fP\fIfg\fP\fB, short \fP\fIbg\fP\fB);\fR
 .br
-\fBbool isendwin_sp(SCREEN*);\fR
+\fBint intrflush_sp(SCREEN* \fP\fIsp\fP\fB, WINDOW* \fP\fIwin\fP\fB, bool \fP\fIbf\fP\fB);\fR
 .br
-\fBint key_defined_sp(SCREEN*, const char *);\fR
+\fBbool is_term_resized_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
 .br
-\fBchar* keybound_sp(SCREEN*, int, int);\fR
+\fBbool isendwin_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint key_defined_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIdefinition\fP\fB);\fR
 .br
-\fBNCURSES_CONST char * keyname_sp(SCREEN*, int);\fR
+\fBchar* keybound_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIkeycode\fP\fB, int \fP\fIcount\fP\fB);\fR
 .br
-\fBint keyok_sp(SCREEN*, int, bool);\fR
+\fBNCURSES_CONST char * keyname_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIc\fP\fB);\fR
 .br
-\fBchar killchar_sp(SCREEN*);\fR
+\fBint keyok_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIkeycode\fP\fB, bool \fP\fIenable\fP\fB);\fR
 .br
-\fBchar* longname_sp(SCREEN*);\fR
+\fBchar killchar_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint mcprint_sp(SCREEN*, char *, int);\fR
+\fBchar* longname_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint mouseinterval_sp(SCREEN*, int);\fR
+\fBint mcprint_sp(SCREEN* \fP\fIsp\fP\fB, char *\fP\fIdata\fP\fB, int \fP\fIlen\fP\fB);\fR
 .br
-\fBmmask_t mousemask_sp(SCREEN*, mmask_t, mmask_t *);\fR
+\fBint mouseinterval_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIerval\fP\fB);\fR
 .br
-\fBint mvcur_sp(SCREEN*, int, int, int, int);\fR
+\fBmmask_t mousemask_sp(SCREEN* \fP\fIsp\fP\fB, mmask_t \fP\fInewmask\fP\fB, mmask_t *\fP\fIoldmask\fP\fB);\fR
 .br
-\fBint napms_sp(SCREEN*, int);\fR
+\fBint mvcur_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIoldrow\fP\fB, int \fP\fIoldcol\fP\fB, int \fP\fInewrow\fP\fB, int \fP\fInewcol\fP\fB);\fR
+.sp
+\fBint napms_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIms\fP\fB);\fR
 .br
-\fBWINDOW* newpad_sp(SCREEN*, int, int);\fR
+\fBWINDOW* newpad_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fInrows\fP\fB, int \fP\fIncols\fP\fB);\fR
 .br
 \fBSCREEN* new_prescr(void);\fR
 .br
-\fBSCREEN* newterm_sp(SCREEN*, const char *, FILE *, FILE *);\fR
-.br
-\fBWINDOW* newwin_sp(SCREEN*, int, int, int, int);\fR
+\fBSCREEN* newterm_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fItype\fP\fB, FILE *\fP\fIoutfd\fP\fB, FILE *\fP\fIinfd\fP\fB);\fR
 .br
-\fBint nl_sp(SCREEN*);\fR
+\fBWINDOW* newwin_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fInlines\fP\fB, int \fP\fIncols\fP\fB, int \fP\fIbegin_y\fP\fB, int \fP\fIbegin_x\fP\fB);\fR
 .br
-\fBint nocbreak_sp(SCREEN*);\fR
+\fBint nl_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint noecho_sp(SCREEN*);\fR
+\fBint nocbreak_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBvoid nofilter_sp(SCREEN*);\fR
+\fBint noecho_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint nonl_sp(SCREEN*);\fR
+\fBvoid nofilter_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBvoid noqiflush_sp(SCREEN*);\fR
-.br
-\fBint noraw_sp(SCREEN*);\fR
-.br
-\fBint pair_content_sp(SCREEN*, short, short*, short*);\fR
-.br
-\fBvoid qiflush_sp(SCREEN*);\fR
-.br
-\fBint raw_sp(SCREEN*);\fR
+\fBint nonl_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBvoid noqiflush_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint reset_prog_mode_sp(SCREEN*);\fR
+\fBint noraw_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBvoid reset_color_pairs_sp(SCREEN*);\fR
+\fBint pair_content_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIpair\fP\fB, short* \fP\fIfg\fP\fB, short* \fP\fIbg\fP\fB);\fR
 .br
-\fBint reset_shell_mode_sp(SCREEN*);\fR
+\fBvoid qiflush_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint resetty_sp(SCREEN*);\fR
+\fBint raw_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint resize_term_sp(SCREEN*, int, int);\fR
+\fBint reset_prog_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint resizeterm_sp(SCREEN*, int, int);\fR
+\fBvoid reset_color_pairs_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint ripoffline_sp(SCREEN*, int, int (*)(WINDOW*, int));\fR
+\fBint reset_shell_mode_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint savetty_sp(SCREEN*);\fR
+\fBint resetty_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint scr_init_sp(SCREEN*, const char *);\fR
+\fBint resize_term_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
+.sp
+\fBint resizeterm_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlines\fP\fB, int \fP\fIcolumns\fP\fB);\fR
 .br
-\fBint scr_restore_sp(SCREEN*, const char *);\fR
+\fBint ripoffline_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIline\fP\fB, int (*\fP\fIinit\fP\fB)(WINDOW* \fP\fIwin\fP\fB, int \fP\fIfmt\fP\fB));\fR
 .br
-\fBint scr_set_sp(SCREEN*, const char *);\fR
+\fBint savetty_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint set_escdelay_sp(SCREEN*, int);\fR
+\fBint scr_init_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIfilename\fP\fB);\fR
 .br
-\fBint set_tabsize_sp(SCREEN*, int);\fR
+\fBint scr_restore_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIfilename\fP\fB);\fR
 .br
-\fBint slk_attr_set_sp(SCREEN*, const attr_t, short, void*);\fR
+\fBint scr_set_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIfilename\fP\fB);\fR
 .br
-\fBint slk_attrset_sp(SCREEN*, const chtype);\fR
+\fBint set_escdelay_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIms\fP\fB);\fR
 .br
-\fBint slk_attroff_sp(SCREEN*, const chtype);\fR
+\fBint set_tabsize_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIcols\fP\fB);\fR
 .br
-\fBint slk_attron_sp(SCREEN*, const chtype);\fR
+\fBint slk_attr_set_sp(SCREEN* \fP\fIsp\fP\fB, const attr_t \fP\fIattrs\fP\fB, short \fP\fIpair\fP\fB, void*\fP\fIopts\fP\fB);\fR
+.sp
+\fBint slk_attrset_sp(SCREEN* \fP\fIsp\fP\fB, const chtype \fP\fIa\fP\fB);\fR
 .br
-\fBattr_t slk_attr_sp(SCREEN*);\fR
+\fBint slk_attroff_sp(SCREEN* \fP\fIsp\fP\fB, const chtype \fP\fIa\fP\fB);\fR
 .br
-\fBint slk_clear_sp(SCREEN*);\fR
+\fBint slk_attron_sp(SCREEN* \fP\fIsp\fP\fB, const chtype \fP\fIa\fP\fB);\fR
 .br
-\fBint slk_color_sp(SCREEN*, short);\fR
+\fBattr_t slk_attr_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint slk_init_sp(SCREEN*, int);\fR
+\fBint slk_clear_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBchar* slk_label_sp(SCREEN*, int);\fR
+\fBint slk_color_sp(SCREEN* \fP\fIsp\fP\fB, short \fP\fIpair\fP\fB);\fR
 .br
-\fBint slk_noutrefresh_sp(SCREEN*);\fR
+\fBint slk_init_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfmt\fP\fB);\fR
 .br
-\fBint slk_refresh_sp(SCREEN*);\fR
+\fBchar* slk_label_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlabnum\fP\fB);\fR
 .br
-\fBint slk_restore_sp(SCREEN*);\fR
+\fBint slk_noutrefresh_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint slk_set_sp(SCREEN*, int, const char *, int);\fR
+\fBint slk_refresh_sp(SCREEN* \fP\fIsp\fP\fB);\fR
+.sp
+\fBint slk_restore_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint slk_touch_sp(SCREEN*);\fR
+\fBint slk_set_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlabnum\fP\fB, const char * \fP\fIlabel\fP\fB, int \fP\fIfmt\fP\fB);\fR
 .br
-\fBint start_color_sp(SCREEN*);\fR
+\fBint slk_touch_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBattr_t term_attrs_sp(SCREEN*);\fR
+\fBint start_color_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBchtype termattrs_sp(SCREEN*);\fR
+\fBattr_t term_attrs_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBchar* termname_sp(SCREEN*);\fR
+\fBchtype termattrs_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint typeahead_sp(SCREEN*, int);\fR
+\fBchar* termname_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBint unget_wch_sp(SCREEN*, const wchar_t);\fR
+\fBint typeahead_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIfd\fP\fB);\fR
 .br
-\fBint ungetch_sp(SCREEN*, int);\fR
+\fBint unget_wch_sp(SCREEN* \fP\fIsp\fP\fB, const wchar_t \fP\fIwch\fP\fB);\fR
 .br
-\fBint ungetmouse_sp(SCREEN*,MEVENT *);\fR
+\fBint ungetch_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIch\fP\fB);\fR
+.sp
+\fBint ungetmouse_sp(SCREEN* \fP\fIsp\fP\fB,MEVENT * \fP\fBevent\fP\fB);\fR
 .br
-\fBint use_default_colors_sp(SCREEN*);\fR
+\fBint use_default_colors_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBvoid use_env_sp(SCREEN*, bool);\fR
+\fBvoid use_env_sp(SCREEN* \fP\fIsp\fP\fB, bool \fP\fIbf\fP\fB);\fR
 .br
-\fBint use_legacy_coding_sp(SCREEN*, int);\fR
+\fBint use_legacy_coding_sp(SCREEN* \fP\fIsp\fP\fB, int \fP\fIlevel\fP\fB);\fR
 .br
-\fBvoid use_tioctl_sp(SCREEN *, bool);\fR
+\fBvoid use_tioctl_sp(SCREEN *\fP\fIsp\fP\fB, bool \fP\fIbf\fP\fB);\fR
 .br
-\fBint vid_attr_sp(SCREEN*, attr_t, short, void *);\fR
+\fBint vid_attr_sp(SCREEN* \fP\fIsp\fP\fB, attr_t \fP\fIattrs\fP\fB, short \fP\fIpair\fP\fB, void * \fP\fIopts\fP\fB);\fR
 .br
-\fBint vid_puts_sp(SCREEN*, attr_t, short, void *, NCURSES_SP_OUTC);\fR
+\fBint vid_puts_sp(SCREEN* \fP\fIsp\fP\fB, attr_t \fP\fIattrs\fP\fB, short \fP\fIpair\fP\fB, void * \fP\fIopts\fP\fB, NCURSES_SP_OUTC \fP\fIputc\fP\fB);\fR
 .br
-\fBint vidattr_sp(SCREEN*, chtype);\fR
+\fBint vidattr_sp(SCREEN* \fP\fIsp\fP\fB, chtype \fP\fIattrs\fP\fB);\fR
 .br
-\fBint vidputs_sp(SCREEN*, chtype, NCURSES_SP_OUTC);\fR
+\fBint vidputs_sp(SCREEN* \fP\fIsp\fP\fB, chtype \fP\fIattrs\fP\fB, NCURSES_SP_OUTC \fP\fIputc\fP\fB);\fR
 .br
-\fBwchar_t* wunctrl_sp(SCREEN*, cchar_t *);\fR
+\fBwchar_t* wunctrl_sp(SCREEN* \fP\fIsp\fP\fB, cchar_t *\fP\fIch\fP\fB);\fR
 .sp
 \fB#include \fR
 .sp
-\fBFORM* new_form_sp(SCREEN*, FIELD **);\fR
+\fBFORM* new_form_sp(SCREEN* \fP\fIsp\fP\fB, FIELD **\fP\fIfields\fP\fB);\fR
 .sp
 \fB#include \fR
 .sp
-\fBMENU* new_menu_sp(SCREEN*, ITEM **);\fR
+\fBMENU* new_menu_sp(SCREEN* \fP\fIsp\fP\fB, ITEM **\fP\fIitems\fP\fB);\fR
 .sp
 \fB#include \fR
 .sp
-\fBPANEL* ceiling_panel(SCREEN*);\fR
+\fBPANEL* ceiling_panel(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBPANEL* ground_panel(SCREEN*);\fR
+\fBPANEL* ground_panel(SCREEN* \fP\fIsp\fP\fB);\fR
 .br
-\fBvoid update_panels_sp(SCREEN*);\fR
+\fBvoid update_panels_sp(SCREEN* \fP\fIsp\fP\fB);\fR
 .sp
 \fB#include \fR
 .sp
-\fBint del_curterm_sp(SCREEN*, TERMINAL *);\fR
-.br
-\fBint putp_sp(SCREEN*, const char *);\fR
+\fBint del_curterm_sp(SCREEN* \fP\fIsp\fP\fB, TERMINAL *\fP\fIoterm\fP\fB);\fR
 .br
-\fBint restartterm_sp(SCREEN*, NCURSES_CONST char*, int, int *);\fR
+\fBint putp_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIstr\fP\fB);\fR
 .br
-\fBTERMINAL* set_curterm_sp(SCREEN*, TERMINAL*);\fR
+\fBint restartterm_sp(SCREEN* \fP\fIsp\fP\fB, NCURSES_CONST char*\fP\fIterm\fP\fB, int \fP\fIfiledes\fP\fB, int *\fP\fIerrret\fP\fB);\fR
 .br
-\fBint tgetent_sp(SCREEN*, char *, const char *);\fR
+\fBTERMINAL* set_curterm_sp(SCREEN* \fP\fIsp\fP\fB, TERMINAL*\fP\fInterm\fP\fB);\fR
 .br
-\fBint tgetflag_sp(SCREEN*, const char *);\fR
+\fBint tgetent_sp(SCREEN* \fP\fIsp\fP\fB, char *\fP\fIbp\fP\fB, const char *\fP\fIname\fP\fB);\fR
 .br
-\fBint tgetnum_sp(SCREEN*, const char *);\fR
+\fBint tgetflag_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
 .br
-\fBchar* tgetstr_sp(SCREEN*, const char *, char **);\fR
+\fBint tgetnum_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
 .br
-\fBchar* tgoto_sp(SCREEN*, const char *, int, int);\fR
+\fBchar* tgetstr_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB, char **\fP\fIarea\fP\fB);\fR
 .br
-\fBint tigetflag_sp(SCREEN*, const char *);\fR
+\fBchar* tgoto_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB, int \fP\fIcol\fP\fB, int \fP\fIrow\fP\fB);\fR
 .br
-\fBint tigetnum_sp(SCREEN*, const char *);\fR
+\fBint tigetflag_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
 .br
-\fBchar* tigetstr_sp(SCREEN*, const char *);\fR
+\fBint tigetnum_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
 .br
-\fBchar* tiparm_sp(SCREEN*, const char *, ...);\fR
+\fBchar* tigetstr_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIcapname\fP\fB);\fR
 .br
 /* may instead use 9 long parameters */
 .br
-\fBchar* tparm_sp(SCREEN*, const char *, ...);\fR
+\fBchar* tparm_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIstr\fP\fB, ...);\fR
 .br
-\fBint tputs_sp(SCREEN*, const char *, int, NCURSES_SP_OUTC);\fR
+\fBint tputs_sp(SCREEN* \fP\fIsp\fP\fB, const char *\fP\fIstr\fP\fB, int \fP\fIaffcnt\fP\fB, NCURSES_SP_OUTC \fP\fIputc\fP\fB);\fR
 .sp
 \fB#include \fR
 .sp
-\fBNCURSES_CONST char* unctrl_sp(SCREEN*, chtype);\fR
+\fBNCURSES_CONST char* unctrl_sp(SCREEN* \fP\fIsp\fP\fB, chtype \fP\fIc\fP\fB);\fR
 .ad
 .br
 .SH DESCRIPTION
diff --git a/man/curs_terminfo.3x b/man/curs_terminfo.3x
index 229da5d6..9120a04b 100644
--- a/man/curs_terminfo.3x
+++ b/man/curs_terminfo.3x
@@ -1,5 +1,5 @@
 .\"***************************************************************************
-.\" Copyright 2018,2020 Thomas E. Dickey                                     *
+.\" Copyright 2018-2020,2021 Thomas E. Dickey                                *
 .\" Copyright 1998-2016,2017 Free Software Foundation, Inc.                  *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_terminfo.3x,v 1.67 2020/11/07 23:49:07 tom Exp $
+.\" $Id: curs_terminfo.3x,v 1.72 2021/01/02 23:50:04 tom Exp $
 .TH curs_terminfo 3X ""
 .ie \n(.g .ds `` \(lq
 .el       .ds `` ``
@@ -46,7 +46,6 @@
 \fBputp\fR,
 \fBrestartterm\fR,
 \fBset_curterm\fR,
-\fBsetterm\fR,
 \fBsetupterm\fR,
 \fBtigetflag\fR,
 \fBtigetnum\fR,
@@ -62,6 +61,7 @@
 .hy
 .SH SYNOPSIS
 .nf
+\fB#include \fR
 \fB#include \fR
 .sp
 \fBTERMINAL *cur_term;\fR
@@ -78,8 +78,6 @@
 .sp
 \fBint setupterm(const char *\fR\fIterm\fR\fB, int \fR\fIfiledes\fR\fB, int *\fR\fIerrret\fR\fB);\fR
 .br
-\fBint setterm(const char *\fR\fIterm\fR\fB);\fR
-.br
 \fBTERMINAL *set_curterm(TERMINAL *\fR\fInterm\fR\fB);\fR
 .br
 \fBint del_curterm(TERMINAL *\fR\fIoterm\fR\fB);\fR
@@ -233,14 +231,6 @@ Thus, the simplest call is:
 .sp
 which uses all the defaults and sends the output to \fBstdout\fR.
 .RE
-.PP
-The \fBsetterm\fR routine was replaced by \fBsetupterm\fR.  The call:
-.sp
-      \fBsetupterm(\fR\fIterm\fR\fB, 1, (int *)0)\fR
-.sp
-provides the same functionality as \fBsetterm(\fR\fIterm\fR\fB)\fR.
-The \fBsetterm\fR routine is provided for BSD compatibility, and
-is not recommended for new programs.
 .\" ***************************************************************************
 .SS The Terminal State
 .PP
@@ -346,8 +336,12 @@ this implementation allows \fIopts\fP to be used as a pointer to \fBint\fP,
 which overrides the \fIpair\fP (\fBshort\fP) argument.
 .PP
 The \fBmvcur\fR routine provides low-level cursor motion.
-It takes
-effect immediately (rather than at the next refresh).
+It takes effect immediately (rather than at the next refresh).
+.PP
+While \fBputp\fR and \fBmvcur\fP are low-level functions which
+do not use the high-level curses state,
+they are declared in \fB\fP because SystemV did this
+(see \fBHISTORY\fP).
 .\" ***************************************************************************
 .SS Terminal Capability Functions
 .PP
@@ -439,6 +433,32 @@ It does not detect I/O errors:
 X/Open states that \fBtputs\fP ignores the return value
 of the output function \fIputc\fP.
 .RE
+.\" ***************************************************************************
+.SS Compatibility macros
+This implementation provides a few macros for compatibility with systems
+before SVr4 (see \fBHISTORY\fP).
+Those include
+\fBcrmode\fP,
+\fBfixterm\fP,
+\fBgettmode\fP,
+\fBnocrmode\fP,
+\fBresetterm\fP,
+\fBsaveterm\fP, and
+\fBsetterm\fP.
+.PP
+In SVr4, those are found in \fB\fP,
+but except for \fBsetterm\fR, are likewise macros.
+The one function, \fBsetterm\fR, is mentioned in the manual page.
+The manual page notes that the \fBsetterm\fR routine
+was replaced by \fBsetupterm\fR, stating that the call:
+.sp
+      \fBsetupterm(\fR\fIterm\fR\fB, 1, (int *)0)\fR
+.sp
+provides the same functionality as \fBsetterm(\fR\fIterm\fR\fB)\fR,
+and is not recommended for new programs.
+This implementation provides each of those symbols
+as macros for BSD compatibility,
+.\" ***************************************************************************
 .SH HISTORY
 .PP
 SVr2 introduced the terminfo feature.
diff --git a/man/curs_threads.3x b/man/curs_threads.3x
index 855dba83..cb2da61a 100644
--- a/man/curs_threads.3x
+++ b/man/curs_threads.3x
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_threads.3x,v 1.26 2020/10/24 09:47:37 tom Exp $
+.\" $Id: curs_threads.3x,v 1.27 2020/12/30 18:28:51 tom Exp $
 .TH curs_threads 3X ""
 .de bP
 .ie n  .IP \(bu 4
@@ -48,9 +48,9 @@
 .sp
 \fBint get_escdelay(void);\fR
 .br
-\fBint set_escdelay(int \fP\fIsize\fP\fB);\fR
+\fBint set_escdelay(int \fP\fIms\fP\fB);\fR
 .br
-\fBint set_tabsize(int \fP\fIsize\fP\fB);\fR
+\fBint set_tabsize(int \fP\fIcols\fP\fB);\fR
 .sp
 \fBint use_screen(SCREEN *\fP\fIscr\fP\fB, NCURSES_SCREEN_CB \fP\fIfunc\fP\fB, void *\fP\fIdata\fP\fB);\fR
 .br
diff --git a/package/debian-mingw/changelog b/package/debian-mingw/changelog
index ee47719d..c24882bc 100644
--- a/package/debian-mingw/changelog
+++ b/package/debian-mingw/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20201227) unstable; urgency=low
+ncurses6 (6.2+20210102) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey   Sun, 27 Dec 2020 18:48:19 -0500
+ -- Thomas E. Dickey   Wed, 30 Dec 2020 10:05:44 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
diff --git a/package/debian-mingw/copyright b/package/debian-mingw/copyright
index 5476d6dd..a01b3eec 100644
--- a/package/debian-mingw/copyright
+++ b/package/debian-mingw/copyright
@@ -5,12 +5,12 @@ Current ncurses maintainer: Thomas Dickey 
 
 -------------------------------------------------------------------------------
 Files: *
-Copyright: 2017-2019,2020 by Thomas E. Dickey
+Copyright: 2017-2020,2021 by Thomas E. Dickey
 Copyright: 1998-2016,2017 Free Software Foundation, Inc.
 Licence: X11
 
 Files: aclocal.m4 package
-Copyright: 1996-2019,2020 by Thomas E. Dickey
+Copyright: 1996-2020,2021 by Thomas E. Dickey
 Licence: X11
 
 Files: doc/html/NCURSES-Programming-HOWTO.html
diff --git a/package/debian-mingw64/changelog b/package/debian-mingw64/changelog
index ee47719d..c24882bc 100644
--- a/package/debian-mingw64/changelog
+++ b/package/debian-mingw64/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20201227) unstable; urgency=low
+ncurses6 (6.2+20210102) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey   Sun, 27 Dec 2020 18:48:19 -0500
+ -- Thomas E. Dickey   Wed, 30 Dec 2020 10:05:44 -0500
 
 ncurses6 (5.9-20131005) unstable; urgency=low
 
diff --git a/package/debian-mingw64/copyright b/package/debian-mingw64/copyright
index 5476d6dd..a01b3eec 100644
--- a/package/debian-mingw64/copyright
+++ b/package/debian-mingw64/copyright
@@ -5,12 +5,12 @@ Current ncurses maintainer: Thomas Dickey 
 
 -------------------------------------------------------------------------------
 Files: *
-Copyright: 2017-2019,2020 by Thomas E. Dickey
+Copyright: 2017-2020,2021 by Thomas E. Dickey
 Copyright: 1998-2016,2017 Free Software Foundation, Inc.
 Licence: X11
 
 Files: aclocal.m4 package
-Copyright: 1996-2019,2020 by Thomas E. Dickey
+Copyright: 1996-2020,2021 by Thomas E. Dickey
 Licence: X11
 
 Files: doc/html/NCURSES-Programming-HOWTO.html
diff --git a/package/debian/changelog b/package/debian/changelog
index 2e8cfdf9..6e7f1e47 100644
--- a/package/debian/changelog
+++ b/package/debian/changelog
@@ -1,8 +1,8 @@
-ncurses6 (6.2+20201227) unstable; urgency=low
+ncurses6 (6.2+20210102) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey   Sun, 27 Dec 2020 18:48:19 -0500
+ -- Thomas E. Dickey   Wed, 30 Dec 2020 10:05:44 -0500
 
 ncurses6 (5.9-20120608) unstable; urgency=low
 
diff --git a/package/debian/copyright b/package/debian/copyright
index 5476d6dd..a01b3eec 100644
--- a/package/debian/copyright
+++ b/package/debian/copyright
@@ -5,12 +5,12 @@ Current ncurses maintainer: Thomas Dickey 
 
 -------------------------------------------------------------------------------
 Files: *
-Copyright: 2017-2019,2020 by Thomas E. Dickey
+Copyright: 2017-2020,2021 by Thomas E. Dickey
 Copyright: 1998-2016,2017 Free Software Foundation, Inc.
 Licence: X11
 
 Files: aclocal.m4 package
-Copyright: 1996-2019,2020 by Thomas E. Dickey
+Copyright: 1996-2020,2021 by Thomas E. Dickey
 Licence: X11
 
 Files: doc/html/NCURSES-Programming-HOWTO.html
diff --git a/package/mingw-ncurses.nsi b/package/mingw-ncurses.nsi
index d8eb402d..3512b180 100644
--- a/package/mingw-ncurses.nsi
+++ b/package/mingw-ncurses.nsi
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.436 2020/12/27 23:48:19 tom Exp $
+; $Id: mingw-ncurses.nsi,v 1.437 2021/01/02 15:00:00 tom Exp $
 
 ; TODO add examples
 ; TODO bump ABI to 6
@@ -9,8 +9,8 @@
 
 !define VERSION_MAJOR "6"
 !define VERSION_MINOR "2"
-!define VERSION_YYYY  "2020"
-!define VERSION_MMDD  "1227"
+!define VERSION_YYYY  "2021"
+!define VERSION_MMDD  "0102"
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
 
 !define MY_ABI   "5"
diff --git a/package/mingw-ncurses.spec b/package/mingw-ncurses.spec
index 36cc6df4..aa59d5ff 100644
--- a/package/mingw-ncurses.spec
+++ b/package/mingw-ncurses.spec
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.2
-Release: 20201227
+Release: 20210102
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
diff --git a/package/ncurses.spec b/package/ncurses.spec
index c0e1642c..f1b3fe48 100644
--- a/package/ncurses.spec
+++ b/package/ncurses.spec
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.2
-Release: 20201227
+Release: 20210102
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
diff --git a/package/ncursest.spec b/package/ncursest.spec
index f3d7d66c..923c33c3 100644
--- a/package/ncursest.spec
+++ b/package/ncursest.spec
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.2
-Release: 20201227
+Release: 20210102
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
diff --git a/test/package/debian-mingw/copyright b/test/package/debian-mingw/copyright
index f1e36051..a805a1f6 100644
--- a/test/package/debian-mingw/copyright
+++ b/test/package/debian-mingw/copyright
@@ -4,12 +4,12 @@ Current ncurses maintainer: Thomas Dickey 
 
 -------------------------------------------------------------------------------
 Files: *
-Copyright: 2017-2019,2020 Thomas E. Dickey
+Copyright: 2017-2020,2021 Thomas E. Dickey
 Copyright: 1998-2016,2017 Free Software Foundation, Inc.
 Licence: X11
 
 Files: aclocal.m4 package
-Copyright: 2003-2019,2020 by Thomas E. Dickey
+Copyright: 2003-2020,2021 by Thomas E. Dickey
 Licence: X11
 
     Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/test/package/debian-mingw64/copyright b/test/package/debian-mingw64/copyright
index f1e36051..a805a1f6 100644
--- a/test/package/debian-mingw64/copyright
+++ b/test/package/debian-mingw64/copyright
@@ -4,12 +4,12 @@ Current ncurses maintainer: Thomas Dickey 
 
 -------------------------------------------------------------------------------
 Files: *
-Copyright: 2017-2019,2020 Thomas E. Dickey
+Copyright: 2017-2020,2021 Thomas E. Dickey
 Copyright: 1998-2016,2017 Free Software Foundation, Inc.
 Licence: X11
 
 Files: aclocal.m4 package
-Copyright: 2003-2019,2020 by Thomas E. Dickey
+Copyright: 2003-2020,2021 by Thomas E. Dickey
 Licence: X11
 
     Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/test/package/debian/copyright b/test/package/debian/copyright
index f1e36051..c6873e2c 100644
--- a/test/package/debian/copyright
+++ b/test/package/debian/copyright
@@ -4,7 +4,7 @@ Current ncurses maintainer: Thomas Dickey 
 
 -------------------------------------------------------------------------------
 Files: *
-Copyright: 2017-2019,2020 Thomas E. Dickey
+Copyright: 2017-2020,2021 Thomas E. Dickey
 Copyright: 1998-2016,2017 Free Software Foundation, Inc.
 Licence: X11
 
-- 
2.44.0