XFree86 3.9Ad, 3.3.1d - xterm patch #66 - 1998/2/16 - T.Dickey <dickey@clark.net>
 
This fixes the problem reported with failure to build the resize program (BSDI,
OSF/1) due to not having <termcap.h>, by changing the ifdef to one that would
be set only if the file exists (not currently specified, except by the
standalone configure script).  We do not really need to include <termcap.h> to
build, but only for a clean compile, since it may declare the tgetent()
prototype.
 
I also updated the man-page for resize, since I had recently noticed that
it can be used to resize xterm using the "Sun" control sequences option.
 
--------------------------------------------------------------------------------
  Imakefile               |    4 
 resize.c                |    8 
 resize.man              |   18 
 version.h               |    2 
 xterm-66/xterm.log.html | 1558 ++++++++++++++++++++++++++++++++++++++++++++++
 xtermcfg.hin            |    4 
 6 files changed, 1577 insertions, 17 deletions
--------------------------------------------------------------------------------
 Index: Imakefile
--- xterm-65+/Imakefile Sun Oct 26 16:05:57 1997
 +++ xterm-66/Imakefile  Mon Feb 16 17:06:38 1998
 @@ -57,10 +57,6 @@
        FEATURE_DEFINES = -DDEBUG -DALLOWLOGGING
 #endif
 
-#if defined(NetBSDArchitecture) || defined(OpenBSDArchitecture) || (defined(FreeBSDArchitecture) && (OSMajorVersion < 2)) || (defined(SunArchitecture) && !defined(SVR4Architecture)) || defined(i386Sco325Architecture)
 - TERMCAPDEFINES = -DNO_TERMCAP_H
-#endif
 -
  OSMAJORVERSION = OSMajorVersion
  OSMINORVERSION = OSMinorVersion
 
Index: resize.c
--- xterm-65+/resize.c  Mon Dec 29 12:22:34 1997
 +++ xterm-66/resize.c   Mon Feb 16 17:31:40 1998
 @@ -87,7 +87,6 @@
  #define USE_SYSV_UTMP
 #else
 #define USE_TERMCAP
-#define NO_TERMCAP_H
 #endif
 #else /* else not SYSV */
 #define USE_TERMCAP
@@ -166,9 +165,10 @@
 
 #define        EMULATIONS      2
 #define        SUN             1
-#define        TIMEOUT         10
  #define        VT100           0
 
+#define        TIMEOUT         10
 +
 #define        SHELL_UNKNOWN   0
 #define        SHELL_C         1
 #define        SHELL_BOURNE    2
@@ -251,7 +251,7 @@
 
 #ifdef USE_TERMCAP
 static char *strindex PROTO((char *s1, char *s2));
-#if !defined(NO_TERMCAP_H)
+#if HAVE_TERMCAP_H
 #include <termcap.h>
 #if defined(NCURSES_VERSION)
        /* The tgetent emulation function in SVr4-style curses implementations
@@ -263,7 +263,7 @@
 #endif
 #else
 #include <curses.h>
-#endif /* ! NO_TERMCAP_H  */
 +#endif /* HAVE_TERMCAP_H  */
 #endif
 
 /*
Index: resize.man
--- xterm-65+/resize.man        Sun Nov 16 13:09:00 1997
 +++ xterm-66/resize.man Mon Feb 16 18:06:50 1998
 @@ -1,4 +1,6 @@
  .\" $TOG: resize.man /main/13 1997/11/04 20:58:24 kaleb $
+.\" $XFree86$
+.\" updated by Thomas Dickey <dickey@clark.net> for XFree86, Februrary 1998.
  .TH RESIZE 1 "Release 6.4" "X Version 11"
 .SH NAME
 resize \- set TERMCAP and terminal settings to current xterm window size
@@ -47,9 +49,20 @@
 .TP 8
 .B \-s \fR[\fIrows columns\fP]
 This option indicates that Sun console escape sequences will be used 
-instead of the special \fIxterm\fP escape code.  If \fIrows\fP and
 +instead of the VT100-style \fIxterm\fP escape codes.
 +If \fIrows\fP and
 \fIcolumns\fP are given, \fIresize\fP will ask the \fIxterm\fP to resize
 itself.  However, the window manager may choose to disallow the change.
+.sp
+Note that the Sun console escape sequences are recognized
 +by XFree86 \fIxterm\fP and
+by \fIdtterm\fP.
 +The \fIresize\fP program may be installed as \fIsunsize\fP,
 +which causes makes it assume the \fB\-s\fP option.
 +.sp
+The \fIrows\fP and
+\fIcolumns\fP arguments must appear last; though they are normally
 +associated with the \fB\-s\fP option, they are parsed separately.
  .SH FILES
 .TP 15
 /etc/termcap
@@ -67,6 +80,3 @@
 See
 .IR X (1)
 for a complete copyright notice.
-.SH BUGS
-The \fB\-u\fP or \fB\-c\fP must appear to the left of \fB\-s\fP if both are 
 -specified.
Index: version.h
--- xterm-65+/version.h Sat Feb  7 08:42:36 1998
 +++ xterm-66/version.h  Mon Feb 16 17:12:28 1998
 @@ -6,4 +6,4 @@
   * version of xterm has been built.  The number in parentheses is my patch
  * number (T.Dickey).
  */
-#define XTERM_VERSION "XFree86 3.9Ad(64)"
 +#define XTERM_VERSION "XFree86 3.9Ad(66)"
 Index: xterm.log.html
--- /dev/null   Sun Jul 17 19:46:18 1994
 +++ xterm-66/xterm.log.html     Mon Feb 16 18:53:41 1998
 @@ -0,0 +1,1558 @@
 +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 +<!--
+ *****************************************************************************
 + * Copyright 1997,1998 by Thomas E. Dickey (dickey@clark.net)                *
 + * All Rights Reserved.                                                      *
 + *                                                                           *
 + * Permission to use, copy, modify, and distribute this software and its     *
 + * documentation for any purpose and without fee is hereby granted, provided *
 + * that the above copyright notice appear in all copies and that both that   *
 + * copyright notice and this permission notice appear in supporting          *
 + * documentation, and that the name of the above listed copyright holder(s)  *
 + * not be used in advertising or publicity pertaining to distribution of the *
 + * software without specific, written prior permission.                      *
 + *                                                                           *
 + * THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD  *
 + * TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND *
 + * FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE *
 + * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES         *
 + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN     *
 + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF   *
 + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.            *
 + *****************************************************************************
 +  $XFree86$
+  -->
+<HTML>
+<HEAD>
+<TITLE>XTERM - Change Log</TITLE>
 +<LINK REV=MADE HREF="mailto:dickey@clark.net">
 +</HEAD>
+<BODY>
+<HR>
+Copyright 1997,1998 by Thomas E. Dickey
 +<HR>
+<H1>Contents</H1>
+This file contains a list of the changes that I have made for XFree86 xterm,
 +from the notes that I add when submitting a patch.
 +<P>
+You should note that other changes have been made as well, by other people,
 +to fix bugs and correct ifdef's for portability.  All of these are summarized
 +in the XFree86 CHANGELOG (found in the unbundled tree,
 +xc/programs/Xserver/hw/xfree86).
+
 +<UL>
+<LI><A HREF="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad and 3.3.1d</A>
 +<LI><A HREF="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad and 3.3.1c</A>
 +<LI><A HREF="#xterm_64">Patch #64 - 1998/2/8 - XFree86 3.9Ad</A>
 +<LI><A HREF="#xterm_63">Patch #63 - 1998/2/5 - XFree86 3.9Ad</A>
 +<LI><A HREF="#xterm_62">Patch #62 - 1998/1/23 - XFree86 3.9Ac</A>
 +<LI><A HREF="#xterm_61">Patch #61 - 1998/1/17 - XFree86 3.9Ac</A>
 +<LI><A HREF="#xterm_60">Patch #60 - 1998/1/10 - XFree86 3.9Ab</A>
 +<LI><A HREF="#xterm_59">Patch #59 - 1998/1/5 - XFree86 3.9Ab</A>
 +<LI><A HREF="#xterm_58">Patch #58 - 1998/1/3 - XFree86 3.9Ab</A>
 +<LI><A HREF="#xterm_57">Patch #57 - 1997/12/26 - XFree86 3.9Aa</A>
 +<LI><A HREF="#xterm_56">Patch #56 - 1997/11/28 - XFree86 3.9x</A>
 +<LI><A HREF="#xterm_55">Patch #55 - 1997/11/25 - XFree86 3.9x</A>
 +<LI><A HREF="#xterm_54">Patch #54 - 1997/10/17 - XFree86 3.9s</A>
 +<LI><A HREF="#xterm_53">Patch #53 - 1997/10/12 - XFree86 3.9r</A>
 +<LI><A HREF="#xterm_52">Patch #52 - 1997/9/29 - XFree86 3.9q</A>
 +<LI><A HREF="#xterm_51">Patch #51 - 1997/9/15 - XFree86 3.9p</A>
 +<LI><A HREF="#xterm_50">Patch #50 - 1997/8/22 - XFree86 3.9m</A>
 +<LI><A HREF="#xterm_49">Patch #49 - 1997/8/10 - XFree86 3.9k</A>
 +<LI><A HREF="#xterm_48">Patch #48 - 1997/7/26 - XFree86 3.9j</A>
 +<LI><A HREF="#xterm_47">Patch #47 - 1997/7/13 - XFree86 3.9i</A>
 +<LI><A HREF="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</A>
 +<LI><A HREF="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</A>
 +<LI><A HREF="#xterm_44">Patch #44 - 1997/6/22 - XFree86 3.9g</A>
 +<LI><A HREF="#xterm_43">Patch #43 - 1997/6/10 - XFree86 3.9d</A>
 +<LI><A HREF="#xterm_42">Patch #42 - 1997/6/8 - XFree86 3.2Xl</A>
 +<LI><A HREF="#xterm_41">Patch #41 - 1997/5/28 - XFree86 3.2Xl</A>
 +<LI><A HREF="#xterm_40">Patch #40 - 1997/5/26 - XFree86 3.2Xl</A>
 +<LI><A HREF="#xterm_39">Patch #39 - 1997/5/24 - XFree86 3.2Xl</A>
 +<LI><A HREF="#xterm_38">Patch #38 - 1997/5/22 - XFree86 3.2Xh</A>
 +<LI><A HREF="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</A>
 +<LI><A HREF="#xterm_36">Patch #36 - 1997/1/16 - XFree86 3.2r</A>
 +<LI><A HREF="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</A>
 +<LI><A HREF="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</A>
 +<LI><A HREF="#xterm_33">Patch #33 - 1996/11/24 - XFree86 3.2</A>
 +<LI><A HREF="#xterm_32">Patch #32 - 1996/11/21 - XFree86 3.2</A>
 +<LI><A HREF="#xterm_31">Patch #31 - 1996/11/16 - XFree86 3.2</A>
 +<LI><A HREF="#xterm_30">Patch #30 - 1996/11/16 - XFree86 3.2</A>
 +<LI><A HREF="#xterm_29">Patch #29 - 1996/9/15 - XFree86 3.1.2Gb</A>
 +<LI><A HREF="#xterm_28">Patch #28 - 1996/8/31 - XFree86 3.1.2F</A>
 +<LI><A HREF="#xterm_27">Patch #27 - 1996/8/21 - XFree86 3.1.2Ek</A>
 +<LI><A HREF="#xterm_26">Patch #26 - 1996/8/20 - XFree86 3.1.2Ei</A>
 +<LI><A HREF="#xterm_25">Patch #25 - 1996/8/18 - XFree86 3.1.2Ei</A>
 +<LI><A HREF="#xterm_24">Patch #24 - 1996/8/11 - XFree86 3.1.2Ee</A>
 +<LI><A HREF="#xterm_23">Patch #23 - 1996/7/31 - XFree86 3.1.2Ec</A>
 +<LI><A HREF="#xterm_22">Patch #22 - 1996/7/26 - XFree86 3.1.2Ec</A>
 +<LI><A HREF="#xterm_21">Patch #21 - 1996/7/24 - XFree86 3.1.2Ec</A>
 +<LI><A HREF="#xterm_20">Patch #20 - 1996/7/24 - XFree86 3.1.2Ec</A>
 +<LI><A HREF="#xterm_19">Patch #19 - 1996/7/21 - XFree86 3.1.2Ec</A>
 +<LI><A HREF="#xterm_18">Patch #18 - 1996/7/18 - XFree86 3.1.2Ec</A>
 +<LI><A HREF="#xterm_17">Patch #17 - 1996/7/2 - XFree86 3.1.2Eb</A>
 +<LI><A HREF="#xterm_16">Patch #16 - 1996/6/25 - XFree86 3.1.2Ea</A>
 +<LI><A HREF="#xterm_15">Patch #15 - 1996/5/29 - XFree86 3.1.2E</A>
 +<LI><A HREF="#xterm_14">Patch #14 - 1996/5/12 - XFree86 3.1.2Dj</A>
 +<LI><A HREF="#xterm_13">Patch #13 - 1996/4/23 - XFree86 3.1.2Df</A>
 +<LI><A HREF="#xterm_12">Patch #12 - 1996/3/16 - XFree86 3.1.2Dc</A>
 +<LI><A HREF="#xterm_11">Patch #11 - 1996/3/5 - XFree86 3.1.2Db</A>
 +<LI><A HREF="#xterm_10">Patch #10 - 1996/2/14 - XFree86 3.1.2Cd</A>
 +<LI><A HREF="#xterm_09">Patch #9 - 1996/2/10 - XFree86 3.1.2Cb</A>
 +<LI><A HREF="#xterm_08">Patch #8 - 1996/2/9 - XFree86 3.1.2Cb</A>
 +<LI><A HREF="#xterm_07">Patch #7 - 1996/1/28 - XFree86 3.1.2n</A>
 +<LI><A HREF="#xterm_06">Patch #6 - 1996/1/8</A>
 +<LI><A HREF="#xterm_05">Patch #5 - 1996/1/7</A>
 +<LI><A HREF="#xterm_04">Patch #4 - 1996/1/7</A>
 +<LI><A HREF="#xterm_03">Patch #3 - 1996/1/7</A>
 +<LI><A HREF="#xterm_02">Patch #2 - 1996/1/7</A>
 +<LI><A HREF="#xterm_01">Patch #1 - 1996/1/6</A>
 +</UL>
+
+<H1><A NAME="xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad and 3.3.1d</A></H1>
 +
+This fixes the problem reported with failure to build the <EM>resize</EM>
 +program (BSDI, OSF/1) due to not having <termcap.h>, by changing the
 +ifdef to one that would be set only if the file exists (not currently
 +specified, except by the standalone configure script).  We do not really need
 +to include <termcap.h> to build, but only for a clean compile, since it
 +may declare the tgetent() prototype.
 +
+I also updated the man-page for <EM>resize</EM>, since I had recently noticed
 +that it can be used to resize <EM>xterm</EM> using the "Sun" control sequences
 +option.
+
+<H1><A NAME="xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad and 3.3.1c</A></H1>
 +
+This is a small patch to xterm's 8-bit terminal description.  I noticed
 +while testing ncurses that I had specified the wrong (VT100-style) codes
 +for the F1-F4.  Xterm only uses VT220-style function keys in 8-bit mode.
 +
+<H1><A NAME="xterm_64">Patch #64 - 1998/2/8 - XFree86 3.9Ad</A></H1>
 +
+This fixes the following problems with xterm:
 +<UL>
+       <LI>save/restore the ANSI foreground and background colors with the other
 +         visible attributes in the save-cursor and restore-cursor operations. 
 +         This works around a problem with vim, which apparently assumed that
 +         switching between the normal and alternate screens resets the colors
 +         (reported by Jim Battle <jb@chromatic.com>).
 +<P>
+         It would be nice to implement save/restore cursor as a stack (and
 +         solve this type of problem completely), but that would lead to
 +         incompatibility with applications which assume they are running with a
 +         VT100 or VT220.
 +
+       <LI>corrects behavior of a restore-cursor operation which does not
 +         follow a save-cursor (it is supposed to set the character sets
 +         to a known initial state).
 +
+       <LI>extends the sunKeyboard resource (and menu toggle) to modify the
 +         home, end and delete keys on a Sun or PC editing keypad, making them
 +         generate codes compatible with DEC VT220's Find, Select and Remove
 +         keys.
 +
+       <LI>corrects a length in checking command-line options, which caused the
 +         "-help" message to not work when X was not running.
 +
+       <LI>adds some detail to the man-page (requested by Jason Bacon
 +         <acadix@execpc.com>)
 +         
 +       <LI>modify the standalone configure script to ignore the broken nsl and
+         socket libraries on IRIX 6.2 (the ones on 5.2 also are broken, so
 +         this change just widens the check for the system version number).
 +</UL>
+
+<H1><A NAME="xterm_63">Patch #63 - 1998/2/5 - XFree86 3.9Ad</A></H1>
 +
+This is another patch from Bjorn Helgaas <helgaas@rsn.hp.com>, which I've
 +reviewed (and learned some).  Following are his notes:
 +<P>
+I poked around some more and finally got xterm-62 to build and run
 +cleanly on HP-UX 10.20.  Here are the patches.  They look sort of
 +ugly, so here's a little explanation:
 +<UL>
+        <LI>aclocal.m4: Removed side effects from the AC_CACHE_VAL
 +        commands in CF_FUNC_TGETENT.  Previously, LIBS was set inside
 +        AC_CACHE_VAL, which worked fine the first time configure was
 +        run, but failed if there were cached values.
 +
+        <LI>aclocal.m4: Added temporary setting of LIBS before
 +        AC_TRY_LINK in CF_FUNC_TGETENT.  Previously, the last value set
 +        by the AC_TRY_RUN loop was used, so only -lcurses was checked.
 +
+        <LI>configure.in: Added temporary setting of CPPFLAGS before
 +        AC_CHECK_HEADERS for X11 files.  Previously <X11/DECkeysym.h>
 +        and <X11/Xpoll.h> were found only if they were in the compiler's
 +        default include directories, even if `--x-includes=DIR' had been
 +        used or AC_PATH_XTRA had found them elsewhere.
 +</UL>
+The problem on HP-UX was that we were linking with -lcurses rather than
 +-ltermcap due to the second bullet above, and apparently something in
 +HP-UX curses is broken.  This seems very strange, because the only thing
 +used is tgetent, which should affect any tty/pty configuration, but I
 +lost interest in tracking down the exact problem.
 +
+<H1><A NAME="xterm_62">Patch #62 - 1998/1/23 - XFree86 3.9Ac</A></H1>
 +
+This is a patch mostly by Bjorn Helgaas <helgaas@dhc.net> (I added the
 +os2main.c change, and a little of the documentation).  From Bjorn's
 +description:
+<UL>
 +       <LI>If you use the "-hc <color>" option or set the "highlightColor"
 +         resource, text is highlighted by changing only the background color,
 +         rather than using reverse video.  I find this easier to read,
 +         especially when selecting multi-colored text, and it is similar to
 +         the way netscape shows selections.
 +
+       <LI>Most of the code changes are under "#if OPT_HIGHLIGHT_COLOR".  The
 +         principal exception is in screen.c, where I added a couple calls to
 +         resetXtermGC().  This seems like it could be a bug even without
 +         the color highlighting changes (though I don't pretend to understand
 +         all the logic).
 +</UL>
+
+<H1><A NAME="xterm_61">Patch #61 - 1998/1/17 - XFree86 3.9Ac</A></H1>
 +
+This patch modifies the reset behavior of xterm slightly:
 +<UL>
+       <LI>change the terminfo entry so that rs1 (one of the strings used by
 +         the 'reset' program) does a hard reset rather than switching
 +         character sets.  This is more in accord with other terminal
 +         descriptions.
 +
+       <LI>modifies the treatment of hard reset by the xterm program to
 +         reset the saved lines.
 +
+       <LI>corrects hard reset by also resetting user-defined keys (DECUDK).
 +</UL>
+
+<H1><A NAME="xterm_60">Patch #60 - 1998/1/10 - XFree86 3.9Ab</A></H1>
 +
+This fixes some minor bugs and adds new functionality:
 +<UL>
+       <LI>add support for blinking text.
 +<UL>
+         <LI>This does not actually cause the
 +         text to flash, but text with the blink attribute can be displayed
 +         in color, using new resources colorBL and colorBLMode.
 +
+         <LI>If colors are not used, the blinking text will be displayed as
 +         before (just like bold).  The main purpose of this is to make
 +         applications work properly when they assume the emulator supports
 +         blinking text.
 +
+         <LI>I did this by moving the per-cell LINEWRAPPED flag to a per-line
 +         flag, to make room for the new BLINK flag.  There were no per-line
 +         flags, so this changes a lot of logic.
 +</UL>
+
+       <LI>corrected missing save-cursor logic in the handling of SGR 1048
 +         (the new control sequence I added in patch #54, 1997/10/17). 
 +         Reported by Darren Hiebert.
 +
+       <LI>flush the output of the transparent printing after each line
 +         Reported by Tomas Vanhala <vanhala@ling.helsinki.fi>.
 +
+       <LI>correct the modes that are affected by save/restore cursor by adding
 +         WRAPAROUND and PROTECTED.
 +
+       <LI>corrected placement of one of the XSync calls that I added in patch
 +         #51, 1997/9/15, which had the side-effect of writing on the window
 +         border when the xterm was resizing from 132 to 80 columns.
 +
+       <LI>work around an incompatibility of the XKB definition used in xterm
 +         versus that symbol from IRIX 6.2's imake definitions (by adjusting
 +         the standalone configure script).
 +</UL>
+
+<H1><A NAME="xterm_59">Patch #59 - 1998/1/5 - XFree86 3.9Ab</A></H1>
 +
+My last patch has an off-by-one error in the comparison for argc.  Douglas
 +Kosovic <douglask@dstc.edu.au> showed me where (he got a core dump). 
 +Also, I think this explains Clint Olsen's problem, but the symptoms were more
 +subtle (EINVAL for a system call if the -display option is omitted).
 +
+<H1><A NAME="xterm_58">Patch #58 - 1998/1/3 - XFree86 3.9Ab</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>implement logic to permit xterm to work with proportional fonts.
 +<UL>
+         <LI>Thomas Wolff
 +         <Thomas.Wolff@sietec.de>
 +         requested this (but it isn't exactly what he's asking
 +         for - that's a more involved task).
 +
+         <LI>I chose to do this by rendering the characters on a fixed pitch,
 +         because it would not be useful for existing applications to display
 +         varying numbers of characters on each line.
 +
+         <LI>Except that this forces the display to be wider, it works reasonably
 +         well.  A couple of special cases (reverse + colorBD, for example)
 +         do not display with proper colors, since the inter-character gaps
 +         are painted with the background.
 +</UL>
+
+       <LI>added a version number to the program (several people have requested
 +         this).
 +
+       <LI>make the -version and -help options interpreted before the program
 +         attempts to open the display.
 +
+       <LI>minor reorganization of the man-page (ordered the options, resources
 +         and translations alphabetically - and eliminated some duplication).
 +
+       <LI>corrected a misspelled filename in Makefile.in, and added a lint
 +         rule.
 +
+       <LI>updated the configure script to correct behavior when it cannot
 +         find imake, as well as to fix the IRIX+gcc build (conflict with
 +         /usr/include).
 +
+       <LI>regenerated the configure script with a newer patch to autoconf
 +         that fixes a problem with environment space vs the configure --help
 +         message.
 +</UL>
+<H1><A NAME="xterm_57">Patch #57 - 1997/12/26 - XFree86 3.9Aa</A></H1>
 +
+This patch is mostly concerned with the standalone configure script; a few
 +minor corrections are added:
+<UL>
 +       <LI>add configure option --disable-tek4014, to allow xterm to be built
 +         without the tek4014 emulation.
 +
+       <LI>add configure option --with-terminal-type, to allow xterm to be
 +         compiled with default $TERM value other than "xterm" (e.g.,
 +         "xterm-16color") -- requested by Stephen Marley <stephen@memex.com>.
 +
+       <LI>fix a typo in the configure --help message -- reported by Darren
 +         Hiebert <darren@hmi.com>.
 +
+       <LI>review diffs between main.c and os2main.c, to make them more alike.
 +         (applies some minor bugfixes to OS/2's version).
 +
+       <LI>add missing quotes in memmove/bcopy configure test
 +</UL>
+
+
+<H1><A NAME="xterm_56">Patch #56 - 1997/11/28 - XFree86 3.9x</A></H1>
 +
+This patch is based on analysis by Arfst Ludwig <arfst@luxor.IN-Berlin.DE>,
 +who reported:
+<dl>
+<P>
+       Setting the following resources xterm (all current versions) receives a
 +       segmentation fault on <Btn2Up> after scrolling:
 +<PRE>
+         *XTerm*VT100*translations:    #override \
 +             ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\
 +             Shift~Ctrl<Btn2Up>:  insert-selection(CLIPBOARD, CUT_BUFFER1)\n\
 +             ~Shift<BtnUp>:       select-end(PRIMARY, CUT_BUFFER0)\n\
 +             Shift<BtnUp>:        select-end(CLIPBOARD, CUT_BUFFER1)
 +</PRE>
+       (The above resources intention is to be able to paste the latest
 +       selection even if the xterm was cleared.)
 +<P>
+       And here is how it works (and a fix!):  The widget given to the action
 +       handler as first argument is not guaranteed to be a XtermWidget (it can
 +       be the ScrollbarWidget).  Instead of accessing the widget's member
 +       directly XtDisplay gives the required pointer in a safe way.
 +</dl>
+I noticed that this was not the only instance (by reading the code, and testing
 +with his example), and extended the solution to check the widget-class to
 +ensure that it is indeed xterm's widget class before attempting to use it in
 +the context of translations.
+
 +<H1><A NAME="xterm_55">Patch #55 - 1997/11/25 - XFree86 3.9x</A></H1>
 +
+This fixes the segmentation violation noted by Rogier Wolff about a month
 +ago.  He'd set xterm to 400 (rows) by 150 columns, which broke because there
 +were limited buffers (200 rows) used for juggling data when adding or deleting
 +lines and for switching between alternate and normal screens.  I replaced this
 +by an allocated buffer.
+<P>
 +The bug is simple to test if you set titeInhibit false.
 +
+<H1><A NAME="xterm_54">Patch #54 - 1997/10/17 - XFree86 3.9s</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>correct a minor placement problem with the right scrollbar.
 +
+       <LI>implement a new set of control sequences for switching between the
 +         normal and alternate VT100 screens.  These work around the older
 +         sequences limitation that required modification of the runtime
 +         $TERMCAP to cooperate with the titeInhibit resource (that can't work
 +         with terminfo).  I do this by moving all of the functionality of the
 +         rmcur terminfo capability into the control sequences.
 +
+       <LI>implement the alternate-screen menu entry
 +</UL>
+
+<H1><A NAME="xterm_53">Patch #53 - 1997/10/12 - XFree86 3.9r</A></H1>
 +
+This patch adds a fix and implements a new feature (as well as some minor
 +typos):
+<UL>
+       <LI>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a problem
 +         with the wait call with the logging option.  It hung when the logfile
 +         was opened as a command-line option.  I fixed this by moving the
 +         StartLogging() call down past the place where I'd reset the setuid
 +         mode.  So the logfile is opened as the real user, without having
 +         to fork.
 +
+       <LI>Michael Rohleder <michael.rohleder@stadt-frankfurt.de> sent
 +         me a patch which implements right-scrollbars for xterm.  I used that
 +         as a starting point, renamed the command-line options and reduced
 +         the number of ifdef's.
 +</UL>
+
+<H1><A NAME="xterm_52">Patch #52 - 1997/9/29 - XFree86 3.9q</A></H1>
 +
+This patch addresses bugs and requests reported by
 +<UL>
+       <LI>Bob Maynard <rmaynard@montana.com>,
 +       <LI>Clint Olsen <olsenc@ichips.intel.com>,
 +       <LI>JCHANDRA@Inf.COM (JCHANDRA),
 +       <LI>Michael Schroeder <Michael.Schroeder@informatik.uni-erlangen.de>,
 +       <LI>Pablo Ariel Kohan <pablo@memco.co.il>
 +</UL>
+
+Some of the changes are interrelated (it was an unusually busy week).
 +<UL>
+
+       <LI>change the default resource value for colorMode to true, matching
 +         the Xterm.ad file.
 +
+       <LI>correct behavior of 'ech' control, making the default and 0
 +         parameters erase one character rather than to the end of line
 +         (reported by Michael Schroeder).
 +
+       <LI>add resource boldColors, command-line options +pc and -pc and
 +         configure-script option to specify behavior of xterm's mapping bold
 +         colors 0 through 7 to colors 8 through 15.
 +         (request by Pablo Ariel Kohan).
 +
+       <LI>add resource colorAttrMode to specify whether colorULMode and
 +         colorBDMode can override the ANSI colors
 +         (from a problem report by Clint Olsen).
 +
+       <LI>correct a conflict between colorULMode/colorBDMode versus ANSI
 +         colors, where exposure events would occasionally pick up the
 +         former (e.g., colorBD) rather than ANSI colors.  Testing the
 +         colorAttrMode made this apparent, though it has been in the
 +         code since 3.2A (patch #35 in Jan 1997).
 +
+       <LI>correct two problems with the optional logging support.  On Linux
 +         at least, the waitpid call in creat_as hangs when the logging is
 +         toggled from the popup menu.  Also, the mktemp template has the wrong
 +         number of X's (since X11R5!).  Fixed the waitpid problem by
 +         exploiting the fact that the setuid behavior is reset before the
 +         popup menus are available.
 +         (reported by Jayachandran C.).
 +
+       <LI>add configure script options for building with the Xaw3d and neXtaw
 +         libraries.
 +
+       <LI>correct CF_IMAKE_CFLAGS standalone configure script macro, so that it
 +         will pick up $(ALLDEFINES) rather than $(STD_DEFINES).  This is
 +         needed to make scrollbars work on Linux, since that uses narrow
 +         prototypes.
 +         (reported by Bob Maynard).
 +
+       <LI>various minor updates to configure-script macros.
 +</UL>
+
+<H1><A NAME="xterm_51">Patch #51 - 1997/9/15 - XFree86 3.9p</A></H1>
 +
+Most of this patch is related to the standalone configure script, though
 +there are fixes/enhancements as well:
 +<UL>
+       <LI>add a new resource sunKeyboard, with associated command-line
 +         option and menu-toggle that allows using a normal Sun or PC
 +         keyboard to generated the complete DEC-style function keys
 +         and keypad.
 +
+       <LI>correct a reversed foreground/background test in the control
 +         sequence that replies with the current SGR settings.
 +
+       <LI>correct, by invoking XSync, a display problem that caused the
 +         program to not properly update newly exposed areas when a font
 +         change or 80/132 resize request was not completely accepted.
 +
+       <LI>restructured autoconf macros (I made a library of all of the
 +         macros across the complicated configure scripts I'm working on).
 +
+       <LI>use the autoconf config.guess and config.sub scripts to better
 +         identify the host-os.
 +
+       <LI>improve the configure script that uses 'imake' as a fallback for
 +         definitions.
 +
+       <LI>correct several instances of unsigned/signed mixed expressions.
 +</UL>
+
+I've tested the configure script on Linux, SunOS 4.1.3, Solaris 2.5.1,
 +IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but the last run properly
 +as well).
+
+<H1><A NAME="xterm_50">Patch #50 - 1997/8/22 - XFree86 3.9m</A></H1>
 +
+This is a collection of small fixes, and a couple of minor enhancements:
 +<UL>
+       <LI>plug a security hole in the implementation of Media Copy (print)
 +         by invoking setuid just before the main loop.
 +
+       <LI>add an ifdef'd include for <sys/termio.h> for HP-UX, which allows
 +         the program to process SIGWINCH events (this is a bug in X11R6.3)  
 +
+       <LI>add state-table entries for VT52 emulation to enter/exit keypad
 +         application mode.
 +
+       <LI>disable the popup-menu entry for 8-bit controls when the terminal-id
 +         is less than 200 (e.g., VT52 or VT100).
 +
+       <LI>ensure that the popup-menu entry for 8-bit controls is updated when
 +         the application enables/disables this mode, including the response
 +         to a full-reset.
 +
+       <LI>implement VT300 DECBKM feature: set interpretation of the backarrow
 +         key to either backspace or delete.  The initial setting is via
 +         resource; it can also be modified in the main popup menu.
 +
+       <LI>implement VTxxx KAM (ISO AM), which allows a keyboard to be locked
 +         (i.e., the terminal discards input).
 +
+       <LI>implement VTxxx SRM, which is used to control local echoing of
 +         input on the terminal.
 +
+       <LI>add terminfo and termcap entries for xterm-8bit, a variation of
 +         the xterm description that uses 8-bit control characters.
 +
+       <LI>add fallback definitions for Imakefile to allow it to work on some
 +         X11R5 systems that have no SpecialCObjectRule or ProgramTargetName
 +         macros.
 +
+       <LI>add .c.o and .c.i rules to standalone Makefile.in
 +
+       <LI>correct order of -lXmu and -lXext in standalone configure script.
 +
+       <LI>add configure script options to allow selective disabling of
 +         active-icon, input-method and i18n code (mainly for users with X11R5
 +         or an incomplete X11R6 configuration).
 +
+       <LI>change menu-indices from #define's to enum values, thereby making
 +         it work better with the ifdef's for logging and active-icon (the
 +         X11R6.3 active-icon code is incorrectly ifdef'd; this corrects an
 +         error introduced by incorporating that code).
 +
+       <LI>correct minor compile errors in the configuration where active-icon
 +         is not used.
 +
+       <LI>add configure option to suppress echoing of long compiler commands
 +
+       <LI>correct spelling of decTerminalID in configure script help message
 +
+       <LI>use gcc __attribute__((unused)) to quiet warnings about unused
 +         parameters when compiling with -W (to make it simpler to find the
 +         real problems).
 +</UL>
+
+<H1><A NAME="xterm_49">Patch #49 - 1997/8/10 - XFree86 3.9k</A></H1>
 +
+This patch implements the VT100/VT220 Media Copy (i.e., print-screen) control
 +sequences.
+
+<H1><A NAME="xterm_48">Patch #48 - 1997/7/26 - XFree86 3.9j</A></H1>
 +
+This patch does the following (all but the first affect only the standalone
 +configure script):
+<UL>
+       <LI>minor correction to positioning of underlines for small (e.g., 5x8)
 +         font size.
 +       <P>
+         The existing behavior allowed underlines to be drawn outside the
 +         character-cell, so they weren't cleared properly under some
 +         circumstances.
 +
+       <LI>adds more special-case tokens to the standalone configure script's
 +         imake-option filter (e.g., "&&", since a "make -n main.o" on my IRIX
 +         system uses that shell construct).
 +
+       <LI>adds a '--enable-logging' option for the standalone configure script.
 +
+       <LI>adds check and ifdef's for the standalone configure script to allow
 +         for building on platforms with X11R6, which lacks Xpoll.h (introduced
 +         in X11R6.1).
 +</UL>
+
+<H1><A NAME="xterm_47">Patch #47 - 1997/7/13 - XFree86 3.9i</A></H1>
 +
+This patch does the following
+<UL>
 +       <LI>corrects an indexing error in the doublesize character logic
 +         (button.c) that caused core dump (this was reported by J.  Wunsch).
 +       <LI>corrects the logic of ShowCursor when it is painting in a doublesize
 +         cell (charproc.c).
 +       <LI>corrects, according to vttest, the behavior when switching to
 +         doublesize characters and back again (doublechr.c).
 +       <LI>adds cbt (back_tab) to the terminfo description (this was something
 +         that I'd overlooked as applicable to curses optimization last
+         summer).
 +       <LI>corrects, for the standalone xmc test, the logic for disabling xmc.
 +</UL>
+
+<H1><A NAME="xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</A></H1>
 +
+This is a patch to provide test-support for some work I'm doing on ncurses.  It
 +does not modify the normal configuration of xterm; the code is compiled if the
 +standalone configure option "--enable-xmc-glitch" is specified.
 +
+<H1><A NAME="xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</A></H1>
 +
+This fixes the problem reported with xterm's cursor color versus the background
 +(the second chunk in this patch) and also removes some duplicate initialization
 +of the cursor GC's.  If the cursor color at startup is the same as the
 +background, then xterm will use the reverse GC, ignoring the setting of the
 +colorMode resource.
+
+<H1><A NAME="xterm_44">Patch #44 - 1997/6/22 - XFree86 3.9g</A></H1>
 +
+This implements the first part of the VT100 doublesize characters for xterm,
 +as well as fixing a handful of bugs:
 +<UL>
+       <LI>the doublesize character support uses the normal font (using scaled
 +         fonts will be another patch) with blanks to simulate doublesize
 +         characters.  This patch does most of the global changes that'll be
 +         required.  I've hidden most of the details in macros and ifdefs so
 +         it's easy to configure out (part of the patch is a configure option
 +         for that purpose).
 +
+       <LI>corrected limits in DeleteChar() function -- it's always ignored the
 +         size of the left border and scrollbar.  I noticed this when working
 +         on the doublesize characters since the glitch was doubled in size
 +         (i.e., it wrapped some garbage around the right margin).
 +
+       <LI>corrected 'memmove()' logic, for standalone builds (it referenced a
 +         malloc wrapper from my development library).
 +
+       <LI>add a check for HideCursor() to prevent repeated screen updates
 +         (which can cause a spurious cursor glitch to appear, e.g., during
 +         scrolling).  I noticed this with the 3.2A version (but only a few
 +         weeks ago, when I started working on this patch).
 +</UL>
+
+<H1><A NAME="xterm_43">Patch #43 - 1997/6/10 - XFree86 3.9d</A></H1>
 +
+Here's a fix for two problems:
 +<UL>
+       <LI>modify handling of tgetent results in xterm and resize programs to
 +         make them tolerant of missing termcap file, or unknown terminal name.
 +         In this scheme, an explicit "-tn" option will succeed, overriding
 +         the fallback list.
 +
+       <LI>a nit in the configure script (log extra information to help diagnose
 +         which case of the test-compile of tgetent was used).
 +</UL>
+
+<H1><A NAME="xterm_42">Patch #42 - 1997/6/8 - XFree86 3.2Xl</A></H1>
 +
+Bram Moolenaar reported that the cursor color changed unexpectedly while
 +scrolling.  The cause was that it used the same GC's as the logic that draws
 +the ANSI colors.  The bug only appears if the cursorColor resource isn't set,
 +and has been present since the initial implementation early last year.  (The
 +same bug also appears in rxvt ;-).  Here's a fix.
 +
+<H1><A NAME="xterm_41">Patch #41 - 1997/5/28 - XFree86 3.2Xl</A></H1>
 +
+Some nits found by Darren Hiebert (missing part of install-rule, incorrect
 +assignment for --enable-color-mode option).
 +
+<H1><A NAME="xterm_40">Patch #40 - 1997/5/26 - XFree86 3.2Xl</A></H1>
 +
+Patch for the configure script's logic for obtaining imake predefined
 +symbols.
+
+<H1><A NAME="xterm_39">Patch #39 - 1997/5/24 - XFree86 3.2Xl</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>integrate the 16-color change for 'xterm'
 +
+       <LI>minor fixes/clarification of tgetent in terminfo vs termcap to
 +         'resize'
 +</UL>
+
+(both changes also modify the configure script)
 +
+<H1><A NAME="xterm_38">Patch #38 - 1997/5/22 - XFree86 3.2Xh</A></H1>
 +
+This implements a simple configuration script with autoconf (to which I'll
 +add more options later).  It does the following:
 +<UL>
+       <LI>configures xterm to build with X11R5 (at least on SunOS 4.1, Solaris
 +         2.4, possibly IRIX - sorry network was down today, but I did test
 +         an earlier version yesterday).
 +
+       <LI>enables/disables the configuration ifdefs for ANSI color and VT52
 +         emulation.
 +</UL>
+It does not make tests for the things that imake does (that's another project),
 +instead it uses a hybrid of the autoconf tests for libraries and adds imake's
 +compiler options (which are necessary in some cases to get main.c to compile).
 +
+<H1><A NAME="xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</A></H1>
 +
+This corrects a minor, but annoying error in the vt220 emulation: the DECUDK
 +is only supposed to be interpreted for _shifted_ function keys.
 +
+<H1><A NAME="xterm_36">Patch #36 - 1997/1/16 - XFree86 3.2r</A></H1>
 +
+This corrects something that I overlooked in patch #27 (21-aug-1996), which is
 +that when trimming the region to be repainted for the highlightSelection
 +resource of xterm, I still have to paint the background past the highlighted
 +region.  This only happens when I first do a selection in a window that's
 +partly off-screen, then move the window on-screen.
 +
+<H1><A NAME="xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>combines the coding for foreground and background colors into a
 +         single byte, reducing the memory required to store saved-lines in
 +         color.  (I'll take back that byte in a following patch to use to
 +         ensure the character-set, so there's no long-term decrease in memory
 +         use).
 +
+       <LI>modifies the PF1-PF4 coding in termcap/terminfo.  Because xterm is
 +         still by default emulating vt100, the function key codes are
 +         vt100-compatible (I overlooked this in patch #31).
 +
+         I also reformatted the whole terminfo file into a single-column,
 +         for consistency.
 +
+       <LI>adds an interim xterm-vt220 description to accommodate the old and new
 +         styles of function-keys (though probably it'd be better to drop the
 +         old-style altogether).
 +</UL>
+
+<H1><A NAME="xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>implement DECSTR (soft terminal reset).  The biggest diff is due to
 +         adding another state table (note that there's only one useful state
 +         here, but it's only 256 bytes rather than 1k as it would have been
 +         before I reduced the size of state entries).
 +
+       <LI>some minor tidying up (e.g., signed/unsigned use bitcpy, MODE_DECCKM,
 +         resetColor, resetCharsets).  More is done in patch #35.
 +</UL>
+
+I got the description of DECSTR from a vt420 user's manual.  I'll do some
 +testing with vttest to ensure that there's nothing else to do than what was
 +documented.
+
+<H1><A NAME="xterm_33">Patch #33 - 1996/11/24 - XFree86 3.2</A></H1>
 +
+This adds to the reset-fix by Matthieu Herrb <Mathieu.Herrb@mipnet.fr> a
 +small change to make xterm able to output 8-bit characters in VT100 mode. 
 +
+Applications that run on real VT100's don't do that anyway, and this feature
 +should be removed sometime after finishing off the VT220 emulation (VT220's can
 +do 8-bit characters).  That would be a good time to change the default
 +terminal-id to 220.
+
+<H1><A NAME="xterm_32">Patch #32 - 1996/11/21 - XFree86 3.2</A></H1>
 +
+This implements the REP (repeat) control for xterm.  That isn't part of the DEC
 +VTxxx series, but is defined in ISO 6429.  (Note that the base xterm terminal
 +description is <EM>not</EM> changed -- I added a variant, "xterm-rep").
 +
+<H1><A NAME="xterm_31">Patch #31 - 1996/11/16 - XFree86 3.2</A></H1>
 +
+This implements vt52 emulation in xterm (ifdef'd so it can be removed).
 +I've been using it for testing for the past month or so.
 +
+<H1><A NAME="xterm_30">Patch #30 - 1996/11/16 - XFree86 3.2</A></H1>
 +
+From bug-report by <auroux@clipper.ens.fr> (Denis Auroux), missing reset to
 +ground state.  I checked through the rest of <EM>that</EM> table and found another,
 +in the unimplemented MC (screen print).
 +
+<H1><A NAME="xterm_29">Patch #29 - 1996/9/15 - XFree86 3.1.2Gb</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>corrects the restoration of color for bold/underline color mode
 +
+       <LI>adds a resource 'decTerminalID' to control the reporting level of
 +         xterm (e.g., VT100, VT220).
 +
+       <LI>uses the new resource to implement/correct the DA1, DA2 and
 +         DECRPTUI reports.
 +
+       <LI>change valid-response code in DECRQSS from 0 to 1 (the manual says 0,
 +         but the VT420 terminal I've been testing on says 1).
 +</UL>
+
+All of these changes are based on vttest 2.6
 +<P>
+(Most of the volume in the patch is to add 2 more state tables for parsing
 +the 2nd/3rd device-attribute controls).
 +
+<H1><A NAME="xterm_28">Patch #28 - 1996/8/31 - XFree86 3.1.2F</A></H1>
 +
+This patch corrects the following reported by Roland Rosenfeld
 +<roland@spinnaker.rhein.de>:
+<UL>
 +       <LI>handle SGR 22, 24 and 25 in combination with colorUL and colorBD
 +         resources.  Also noted & fixed reset of colored underline/bold
 +         with SGR 0.
 +
+       <LI>a typo in the termcap (missing '['), from 3.1.2Dj (my error)
 +</UL>
+
+Roland also complained that he couldn't use box characters with
 +<PRE>
+       -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1
 +</PRE>
+but that's a known xterm limitation (the box characters must be part of the
 +font, in the first 32 locations).
 +
+<H1><A NAME="xterm_27">Patch #27 - 1996/8/21 - XFree86 3.1.2Ek</A></H1>
 +
+This patch fixes one of my long-term gripes:  xterm's selection doesn't clearly
 +show what's being selected (as per David's request, it's controlled by a
 +resource, which defaults to the older behavior).
 +
+<H1><A NAME="xterm_26">Patch #26 - 1996/8/20 - XFree86 3.1.2Ei</A></H1>
 +
+Here's a patch to fix a problem with xterm's cut/paste and another to modify
 +the appearance of the highlighting while selecting.  (The changes are
 +independent, so you can see if the change to screen.c is desirable).
 +
+<H1><A NAME="xterm_25">Patch #25 - 1996/8/18 - XFree86 3.1.2Ei</A></H1>
 +
+Here's a correction for two minor bugs that I picked up in testing, plus
 +some lint (from Solaris 2.5) where NULL was used incorrectly:
 +<UL>
+       <LI>make the second alternate font the same as the first (that's what
 +         vt420 and dtterm do)
 +
+       <LI>corrected DECSCL report when DECSCL hasn't been set (i.e., don't
 +         return a '60').
 +</UL>
+
+<H1><A NAME="xterm_24">Patch #24 - 1996/8/11 - XFree86 3.1.2Ee</A></H1>
 +
+This patch does several things.  In effect, xterm can (I think) do a reasonably
 +good job of emulating vt220 and vt320 terminals (as well as it was doing
 +vt100, at any rate ;-).
+<P>
 +It does NOT do:
+<UL>
+       <LI>soft fonts
 +
+       <LI>rigel or sixel graphics
 +</UL>
+<P>
+Anyway, I:
+<UL>
+
+       <LI>added ECH, CPL, CNL, SU, SD, CBT, CHT controls
 +
+       <LI>added popup-menu for switching between DEC and Sun function keys.
 +         (corrected alignment err wrt logging entry at that point).
 +
+       <LI>make xterm recognize both 8-bit and 7-bit controls (including
 +         popup menu for switching modes).
 +
+       <LI>add user-definable function keys (aka DECUDK)
 +
+       <LI>support concealed text
 +
+       <LI>support protected text (both ISO compatible and DEC compatible -
 +         that's not the same thing, btw), with SPA, EPA, DECSCA, DECSED,
 +         DECSEL controls.
 +
+       <LI>implement DECSCL.
 +</UL>
+<P>
+I'll be continuing to test this patch for a while, but don't expect to add any
 +new functionality (it passes all of the current tests I've built in vttest, but
 +I need to make more tests)..
 +
+<H1><A NAME="xterm_23">Patch #23 - 1996/7/31 - XFree86 3.1.2Ec</A></H1>
 +
+This removes the blinking cursor I added last week (for performance reasons). 
 +Time-permitting, I'll revisit this after 3.2 is released (there <EM>will</EM> be more
 +work after XFree86 3.2, I assume).
 +
+<H1><A NAME="xterm_22">Patch #22 - 1996/7/26 - XFree86 3.1.2Ec</A></H1>
 +
+I looked more closely at my "double-negative" and realized that I had been
 +confused by the default color scheme (black on white) in combination with
 +reverse video.  However, I did see that the original_fg and original_bg data
 +weren't really used - so I removed that logic.
 +<P>
+Also:
+<UL>
+       <LI>during initialization, check if ANSI colors are set with non fg/bg
 +         values, disable color mode if not.  This makes xterm tolerant of
 +         applications that allocate the whole color map.
 +
+       <LI>implemented blinking cursor (default is <EM>off</EM>)
 +</UL>
+
+<H1><A NAME="xterm_21">Patch #21 - 1996/7/24 - XFree86 3.1.2Ec</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>fixes some minor typography in the control-sequences documentation
 +         (it didn't occur to me til I'd sent the last patch that I could use
 +         ghostview for previewing the troff output ;-)
 +
+       <LI>adjusts the shell's background color in ReverseVideo so that flicker
 +         in resizing is reduced
 +
+       <LI>adds an ifdef OPT_ISO_COLORS to allow configuring xterm without
 +         the ISO color support (saves a lot of memory)
 +
+       <LI>used that ifdef to isolate/modify logic so that if the user doesn't
 +         have the colorMode enabled, then ISO color support is disabled (saving
 +         memory).
 +       <P>
+         (If anyone needs numbers, I had savedLines set to 2000, and found
 +         a reduction from ~700k to ~400k of allocated memory, according to
 +         Purify).
 +</UL>
+
+<H1><A NAME="xterm_20">Patch #20 - 1996/7/24 - XFree86 3.1.2Ec</A></H1>
 +
+This documents the changes in control sequences for window operations that
 +I added in my previous patch.  I'm testing another patch that allows the
 +user to use less memory if colors aren't needed.
 +
+<H1><A NAME="xterm_19">Patch #19 - 1996/7/21 - XFree86 3.1.2Ec</A></H1>
 +
+This patch does the following:
+<UL>
 +       <LI>fixes the core dump that I reported on IRIX 5.2 (in main.c)
 +       <P>
+         (it's worth noting that this bug exists in X11R6.1, so I'd like
 +         to assume that someone's already submitted a fix to X Consortium...)
 +
+       <LI>change the interpretation of zero rows or columns in a resize-window
 +         request to use the root window's size (looking more carefully at
+         dtterm, that seems to be what it does).
 +
+       <LI>change some memmove calls to memcpy for slightly better performance.
 +         (also, a couple of memset calls to bzero - Quantify says bzero runs
 +         20% faster, I assume because there's one less argument).
 +
+       <LI>interpret character sets 1 and 2 (so that vttest gives a reasonable
 +         result) Both rxvt and dtterm do something equivalent.
 +
+       <LI>fix a minor memory leak in the logic that retrieves the window or
 +         icon names (Purify found this for me while I ran vttest).
 +</UL>
+
+<H1><A NAME="xterm_18">Patch #18 - 1996/7/18 - XFree86 3.1.2Ec</A></H1>
 +
+This implements the following:
+<UL>
 +       <LI>escape sequences that act like the CDE dtterm's window operations
 +         (though I have implemented the default width and height -- I've seen
 +         a rather buggy dtterm running that seems to treat width=0 or height=0
 +         literally -- maybe that's a feature, not a bug?)
 +
+       <LI>minor tweak to the screen-repainting when resizing (I still cannot
 +         entirely get rid of flicker).
 +
+       <LI>still more fixes to terminfo & termcap (I corrected my error for
 +         the hpa code and added some other stuff by comparing to ncurses'
 +         description and rxvt's).
 +
+       <LI>a tweak to the patch by Michael Rohleder for the color translation
 +
+       <LI>re-order attribute codes to allow later implementation of protected
 +         fields (dtterm supposedly does this; it's probably more useful than
 +         blinking or invisible text -- that uses up all of the available bits
 +         without changing the attribute scheme radically).
 +</UL>
+
+<H1><A NAME="xterm_17">Patch #17 - 1996/7/2 - XFree86 3.1.2Eb</A></H1>
 +
+This patch implements for xterm several minor features from ISO 6429 which are
 +useful for terminfo applications.  The HPA and VPA control sequences allow
 +cursor movement along a row or column, cutting down a little on the characters
 +transmitted.  The other codes allow resetting specific graphic rendition
 +attributes without modifying the other attributes.
 +
+(now if someone just had time to implement blinking cursors...)
 +
+<H1><A NAME="xterm_16">Patch #16 - 1996/6/25 - XFree86 3.1.2Ea</A></H1>
 +
+Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks ago that I'd missed
 +some of the background coloring in xterm.  I investigated, and found that while
 +I'd picked up on the clear-to-bottom and clear-to-end-of-line operations, I'd
 +overlooked the insert/delete lines.  Just so I wouldn't overlook any more of
 +these, I updated a copy of vttest to test ISO colors and bce (background color
 +erase).  This patch introduces a new function, ClearCurBackground, whose calls
 +replace the direct XClearArea calls that I'd overlooked.
 +
+(There's also a few compiler warnings fixed, etc ;-)
 +
+<H1><A NAME="xterm_15">Patch #15 - 1996/5/29 - XFree86 3.1.2E</A></H1>
 +
+This fixes the problem reported by David Dawes, by making the 50msec select
 +timeout for the Xaw3d arrow scrollbar a resource.  (I made it a boolean for a
 +variety of reasons -- to make it a number, you'd need an additional resource,
 +to avoid breaking the logic).
+
 +<H1><A NAME="xterm_14">Patch #14 - 1996/5/12 - XFree86 3.1.2Dj</A></H1>
 +
+This patch brings the termcap and terminfo descriptions for xterm up to date.
 +I made the following changes:
+<UL>
 +       <LI>reformatted the terminfo description in a single-column (this is ok
 +         for terminfo, and will simplify future patches -- can't do that for
 +         termcap, since it would impact buffer requirements on some systems).
 +
+       <LI>omitted obsolete features in termcap to save a little space (bs, pt)
 +
+       <LI>added color capabilities to termcap (ut, Co, NC, op, AB, AF)
 +
+       <LI>corrected some capabilities (vi, ve)
 +
+       <LI>added 'st' (set tab)
 +
+       <LI>reduced function keys in termcap for 'xterm' to 12 because color
 +         capabilities makes that description larger than 1023 characters.
 +
+       <LI>created new termcap name 'xtermm' (monochrome) to match the terminfo
 +         list, and make that description have 20 function keys.
 +
+       <LI>added corresponding color capabilities to terminfo (bce, colors,
 +         pairs, op, ncv, setab, setaf)
 +
+       <LI>corrected corresponding capabilities in terminfo (civis, cnorm,
 +         rmcup, smcup)
 +
+       <LI>added capabilities (el1, hts)
 +
+       <LI>in both, corrected home/end keys to match the code correction made
 +         by Thomas Mueller in 3.1.2Bk
 +         
 +         => (I'm still considering modifying the code & description to match
 +             the rxvt program).
 +</UL>
+
+<H1><A NAME="xterm_13">Patch #13 - 1996/4/23 - XFree86 3.1.2Df</A></H1>
 +
+This corrects my earlier changes for colors - the inner border of the xterm was
 +getting painted with the wrong color, since I'd moved the call to set the
 +background into the logic that tracks SGR information.
 +
+<H1><A NAME="xterm_12">Patch #12 - 1996/3/16 - XFree86 3.1.2Dc</A></H1>
 +
+This corrects a memory leak in xterm that happens whenever one switches fonts.
 +
+<H1><A NAME="xterm_11">Patch #11 - 1996/3/5 - XFree86 3.1.2Db</A></H1>
 +
+This patch corrects the behavior of the ANSI colors in xterm when reverse
 +video is used, as well as some other lesser sins:
 +<UL>
+       <LI>button.c
 +<UL>
+               <LI>(compiler warnings: shadowing of 'time', redundant cast)
 +</UL>
+
+       <LI>charproc.c
 +<UL>
+               <LI>renamed screen.colors[] array to screen.Acolors[] to more
 +               easily distinguish the non-ANSI colors from the ANSI colors.
 +
+               <LI>moved logic of SGR_Save() into VTInitialize, getting rid of
 +               local private variables original_fg and original_bg.
 +
+               <LI>moved some logic into getXtermForeground and getXtermBackground
 +               from SGR_Foreground, SGR_Background, etc.
 +
+               <LI>corrected misleading 'row' to 'col' in case for CUF, CUB
 +               sequences.
 +</UL>
+
+       <LI>ctlseqs.ms
 +       <LI>xterm.man
 +<UL>
+               <LI>(correct a misconception which I'd added that the color0
 +               through color6 resource values apply to non-ANSI colors)
 +</UL>
+
+       <LI>ptyx.h
 +<UL>
+               <LI>added original_fg, original_bg to TScreen structure.
 +</UL>
+
+       <LI>scrollbar.c
 +<UL>
+               <LI>(compiler warnings: redundant cast)
 +</UL>
+
+       <LI>util.c
 +<UL>
+               <LI>new functions getXtermForeground and getXtermBackground replace
 +               the macros GET_FG and GET_BG, with the added functionality of
 +               checking for the reverse-video status of xterm.
 +
+               <LI>in ReverseVideo, swap the SGR foreground and background colors
 +               also.
 +</UL>
+</UL>
+
+<H1><A NAME="xterm_10">Patch #10 - 1996/2/14 - XFree86 3.1.2Cd</A></H1>
 +
+I observed an occasional glitch in the xterm's color behavior; a clear to end
 +of line would get a color that had been used in a program that supposedly reset
 +colors.  I traced this down to the way xterm was modifying colors of GC's on
 +the fly; it didn't restore the original color of the GC, even though it would
 +later be used in functions (such as ClearRight) that assumed (my error) that
 +the GC would have the current foreground or background color.
 +<P>
+I fixed this by resetting the GC's colors with a new function 'resetXtermGC()',
 +and direct calls on SGR_Foreground/SGR_Background, as appropriate and using a
 +new function 'updatedXtermGC()' to encapsulate the logic that modifies the GC's
 +color.  (I also removed some commented-out code that was trying to do this --
 +the problem was a little more obscure).
 +
+<H1><A NAME="xterm_09">Patch #9 - 1996/2/10 - XFree86 3.1.2Cb</A></H1>
 +
+This patch fixes the remaining problems that I had making xterm run with x11r5,
 +as well as a couple of other bugs.  It follows my patch from yesterday, that
 +added ifdef's for some of the input-method resources.
 +<UL>
+       <LI>corrected ifdef's that suppress the input-method code (doesn't
 +         exist in my x11r5, and xterm works adequately without it).
 +
+       <LI>corrected fallback definition for 'Select()' macro (oops: I'd
 +         copied the wrong text...)
 +
+       <LI>moved the declarations for the fd_set variables to data.[ch]
 +
+       <LI>corrected an ifdef in resize.c (sunos 4.x doesn't have termcap.h)
 +
+       <LI>corrected (in main.c) some unused/orphaned variables.
 +</UL>
+
+<H1><A NAME="xterm_08">Patch #8 - 1996/2/9 - XFree86 3.1.2Cb</A></H1>
 +
+This is mostly a documentation patch for xterm.  It describes the color control
 +sequences in more detail, and documents some other features of xterm that
 +aren't described elsewhere.
+<P>
 +I've also added a couple of ifdef's to fix (part of) the problem that I'm
 +working on (making the program work properly on x11r5, where I'm doing memory
 +testing -- I have a "good" version from mid-January, but my resync version
 +doesn't work properly on x11r5).  I'm not done with <EM>that</EM> yet.
 +
+<H1><A NAME="xterm_07">Patch #7 - 1996/1/28 - XFree86 3.1.2n</A></H1>
 +
+I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF).  I've got an S3 card.
 +<P>
+This fixes the following in the 3.1.2n xterm:
 +<UL>
+       <LI>initialize cur_foreground, cur_background in charproc.c (Purify
 +         told me they weren't initialized).
 +
+       <LI>add interpretation of codes 39, 49, to reset background and
 +         foreground to default value (I'm told that ISO 6429 does this; but I
 +         don't have a written reference -- yet -- can anyone help here?). 
 +         Anyway, rxvt does it, and it'll solve my remaining color management
 +         problems.
 +
+       <LI>shadowing of 'time' in menu.c
 +
+       <LI>'Cardinal' vs 'int' in scrollbar.c
 +
+       <LI>several changes to permit compile with X11R5 (the system that I've
 +         got Purify on won't be upgraded to X11R6 for a long time).
 +</UL>
+<P>
+I built this version (with a minor nit that I'll patch soon) on SunOS 4.1.3 so
 +that I can test it some more with Purify.
 +<P>
+<EM>btw</EM>:
+the changes made in Xpoll.h won't work on some older systems, because
 +       fd_set isn't a defined type (I've got one machine at least that this
 +       applies to).
 +
+<H1><A NAME="xterm_06">Patch #6 - 1996/1/8</A></H1>
 +
+This patch does all of the SGR foreground/background fixes (i.e., clearing the
 +screen after an SGR color is set causes that color to be used in the foreground
 +and/or background).  If the FG_COLOR and/or BG_COLOR flags aren't set, then the
 +xterm foreground and background default to the window's values.  This usage is
 +consistent with various types of hardware (especially the IBM PC), and is also
 +used in rxvt.
+<UL>
+       <LI>charproc.c:
 +<UL>
+               <LI>add/use new macros GET_FG, GET_BG - n/c.
 +
+               <LI>add/use new functions SGR_Foreground() and SGR_Background()
 +                 to set corresponding colors in GC's, and to retain sense of
 +                 "original" colors.
 +
+                 <P>
 +                 => This makes redundant some of the corresponding logic
 +                    in HideCursor to set the foreground and background,
 +                    but I left it in since it <EM>may</EM> be fixing an unrelated
 +                    requirement.
 +
+               <LI>set GC's in LoadNewFont() according to whether the SGR fg/bg
 +                 colors are active.
 +
+                 <P>
 +                 => This fixes some glitches in the accompanying resize,
 +                    that leaves parts of the window in the original
 +                    background color.
 +</UL>
+
+       <LI>screen.c:
 +<UL>
+               <LI>modified ClearBufRows() to use the SGR fg/bg colors if
 +                 they're set.
 +
+               <LI>added function ScrnClearLines(), used this to replace
 +                 portions of ScrnInsertLine() and ScrnDeleteLine().
 +                 The new function uses the SGR fg/bg colors if they're
 +                 set.
 +                 
 +                 <P>
 +                 => Otherwise, selection after an index or reverse index will
 +                    paint the wrong colors.
 +
+               <LI>modified ScrnDeleteChar() and ScrnInsertChar()
 +                 to use SGR fg/bg colors.
 +</UL>
+
+       <LI>util.c:
 +<UL>
+               <LI>modified ClearRight() so that if either of the SGR fg/bg
 +                 colors is set, we don't bzero the attributes and color
 +                 arrays, but instead fill them with the appropriate codes.
 +
+               <LI>modified ClearLeft to use SGR fg/bg colors.
 +</UL>
+</UL>
+
+<H1><A NAME="xterm_05">Patch #5 - 1996/1/7</A></H1>
 +
+This patch modifies the object code, by replacing indexing expressions with
 +temporary variables with the full indexing expression.  At first glance, this
 +seems inefficient (it did to me ;-), until remembering comments made in the
 +compilers newsgroups that trying to "help" the compiler doesn't really work
 +that well.  A good optimizing compiler can do a better job than the programmer
 +can.  (There's a moral in the use of 'register' variables also, but I won't fix
 +those...).
+<P>
+Anyway, the revised code generates a smaller object...
 +<UL>
+<LI>charproc.c:
+<UL>
+<LI>recode index expressions in ShowCursor() and HideCursor()
 +                 using SCRN_BUF_xxxxS macros - changes object.
 +
+<LI>replace constant '4' by MAX_PTRS - n/c.
 +</UL>
+
+<LI>ptyx.h:
+<UL>
+<LI>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS
 +                 macros, to pick up references to ScrnBuf data directly, and
 +                 added MAX_PTRS symbol to pick up those '4' constants strewn
 +                 about the code - n/c.
 +</UL>
+
+<LI>screen.c:
+<UL>
+<LI>recode index expressions in ScreenWrite() using
 +                 SCRN_BUF_xxxxS macros - changes object.
 +
+<LI>replace constant '4' by MAX_PTRS - n/c.
 +
+<LI>use macros BUF_CHARS, BUF_ATTRS - n/c.
 +
+<LI>cast calloc to 'Char *' to fix compiler warning on IRIX - n/c
 +</UL>
+
+<LI>scrollbar.c:
+<UL>
+<LI>replace constant '4' by MAX_PTRS - n/c.
 +
+<LI>cast calloc to 'Char *' to fix compiler warning on IRIX - n/c
 +</UL>
+</UL>
+
+<H1><A NAME="xterm_04">Patch #4 - 1996/1/7</A></H1>
 +When setting up for this phase, I saw that you'd corrected the bug that I found
 +in ClearLeft.  I decided to make this series of patches anyway, since
 +readability never hurt (and there's the potential for finding another bug while
 +reviewing this set).
+<UL>
+<LI>button.c:
+<UL>
+<LI>use SCRN_BUF_xxxxS macros - n/c
 +</UL>
+<LI>charproc.c:
+<UL>
+<LI>use SCRN_BUF_xxxxS macros - n/c
 +</UL>
+<LI>ptyx.h:
+<UL>
+<LI>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS,
 +                 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four
 +                 arrays that are derived from screen->buf.
 +</UL>
+<LI>screen.c:
+<UL>
+<LI>use SCRN_BUF_xxxxS macros - n/c
 +</UL>
+<LI>util.c:
+<UL>
+<LI>use SCRN_BUF_xxxxS macros - n/c
 +</UL>
+</UL>
+<H1><A NAME="xterm_03">Patch #3 - 1996/1/7</A></H1>
 +
+This is my third (and final cleanup) patch for xterm.  It gets rid of the
 +unused stuff, and converts several functions to static (thereby reducing their
 +scope).
+<P>
+At this point, the only compile warnings I've got (on Linux) are those about
 +the select arguments (int vs fd_set type), and a missing declaration for
 +waitpid.  Those both are hard to get right without autoconfigure.
 +<P>
+The next patches will address the functional changes...
 +<UL>
+<LI>Tekproc.c:
+<UL>
+<LI>changed several functions to 'static' that aren't used
 +outside this module -- changes object
 +</UL>
+<LI>charproc.c:
+<UL>
+<LI>changed several functions to 'static' that aren't used
 +outside this module -- changes object
 +<LI>deleted unused function unparsefputs -- changes object.
 +</UL>
+<LI>main.c:
+<UL>
+<LI>changed several functions to 'static' that aren't used
 +outside this module -- changes object
 +<LI>ifdef'd out unused function 'consolepr()' -- changes object
 +<LI>removed unused variable 'dummy_tio' -- changes object
 +<LI>moved variable 'discipline' to quiet unused-warning -- changes object
 +</UL>
+<LI>main.h:
+<UL>
+<LI>deleted unused definition of DEFBORDERWIDTH - n/c
 +</UL>
+<LI>misc.c:
+<UL>
+<LI>changed several functions to 'static' that aren't used
 +outside this module -- changes object
 +<LI>provide dummy return statements for xerror and xioerror to
 +quiet compiler warnings -- changes object
 +</UL>
+<LI>ptyx.h:
+<UL>
+<LI>change sbuf_address and abuf_address to 'Char *' - n/c
 +</UL>
+<LI>resize.c:
+<UL>
+<LI>changed several functions to 'static' that aren't used outside this module
 +-- changes object
+</UL>
+<LI>screen.c:
+<UL>
+<LI>remove unnecessary 'Char **' casts - n/c
 +</UL>
+<LI>util.c:
+<UL>
+<LI>changed several functions to 'static' that aren't used outside this module
 +-- changes object
+</UL>
+</UL>
+<H1><A NAME="xterm_02">Patch #2 - 1996/1/7</A></H1>
 +This is my second patch to xterm.  It corrects most of the gcc warnings (except
 +for some that are due to X header files ;-).  I compared objects to keep track
 +of the changes that don't affect the object code (n/c) versus those that do.
 +<P>
+At this point, I'm compiling (fairly) clean with gcc options
 +<PRE>
+       -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs
 +</PRE>
+(I also compiled with -Wshadow, but while that found some things that I wanted
 +to find, there's far too many warnings from the X headers to be usable in this
 +context).
+<P>
+The changes:
+<UL>
+<LI>Tekproc.c:
+<UL>
+<LI>parenthesized expression to avoid gcc warning -- n/c.
 +
+<LI>corrected nested-extern declaration for Bool
 +                 waiting_for_initial_map; ourTopLevelShellArgs, and
 +                 number_ourTopLevelShellArgs - n/c
 +
+</UL>
+<LI>charproc.c:
+<UL>
+<LI>corrected potentially-unintialized variables 'scstype', 'xim',
 +                 and 'input_style' -- changes object.
 +
+<LI>adjusted logic of VTparse so that gcc won't warn about setjmp
 +                 clobbering parsestate -- changes object.
 +
+<LI>corrected initialization of 'scstype', which could have been
 +                 clobbered by setjmp/longjmp - changes object.
 +
+<LI>corrected nested-extern declaration of 'term', 'ProgramName'
 +                 - n/c
 +</UL>
+
+<LI>cursor.c:
+<UL>
+<LI>corrected nested-extern declaration of 'term' -- n/c
 +
+<LI>renamed 'term' parameters to avoid gcc -Wshadow warning - n/c
 +</UL>
+
+<LI>input.c:
+<UL>
+<LI>change interface of StringInput to assume size_t (i.e.,
 +                 unsigned) nbytes -- changes object.
 +
+<LI>change interface of funcvalue, and sunfuncvalue to use
 +                 'KeySym' type instead of 'int' - changes object.
 +</UL>
+
+<LI>main.c:
+<UL>
+<LI>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h - n/c
 +
+<LI>corrected missing params of 'do_hangup()' -- changes object
 +                 (note: the missing params were not used).
 +
+<LI>corrected missing param of 'Error()' -- changes object
 +
+<LI>corrected nested-extern 'environ' - n/c
 +
+<LI>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' so
 +                 that gcc can see they won't be clobbered by the longjmp -
 +                 changes object.
 +
+<LI>use Size_t type - n/c.
 +</UL>
+
+<LI>menu.c:
+<UL>
+<LI>removed redundant prototype for 'do_hangup()' -- n/c.
 +
+<LI>renamed 'time' parameters to avoid gcc -Wshadow warning - n/c
 +</UL>
+
+<LI>menu.h:
+<UL>
+<LI>renamed 'time' parameters to avoid gcc -Wshadow warning - n/c
 +</UL>
+
+<LI>misc.c:
+<UL>
+<LI>corrected definition of 'HandleFocusChange()' -- changes
 +                 object
 +
+<LI>cast parameters in call to 'TekExpose()' -- n/c
 +
+<LI>corrected nested-extern declarations of 'term', 'toplevel',
 +                 ProgramName, and 'environ' -- n/c.
 +
+<LI>use Size_t type - n/c.
 +</UL>
+
+<LI>proto.h:
+<UL>
+<LI>moved definition of SIGNAL_T (and SIGNAL_RETURN) here from
 +                 main.c, resize.c to allow use of this symbol in prototypes
 +                 (mostly in xterm.h).
 +
+<LI>added definition 'Size_t' to use as corrected type for
 +                 strncpy, malloc sizes - n/c.
 +</UL>
+
+<LI>resize.c:
+<UL>
+<LI>moved SIGNAL_T definition to proto.h -- n/c.
 +
+<LI>use Size_t type - n/c.
 +</UL>
+
+<LI>screen.c:
+<UL>
+<LI>use Size_t type - n/c.
 +</UL>
+
+<LI>tabs.c:
+<UL>
+<LI>corrected nested-extern declaration of 'term' -- n/c
 +</UL>
+
+<LI>util.c:
+<UL>
+<LI>corrected/supplied parameters to 'TekExpose()' -- changes
 +                 object (note:  'TekExpose()' doesn't use its parameters).
 +
+<LI>corrected nested-extern declaration of
 +                 'waiting_for_initial_map' -- n/c.
 +
+<LI>renamed 'term' parameters to avoid gcc -Wshadow warning - n/c
 +</UL>
+
+<LI>xterm.h:
+<UL>
+<LI>prototype 'do_hangup()', 'HandleFocusChange()',
 +                 'TekExpose()', 'Error()', 'Exit()' - forces changes in
 +                 various places.
 +
+<LI>adjusted prototypes that pass 'Boolean' arguments to use
 +                 'int' (this is the "correct" ANSI approach to extended
 +                 compiles; it's worth mentioning that gcc doesn't meet the
 +                 ANSI spec here).  I used gcc -Wconversion to find these, but
 +                 there's a lot of unrelated warnings that are due to setting
 +                 NARROWPROTO in the config - n/c.
 +
+<LI>renamed 'term' parameters to avoid gcc -Wshadow warning - n/c
 +</UL>
+</UL>
+<H1><A NAME="xterm_01">Patch #1 - 1996/1/6</A></H1>
 +This is my first cleanup patch for xterm.  It addresses all of the gcc warnings
 +for -Wall, -Wmissing-prototypes and -Wstrict-prototypes that I can change
 +without modifying the object code.  (I'm compiling this with gcc 2.7.0 for an
+aout target, which makes it simple to compare objects.  When I do ELF-only,
 +I've got a tool that compares that sort of thing as well).
 +<P>
+Briefly, this patch adds (and uses) two header files in the xterm directory:
 +<PRE>
+       proto.h
+       xterm.h
 +</PRE>
+I expect this to be the biggest patch by far.  However (barring a misplaced
 +prototype), it shouldn't break anything, since the intent of the patch is to
 +provide missing declarations.
+</BODY>
 +</HTML>
Index: xtermcfg.hin
--- xterm-65+/xtermcfg.hin      Sun Jan 25 09:19:53 1998
 +++ xterm-66/xtermcfg.hin       Mon Feb 16 17:06:33 1998
 @@ -76,10 +76,6 @@
  extern char *my_strerror();
 #endif
 
-#if !HAVE_TERMCAP_H && !defined(NO_TERMCAP_H)
 -#define NO_TERMCAP_H
-#endif
-
 #if !HAVE_X11_XPOLL_H
 #define NO_XPOLL_H     /* X11R6.1 & up use Xpoll.h for select() definitions */
 #endif