about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorThomas E. Dickey <dickey@invisible-island.net>1998-05-11 03:50:40 -0400
committerThomas E. Dickey <dickey@invisible-island.net>1998-05-11 03:50:40 -0400
commit116ac6932821c4a82256313792b26ab28259e8f0 (patch)
treea076f5e67aaf9b33585da9d079acde9d52def50c
parentee5cdfe9af88df5a276ac105bf757a6967522b7a (diff)
downloadlynx-snapshots-116ac6932821c4a82256313792b26ab28259e8f0.tar.gz
snapshot of project "lynx", label v2-8-1dev_10
-rw-r--r--CHANGES42
-rw-r--r--INSTALLATION4
-rw-r--r--WWW/Library/Implementation/HTAABrow.c5
-rw-r--r--WWW/Library/Implementation/HTAABrow.h1
-rw-r--r--WWW/Library/Implementation/HTAAUtil.c3
-rw-r--r--WWW/Library/Implementation/HTAAUtil.h1
-rw-r--r--WWW/Library/Implementation/HTFormat.c16
-rw-r--r--WWW/Library/Implementation/HTPlain.c2
-rw-r--r--WWW/Library/Implementation/HTTP.c11
-rw-r--r--WWW/Library/Implementation/HTUtils.h8
-rw-r--r--WWW/Library/Implementation/SGML.c102
-rw-r--r--WWW/Library/Implementation/tcp.h1
-rw-r--r--config.hin1
-rwxr-xr-xconfigure799
-rw-r--r--configure.in8
-rw-r--r--samples/lynx-keymaps82
-rw-r--r--src/HTML.c4
-rw-r--r--src/LYCharUtils.c135
-rw-r--r--src/LYClean.c11
-rw-r--r--src/LYCurses.c126
-rw-r--r--src/LYCurses.h4
-rw-r--r--src/LYGlobalDefs.h3
-rw-r--r--src/LYMail.c137
-rw-r--r--src/LYMain.c161
-rw-r--r--src/LYMainLoop.c106
-rw-r--r--src/LYMainLoop.h1
-rw-r--r--src/LYOptions.c4
-rw-r--r--src/LYReadCFG.c3
-rw-r--r--src/LYStrings.c334
-rw-r--r--src/LYStrings.h2
-rw-r--r--src/LYUtils.c46
-rw-r--r--src/LYexit.c9
-rw-r--r--src/chrtrans/def7_uni.tbl14
-rw-r--r--src/makefile.dsl65
-rw-r--r--src/makefile.wsl62
-rw-r--r--test/c1.html82
-rw-r--r--test/raw8bit.html32
-rw-r--r--test/sgml.html7
-rw-r--r--test/spaces.html31
-rw-r--r--userdefs.h2
40 files changed, 1717 insertions, 750 deletions
diff --git a/CHANGES b/CHANGES
index 2a984703..776044ec 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,46 @@
 Changes since Lynx 2.8 release
 ================================================================================
 
+1998-05-10 (2.8.1dev.10)
+* eliminate assignment to stderr for trace-file by making tfp a function. - TD
+* added John Davis' keymaps/keysym patch (it really should be integrated with
+  the normal lynx.cfg file).
+* tweak chartrans, "Convert the octet to Unicode":  incoming symbols >127 but <
+  LYlowest_eightbit[IN-charset] now ignored, previously displayed as UFFFD.
+  (SGML.c, HTPlain.c, LYCharUtils.c) - LP
+* removed conflicting/unused declaration of 'bzero()' from tcp.h (from report
+  by Ashraf Zorkani <zorkani@aucegypt.edu>) - TD
+* modify the set/unset/toggle options to allow "on" and "off" values also - TD
+* apply the "partial display" patch, modified from:  
+      http://www.flora.org/lynx-dev/html/month0398/msg00993.html  
+  The behavior is controlled by a compile-time option (DISP_PARTIAL), by a
+  command-line argument (-partial), and by a lynx.cfg option (PARTIAL).  - BL
+* extend command-line option processing of set/unset/toggle options 
+      -toggle-     (set that toggle to FALSE) 
+      -toggle+     (set that toggle to TRUE) 
+  e.g.,
+      lynx -show_cursor+ -case- 
+  or with explicit 1/0 values, e.g.,
+      -toggle=0     (set that toggle to FALSE) 
+      -toggle=1     (set that toggle to TRUE)  
+  NOTE:  this allows you to change a few flags that would previously have been
+  controlled by lynx.cfg, and are security-related, such as -locexec or
+  -telnet.  I believe there is no issue, because if the user can control the
+  command line to Lynx, he could have run `lynx -cfg my_cfg_file` and
+  circumvented those settings anyway.  - BL
+* fix for buffer-overrun in LYMail.c when processing a mailto:very-log-address
+  URL - BL
+* correct, for OS/2 EMX, a place in LYConvertToURL() which must not use
+  HTDOS_wwwName() (patch by Jason F. McBrayer <jmcbray@mailhost.tcs.tulane.edu>)
+* similar changes to LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.wsl, for building
+  DOS version with slang - Bill Schiavo
+* modify LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.dsl, for building
+  DOS version with slang - DK
+* fix to improve reloading if user changed assume_charset in options menu
+  using ^A, which sometimes did not work - LP
+* add several chartrans-related files to test/ directory:  spaces.html,
+  c1.html, raw8bit.html - LP
+* fixes to compile on SunOS with K&R compiler. - TD
 1998-05-03 (2.8.1dev.9)
 * correct missing counter increment in tempname(), from cleanup. - TD
 1998-05-02 (2.8.1dev.8)
@@ -10,7 +50,7 @@ Changes since Lynx 2.8 release
   alex@unicorn.us.com & FM).  - LP
 * restore information in the INSTALLATION file for the DOS port on patching
   tcplib.  Also, clarifies the location of nullpkt.  It also clarifies
-  that the PDCurses beta has incorporated some of the patches we made for 
+  that the PDCurses beta has incorporated some of the patches we made for
   the lynx DOS port. - DK
 * modify logic that updates bookmark file after removing a link to use copy
   rather than rename, to solve file-ownership problems (patch by Paul
diff --git a/INSTALLATION b/INSTALLATION
index 46e6b975..122322cb 100644
--- a/INSTALLATION
+++ b/INSTALLATION
@@ -254,6 +254,10 @@ II. Compile instructions -- UNIX
   --enable-nsl-fork			(define NSL_FORK)
 	Use this option to allow NSL requests to be aborted at will.
 
+  --enable-partial			(define DISP_PARTIAL)
+	Use experimental code that lets Lynx display parts of a long page
+	while loading it.
+
   --enable-underlines			(define UNDERLINE_LINKS)
 	Use this option underline links rather than using boldface.
 
diff --git a/WWW/Library/Implementation/HTAABrow.c b/WWW/Library/Implementation/HTAABrow.c
index 1be48c4a..3bba7f3f 100644
--- a/WWW/Library/Implementation/HTAABrow.c
+++ b/WWW/Library/Implementation/HTAABrow.c
@@ -1052,10 +1052,9 @@ PUBLIC char *HTAA_composeAuth ARGS4(
 **				  field (in function HTAA_composeAuth()).
 **			NO, otherwise.
 */
-PUBLIC BOOL HTAA_shouldRetryWithAuth ARGS5(
+PUBLIC BOOL HTAA_shouldRetryWithAuth ARGS4(
 	char *,		start_of_headers,
 	int,		length,
-	void *,		handle,
 	int,		soc,
 	BOOL,		IsProxy)
 {
@@ -1080,7 +1079,7 @@ PUBLIC BOOL HTAA_shouldRetryWithAuth ARGS5(
     */
     CTRACE(tfp, "Server reply header lines:\n");
 
-    HTAA_setupReader(start_of_headers, length, handle, soc);
+    HTAA_setupReader(start_of_headers, length, soc);
     while (NULL != (line = HTAA_getUnfoldedLine())  &&  *line != '\0') {
 	CTRACE(tfp, "%s\n", line);
 
diff --git a/WWW/Library/Implementation/HTAABrow.h b/WWW/Library/Implementation/HTAABrow.h
index 9512603a..c62a3c4c 100644
--- a/WWW/Library/Implementation/HTAABrow.h
+++ b/WWW/Library/Implementation/HTAABrow.h
@@ -115,7 +115,6 @@ extern char *HTAA_composeAuth PARAMS((
 extern BOOL HTAA_shouldRetryWithAuth PARAMS((
 	char *		start_of_headers,
 	int		length,
-	void *		handle,
 	int		soc,
 	BOOL		IsProxy));
 
diff --git a/WWW/Library/Implementation/HTAAUtil.c b/WWW/Library/Implementation/HTAAUtil.c
index bbcbc508..2ce86409 100644
--- a/WWW/Library/Implementation/HTAAUtil.c
+++ b/WWW/Library/Implementation/HTAAUtil.c
@@ -483,9 +483,8 @@ PRIVATE int in_soc = -1;
 **			will use this buffer first and then
 **			proceed to read from socket.
 */
-PUBLIC void HTAA_setupReader ARGS4(char *,	start_of_headers,
+PUBLIC void HTAA_setupReader ARGS3(char *,	start_of_headers,
 				   int, 	length,
-				   void *,	handle,
 				   int, 	soc)
 {
     start_pointer = buffer;
diff --git a/WWW/Library/Implementation/HTAAUtil.h b/WWW/Library/Implementation/HTAAUtil.h
index 2f353a63..de6878e6 100644
--- a/WWW/Library/Implementation/HTAAUtil.h
+++ b/WWW/Library/Implementation/HTAAUtil.h
@@ -328,7 +328,6 @@ Header Line Reader
 */
 PUBLIC void HTAA_setupReader PARAMS((char *     start_of_headers,
                                      int        length,
-				     void *	handle,
                                      int        soc));
 
 
diff --git a/WWW/Library/Implementation/HTFormat.c b/WWW/Library/Implementation/HTFormat.c
index cdd2fa9b..db0b59c1 100644
--- a/WWW/Library/Implementation/HTFormat.c
+++ b/WWW/Library/Implementation/HTFormat.c
@@ -48,6 +48,7 @@ PUBLIC long int HTMaxBytes  = 0;	/* No effective limit */
 
 #include <LYexit.h>
 #include <LYUtils.h>
+#include <GridText.h>
 #include <LYGlobalDefs.h>
 #include <LYLeaks.h>
 
@@ -577,6 +578,11 @@ PUBLIC int HTCopy ARGS4(
 
 	(*targetClass.put_block)(sink, input_buffer, status);
 
+#ifdef DISP_PARTIAL
+	if (display_partial)
+	    HText_pageDisplay(Newline,"");
+#endif /* DISP_PARTIAL */
+
 	bytes += status;
 	if (anchor && anchor->content_length > 0)
 	    sprintf(line, "Read %d of %d bytes of data.",
@@ -637,6 +643,11 @@ PUBLIC int HTFileCopy ARGS2(
 	}
 	(*targetClass.put_block)(sink, input_buffer, status);
 
+#ifdef DISP_PARTIAL
+	if (display_partial)
+	    HText_pageDisplay(Newline,"");
+#endif /* DISP_PARTIAL */
+
 	bytes += status;
 	if (nreads >= 100) {
 	    /*
@@ -726,6 +737,11 @@ PRIVATE int HTGzFileCopy ARGS2(
 	}
 	(*targetClass.put_block)(sink, input_buffer, status);
 
+#ifdef DISP_PARTIAL
+	if (display_partial)
+	    HText_pageDisplay(Newline,"");
+#endif /* DISP_PARTIAL */
+
 	bytes += status;
 	if (nreads >= 100) {
 	    /*
diff --git a/WWW/Library/Implementation/HTPlain.c b/WWW/Library/Implementation/HTPlain.c
index 363ad9e3..df6cba9a 100644
--- a/WWW/Library/Implementation/HTPlain.c
+++ b/WWW/Library/Implementation/HTPlain.c
@@ -337,7 +337,7 @@ PRIVATE void HTPlain_write ARGS3(HTStream *, me, CONST char*, s, int, l)
 	}
 
 	if (me->T.trans_to_uni &&
-	    (code >= 127 ||
+	    (code >= LYlowest_eightbit[me->inUCLYhndl] ||
 	     (code < 32 && code != 0 &&
 	     me->T.trans_C0_to_uni))) {
 		/*
diff --git a/WWW/Library/Implementation/HTTP.c b/WWW/Library/Implementation/HTTP.c
index c2e48411..870f35b1 100644
--- a/WWW/Library/Implementation/HTTP.c
+++ b/WWW/Library/Implementation/HTTP.c
@@ -33,6 +33,7 @@
 #include <HTAABrow.h>
 
 #include <LYGlobalDefs.h>
+#include <GridText.h>
 #include <LYStrings.h>
 #include <LYLeaks.h>
 
@@ -690,6 +691,10 @@ try_again:
 		goto clean_up;
 	    }
 	}
+#ifdef DISP_PARTIAL
+	else if (display_partial)
+	    HText_pageDisplay(Newline,"");
+#endif /* DISP_PARTIAL */
 
 	bytes_already_read += status;
 	sprintf (line, "Read %d bytes of data.", bytes_already_read);
@@ -1462,8 +1467,7 @@ Cookie2_continuation:
 		 */
 		if (show_401)
 		    break;
-		if (HTAA_shouldRetryWithAuth(start_of_data, length,
-					     (void *)handle, s, NO)) {
+		if (HTAA_shouldRetryWithAuth(start_of_data, length, s, NO)) {
 
 		    HTTP_NETCLOSE(s, handle);
 		    if (dump_output_immediately && !authentication_info[0]) {
@@ -1512,8 +1516,7 @@ Cookie2_continuation:
 		 */
 		if (!using_proxy || show_407)
 		    break;
-		if (HTAA_shouldRetryWithAuth(start_of_data, length,
-					     (void *)handle, s, YES)) {
+		if (HTAA_shouldRetryWithAuth(start_of_data, length, s, YES)) {
 
 		    HTTP_NETCLOSE(s, handle);
 		    if (dump_output_immediately && !proxyauth_info[0]) {
diff --git a/WWW/Library/Implementation/HTUtils.h b/WWW/Library/Implementation/HTUtils.h
index fa3677d2..68032dab 100644
--- a/WWW/Library/Implementation/HTUtils.h
+++ b/WWW/Library/Implementation/HTUtils.h
@@ -121,9 +121,6 @@ Debug message control.
 #define PROGRESS(str) /* nothing for now */
 #endif
 
-#define CTRACE if(TRACE)fprintf
-#define tfp stderr
-
 /*
 
   ERROR TYPE
@@ -377,6 +374,11 @@ The local equivalents of CR and LF
 #define LF   FROMASCII('\012')  /* ASCII line feed LOCAL EQUIVALENT */
 #define CR   FROMASCII('\015')  /* Will be converted to ^M for transmission */
 
+#define CTRACE if(TRACE)fprintf
+#define tfp TraceFP()
+
+extern FILE *TraceFP NOPARAMS;
+
 #endif /* HTUTILS_H */
 
 /*
diff --git a/WWW/Library/Implementation/SGML.c b/WWW/Library/Implementation/SGML.c
index 9c2323cc..66c515f3 100644
--- a/WWW/Library/Implementation/SGML.c
+++ b/WWW/Library/Implementation/SGML.c
@@ -4,9 +4,9 @@
 **	This module implements an HTStream object. To parse an
 **	SGML file, create this object which is a parser. The object
 **	is (currently) created by being passed a DTD structure,
-**	and a target HTStructured oject at which to throw the parsed stuff.
+**	and a target HTStructured object at which to throw the parsed stuff.
 **
-**	 6 Feb 93  Binary seraches used. Intreface modified.
+**	 6 Feb 93  Binary searches used. Interface modified.
 */
 
 #include <HTUtils.h>
@@ -31,6 +31,7 @@
 #include <HTChunk.h>
 
 #include <LYCharSets.h>
+#include <LYStrings.h>
 #include <LYLeaks.h>
 
 #define INVALID (-1)
@@ -56,7 +57,7 @@ extern int LYlowest_eightbit[];
 
 /*		Element Stack
 **		-------------
-**	This allows us to return down the stack reselcting styles.
+**	This allows us to return down the stack reselecting styles.
 **	As we return, attribute values will be garbage in general.
 */
 typedef struct _HTElement HTElement;
@@ -326,7 +327,7 @@ PRIVATE void handle_attribute_value ARGS2(
 **  Translate some Unicodes to Lynx special codes and output them.
 **  Special codes - ones those output depend on parsing.
 **
-**  Additional issue, like handling bidirectional text if nesseccery
+**  Additional issue, like handling bidirectional text if necessary
 **  may be called from here:  zwnj (8204), zwj (8205), lrm (8206), rlm (8207)
 **  - currently they are passed to def7_uni.tbl as regular characters.
 **
@@ -411,9 +412,6 @@ PRIVATE void handle_entity ARGS2(
     long uck;
     CONST char *p;
     CONST char *s = context->string->data;
-#ifdef NOTUSED_FOTEMODS
-    int high, low, i, diff;
-#endif
 
 
     /*
@@ -467,78 +465,26 @@ PRIVATE void handle_entity ARGS2(
 	    FoundEntity = TRUE;
 	    return;
 	}
-#ifdef NOTUSED_FOTEMODS
 	/*
-	**  If the value is greater than 255 and we do not
-	**  have the "7-bit approximations" as our output
-	**  character set (in which case we did it already)
-	**  seek a translation for that. - FM
+	**  Ignore zwnj (8204) and zwj (8205), if we get to here.
+	**  Note that zwnj may have been handled as <WBR>
+	**  by the calling function. - FM
 	*/
-	if ((chk = ((code > 255) &&
-		    context->outUCLYhndl !=
-				   UCGetLYhndl_byMIME("us-ascii"))) &&
-	    (uck = UCTransUniChar(code,
-				   UCGetLYhndl_byMIME("us-ascii")))>= 32 &&
-	    uck < 127) {
-	    /*
-	    **	Got an ASCII character (yippey). - FM
-	    */
-	    PUTC(((char)(uck & 0xff)));
-	    FoundEntity = TRUE;
-	    return;
-	} else if ((chk && uck == -4) &&
-		   (uck = UCTransUniCharStr(replace_buf,
-					    60, code,
-					    UCGetLYhndl_byMIME("us-ascii"),
-					    0) >= 0)) {
-	    /*
-	    **	Got a replacement string (yippey). - FM
-	    */
-	    for (p = replace_buf; *p; p++)
-		PUTC(*p);
+	if (!strcmp(s, "zwnj") ||
+	    !strcmp(s, "zwj")) {
+	    CTRACE(tfp, "handle_entity: Ignoring '%s'.\n", s);
 	    FoundEntity = TRUE;
 	    return;
 	}
-    }
-    /*
-    **	Ignore zwnj (8204) and zwj (8205), if we get to here.
-    **	Note that zwnj may have been handled as <WBR>
-    **	by the calling function. - FM
-    */
-    if (!strcmp(s, "zwnj") ||
-	!strcmp(s, "zwj")) {
-	CTRACE(tfp, "handle_entity: Ignoring '%s'.\n", s);
-	FoundEntity = TRUE;
-	return;
-    }
-
-    /*
-    **	Ignore lrm (8206), and rln (8207), if we get to here. - FM
-    */
-    if (!strcmp(s, "lrm") ||
-	!strcmp(s, "rlm")) {
-	CTRACE(tfp, "handle_entity: Ignoring '%s'.\n", s);
-	FoundEntity = TRUE;
-	return;
-    }
-
-    /*
-    **	We haven't succeeded yet, so try the old LYCharSets
-    **	arrays for translation strings. - FM
-    */
-    for (low = 0, high = context->dtd->number_of_entities;
-	 high > low;
-	 diff < 0 ? (low = i+1) : (high = i)) {  /* Binary search */
-	i = (low + (high-low)/2);
-	diff = strcmp(entities[i], s);	/* Case sensitive! */
-	if (diff == 0) {		/* success: found it */
-	    for (p = LYCharSets[context->outUCLYhndl][i]; *p; p++) {
-		PUTC(*p);
-	    }
+	/*
+	**  Ignore lrm (8206), and rln (8207), if we get to here. - FM
+	*/
+	if (!strcmp(s, "lrm") ||
+	    !strcmp(s, "rlm")) {
+	    CTRACE(tfp, "handle_entity: Ignoring '%s'.\n", s);
 	    FoundEntity = TRUE;
 	    return;
 	}
-#endif
     }
 
     /*
@@ -1008,7 +954,7 @@ PRIVATE void start_element ARGS1(
 **		------------------------
 **
 ** On entry,
-**	dtd	points to dtd structire including valid tag list
+**	dtd	points to dtd structure including valid tag list
 **	string	points to name of tag in question
 **
 ** On exit,
@@ -1269,7 +1215,7 @@ PRIVATE void SGML_character ARGS2(
     **	to Unicode, try that now. - FM
     */
     if (context->T.trans_to_uni &&
-	((unsign_c >= 127) ||
+	((unsign_c >= LYlowest_eightbit[context->inUCLYhndl]) ||
 	 (unsign_c < 32 && unsign_c != 0 &&
 	  context->T.trans_C0_to_uni))) {
 	/*
@@ -1364,7 +1310,7 @@ top0a:
 **  which unsign_c has been defined), and from below
 **  when we are recycling a character (e.g., because
 **  it terminated an entity but is not the standard
-**  semi-colon).  The chararcter will already have
+**  semi-colon).  The character will already have
 **  been put through the Unicode conversions. - FM
 */
 top1:
@@ -1512,7 +1458,7 @@ top1:
 					    0) >= 0)) {
 	    /*
 	    **	Got a replacement string.
-	    **	No further tests for valididy - assume that whoever
+	    **	No further tests for validity - assume that whoever
 	    **	defined replacement strings knew what she was doing. - KW
 	    */
 	    for (p = replace_buf; *p; p++)
@@ -1523,7 +1469,7 @@ top1:
 	} else if (context->T.output_utf8 && PUTUTF8(clong)) {
 	    ; /* do nothing more */
 	/*
-	**  If it's any other (> 160) 8-bit chararcter, and
+	**  If it's any other (> 160) 8-bit character, and
 	**  we have not set HTPassEightBitRaw nor HTCJK, nor
 	**  have the "ISO Latin 1" character set selected,
 	**  back translate for our character set. - FM
@@ -2027,6 +1973,7 @@ top1:
 		    */
 		    for (p = replace_buf; *p; p++)
 			PUTC(*p);
+#endif /* NOTUSED_FOTEMODS */
 		/*
 		**  Ignore 8205 (zwj),
 		**  8206 (lrm), and 8207 (rln), if we get to here. - FM
@@ -2050,7 +1997,6 @@ top1:
 		    if (c != ';')
 			goto top1;
 		    break;
-#endif /* NOTUSED_FOTEMODS */
 		/*
 		**  Show the numeric entity if we get to here
 		**  and the value:
@@ -3199,7 +3145,7 @@ PUBLIC HTStream* SGML_new  ARGS3(
 **	Added 24-Mar-96 by FM, based on:
 **
 ////////////////////////////////////////////////////////////////////////
-Copyright (c) 1993 Electrotechnical Laboratry (ETL)
+Copyright (c) 1993 Electrotechnical Laboratory (ETL)
 
 Permission to use, copy, modify, and distribute this material
 for any purpose and without fee is hereby granted, provided
diff --git a/WWW/Library/Implementation/tcp.h b/WWW/Library/Implementation/tcp.h
index ccd4ccf8..e6f8e2de 100644
--- a/WWW/Library/Implementation/tcp.h
+++ b/WWW/Library/Implementation/tcp.h
@@ -294,7 +294,6 @@ extern int socket_ioctl();
 */
 extern int multinet_accept();
 extern int multinet_bind();
-extern int bzero();
 extern int multinet_connect();
 extern int multinet_gethostname();
 extern int multinet_getsockname();
diff --git a/config.hin b/config.hin
index 594dc41e..bbadc639 100644
--- a/config.hin
+++ b/config.hin
@@ -15,6 +15,7 @@
 #undef DECL_STRSTR
 #undef DECL_SYS_ERRLIST
 #undef DIRED_SUPPORT		/* AC_ARG_WITH(dired) */
+#undef DISP_PARTIAL		/* CF_ARG_ENABLE(partial) */
 #undef DONT_TRACK_INTERNAL_LINKS /* CF_ARG_DISABLE(internal-links) */
 #undef EXP_8BIT_TOUPPER		/* AC_ARG_WITH(8bit-toupper) */
 #undef EXP_CHARTRANS_AUTOSWITCH	/* AC_ARG_WITH(font-switch) */
diff --git a/configure b/configure
index 04b48c44..3dd710f2 100755
--- a/configure
+++ b/configure
@@ -195,10 +195,11 @@ Basic Configuration Options:
 Miscellaneous Options:
   --enable-8bit-toupper   use experimental 8-bit case-conversion (default: off)
   --enable-color-style    use optional/experimental color style (default: off)
+  --enable-partial        use experimental partial-display logic (default: off)
   --enable-default-colors enable use of default-colors (ncurses/slang) (default: off)
-  --disable-extended-dtd  disable extended HTML DTD logic (default: on)
 EOF
 cat <<EOF
+  --disable-extended-dtd  disable extended HTML DTD logic (default: on)
   --enable-externs        use external commands (default: off)
   --enable-font-switch    use Linux setfont for character-translation (default: off)
   --enable-internal-links  handle following links to same doc differently (default: off)
@@ -210,9 +211,9 @@ Directory Editor Options:
   --disable-dired-archive  disable dearchiving commands (default: on)
   --disable-dired-override disable private keymaps (default: on)
   --disable-dired-permit  disable chmod/attrib commands (default: on)
-  --disable-dired-xpermit disable chmod/attrib commands (default: on)
 EOF
 cat <<EOF
+  --disable-dired-xpermit disable chmod/attrib commands (default: on)
   --disable-dired-tar     disable "tar" command (default: on)
   --disable-dired-uudecode disable "uudecode" command (default: on)
   --disable-dired-zip     disable "zip", "unzip"  commands (default: on)
@@ -585,7 +586,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:589: checking host system type" >&5
+echo "configure:590: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
@@ -610,7 +611,7 @@ echo "$ac_t""$host" 1>&6
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:614: checking for $ac_word" >&5
+echo "configure:615: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -639,7 +640,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:643: checking for $ac_word" >&5
+echo "configure:644: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -687,7 +688,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:691: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:692: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -697,11 +698,11 @@ ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS
 cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext <<EOF
-#line 701 "configure"
+#line 702 "configure"
 #include "confdefs.h"
 main(){return(0);}
 EOF
-if { (eval echo configure:705: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:706: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -721,12 +722,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:725: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:726: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:730: checking whether we are using GNU C" >&5
+echo "configure:731: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -735,7 +736,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:739: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:740: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -750,7 +751,7 @@ if test $ac_cv_prog_gcc = yes; then
   ac_save_CFLAGS="$CFLAGS"
   CFLAGS=
   echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:754: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:755: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -778,7 +779,7 @@ else
 fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:782: checking how to run the C preprocessor" >&5
+echo "configure:783: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -793,13 +794,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 797 "configure"
+#line 798 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:803: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:804: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -810,13 +811,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 814 "configure"
+#line 815 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:820: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:821: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -841,7 +842,7 @@ echo "$ac_t""$CPP" 1>&6
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:845: checking for $ac_word" >&5
+echo "configure:846: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -868,7 +869,7 @@ else
 fi
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:872: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:873: checking whether ${MAKE-make} sets \${MAKE}" >&5
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -896,7 +897,7 @@ fi
 
 
 echo $ac_n "checking for style of include in makefiles""... $ac_c" 1>&6
-echo "configure:900: checking for style of include in makefiles" >&5
+echo "configure:901: checking for style of include in makefiles" >&5
 
 make_include_left=""
 make_include_right=""
@@ -957,7 +958,7 @@ echo "$ac_t""${make_include_left}file${make_include_right}" 1>&6
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:961: checking for a BSD compatible install" >&5
+echo "configure:962: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1011,7 +1012,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1015: checking for $ac_word" >&5
+echo "configure:1016: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LINT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1045,7 +1046,7 @@ done
 
 
 echo $ac_n "checking if you want to see long compiling messages""... $ac_c" 1>&6
-echo "configure:1049: checking if you want to see long compiling messages" >&5
+echo "configure:1050: checking if you want to see long compiling messages" >&5
 
 # Check whether --enable-echo or --disable-echo was given.
 if test "${enable_echo+set}" = set; then
@@ -1085,7 +1086,7 @@ echo "$ac_t""$enableval" 1>&6
 
 
 echo $ac_n "checking if you want to check memory-leaks""... $ac_c" 1>&6
-echo "configure:1089: checking if you want to check memory-leaks" >&5
+echo "configure:1090: checking if you want to check memory-leaks" >&5
 
 # Check whether --enable-find-leaks or --disable-find-leaks was given.
 if test "${enable_find_leaks+set}" = set; then
@@ -1109,7 +1110,7 @@ EOF
 
 
 echo $ac_n "checking if you want to enable debug-code""... $ac_c" 1>&6
-echo "configure:1113: checking if you want to enable debug-code" >&5
+echo "configure:1114: checking if you want to enable debug-code" >&5
 
 # Check whether --enable-debug or --disable-debug was given.
 if test "${enable_debug+set}" = set; then
@@ -1154,7 +1155,7 @@ fi
 if test -n "$GCC"
 then
 echo $ac_n "checking if you want to turn on gcc warnings""... $ac_c" 1>&6
-echo "configure:1158: checking if you want to turn on gcc warnings" >&5
+echo "configure:1159: checking if you want to turn on gcc warnings" >&5
 
 # Check whether --enable-warnings or --disable-warnings was given.
 if test "${enable_warnings+set}" = set; then
@@ -1194,9 +1195,9 @@ EOF
 if test -n "$GCC"
 then
 	echo "checking for gcc __attribute__ directives" 1>&6
-echo "configure:1198: checking for gcc __attribute__ directives" >&5
+echo "configure:1199: checking for gcc __attribute__ directives" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 1200 "configure"
+#line 1201 "configure"
 #include "confdefs.h"
 #include "conftest.h"
 #include "conftest.i"
@@ -1234,7 +1235,7 @@ EOF
 EOF
 			;;
 		esac
-		if { (eval echo configure:1238: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+		if { (eval echo configure:1239: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
 			test -n "$verbose" && echo "$ac_t""... $cf_attribute" 1>&6
 			cat conftest.h >>confdefs.h
 #		else
@@ -1251,11 +1252,11 @@ fi
 if test -n "$GCC"
 then
 		cat > conftest.$ac_ext <<EOF
-#line 1255 "configure"
+#line 1256 "configure"
 int main(int argc, char *argv[]) { return argv[argc-1] == 0; }
 EOF
 		echo "checking for gcc warning options" 1>&6
-echo "configure:1259: checking for gcc warning options" >&5
+echo "configure:1260: checking for gcc warning options" >&5
 	cf_save_CFLAGS="$CFLAGS"
 	EXTRA_CFLAGS="-W -Wall"
 	cf_warn_CONST=""
@@ -1273,7 +1274,7 @@ echo "configure:1259: checking for gcc warning options" >&5
 		Wstrict-prototypes $cf_warn_CONST
 	do
 		CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-		if { (eval echo configure:1277: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+		if { (eval echo configure:1278: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
 			test -n "$verbose" && echo "$ac_t""... -$cf_opt" 1>&6
 			EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
 			test "$cf_opt" = Wcast-qual && EXTRA_CFLAGS="$EXTRA_CFLAGS -DXTSTRINGDEFINES"
@@ -1291,7 +1292,7 @@ fi
 
 
 echo $ac_n "checking if you want full utility pathnames""... $ac_c" 1>&6
-echo "configure:1295: checking if you want full utility pathnames" >&5
+echo "configure:1296: checking if you want full utility pathnames" >&5
 
 # Check whether --enable-full-paths or --disable-full-paths was given.
 if test "${enable_full_paths+set}" = set; then
@@ -1312,7 +1313,7 @@ echo "$ac_t""$with_full_paths" 1>&6
 
 
 echo $ac_n "checking for system mailer""... $ac_c" 1>&6
-echo "configure:1316: checking for system mailer" >&5
+echo "configure:1317: checking for system mailer" >&5
 if eval "test \"`echo '$''{'cf_cv_SYSTEM_MAIL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1339,7 +1340,7 @@ EOF
 
 
 echo $ac_n "checking system mail flags""... $ac_c" 1>&6
-echo "configure:1343: checking system mail flags" >&5
+echo "configure:1344: checking system mail flags" >&5
 if eval "test \"`echo '$''{'cf_cv_system_mail_flags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1367,7 +1368,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "chmod", so it can be a program name with args.
 set dummy chmod; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1371: checking for $ac_word" >&5
+echo "configure:1372: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_CHMOD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1398,7 +1399,7 @@ fi
 
 else
 	echo $ac_n "checking for chmod""... $ac_c" 1>&6
-echo "configure:1402: checking for chmod" >&5
+echo "configure:1403: checking for chmod" >&5
 	echo "$ac_t""$CHMOD" 1>&6
 fi
 
@@ -1432,7 +1433,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "compress", so it can be a program name with args.
 set dummy compress; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1436: checking for $ac_word" >&5
+echo "configure:1437: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1463,7 +1464,7 @@ fi
 
 else
 	echo $ac_n "checking for compress""... $ac_c" 1>&6
-echo "configure:1467: checking for compress" >&5
+echo "configure:1468: checking for compress" >&5
 	echo "$ac_t""$COMPRESS" 1>&6
 fi
 
@@ -1497,7 +1498,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "cp", so it can be a program name with args.
 set dummy cp; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1501: checking for $ac_word" >&5
+echo "configure:1502: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COPY'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1528,7 +1529,7 @@ fi
 
 else
 	echo $ac_n "checking for cp""... $ac_c" 1>&6
-echo "configure:1532: checking for cp" >&5
+echo "configure:1533: checking for cp" >&5
 	echo "$ac_t""$COPY" 1>&6
 fi
 
@@ -1562,7 +1563,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gzip", so it can be a program name with args.
 set dummy gzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1566: checking for $ac_word" >&5
+echo "configure:1567: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1593,7 +1594,7 @@ fi
 
 else
 	echo $ac_n "checking for gzip""... $ac_c" 1>&6
-echo "configure:1597: checking for gzip" >&5
+echo "configure:1598: checking for gzip" >&5
 	echo "$ac_t""$GZIP" 1>&6
 fi
 
@@ -1627,7 +1628,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mkdir", so it can be a program name with args.
 set dummy mkdir; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1631: checking for $ac_word" >&5
+echo "configure:1632: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MKDIR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1658,7 +1659,7 @@ fi
 
 else
 	echo $ac_n "checking for mkdir""... $ac_c" 1>&6
-echo "configure:1662: checking for mkdir" >&5
+echo "configure:1663: checking for mkdir" >&5
 	echo "$ac_t""$MKDIR" 1>&6
 fi
 
@@ -1692,7 +1693,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mv", so it can be a program name with args.
 set dummy mv; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1696: checking for $ac_word" >&5
+echo "configure:1697: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MV'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1723,7 +1724,7 @@ fi
 
 else
 	echo $ac_n "checking for mv""... $ac_c" 1>&6
-echo "configure:1727: checking for mv" >&5
+echo "configure:1728: checking for mv" >&5
 	echo "$ac_t""$MV" 1>&6
 fi
 
@@ -1757,7 +1758,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "rm", so it can be a program name with args.
 set dummy rm; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1761: checking for $ac_word" >&5
+echo "configure:1762: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_RM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1788,7 +1789,7 @@ fi
 
 else
 	echo $ac_n "checking for rm""... $ac_c" 1>&6
-echo "configure:1792: checking for rm" >&5
+echo "configure:1793: checking for rm" >&5
 	echo "$ac_t""$RM" 1>&6
 fi
 
@@ -1822,7 +1823,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "tar", so it can be a program name with args.
 set dummy tar; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1826: checking for $ac_word" >&5
+echo "configure:1827: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1853,7 +1854,7 @@ fi
 
 else
 	echo $ac_n "checking for tar""... $ac_c" 1>&6
-echo "configure:1857: checking for tar" >&5
+echo "configure:1858: checking for tar" >&5
 	echo "$ac_t""$TAR" 1>&6
 fi
 
@@ -1887,7 +1888,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "touch", so it can be a program name with args.
 set dummy touch; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1891: checking for $ac_word" >&5
+echo "configure:1892: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TOUCH'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1918,7 +1919,7 @@ fi
 
 else
 	echo $ac_n "checking for touch""... $ac_c" 1>&6
-echo "configure:1922: checking for touch" >&5
+echo "configure:1923: checking for touch" >&5
 	echo "$ac_t""$TOUCH" 1>&6
 fi
 
@@ -1952,7 +1953,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gunzip", so it can be a program name with args.
 set dummy gunzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1956: checking for $ac_word" >&5
+echo "configure:1957: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNCOMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1983,7 +1984,7 @@ fi
 
 else
 	echo $ac_n "checking for gunzip""... $ac_c" 1>&6
-echo "configure:1987: checking for gunzip" >&5
+echo "configure:1988: checking for gunzip" >&5
 	echo "$ac_t""$UNCOMPRESS" 1>&6
 fi
 
@@ -2017,7 +2018,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "unzip", so it can be a program name with args.
 set dummy unzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2021: checking for $ac_word" >&5
+echo "configure:2022: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2048,7 +2049,7 @@ fi
 
 else
 	echo $ac_n "checking for unzip""... $ac_c" 1>&6
-echo "configure:2052: checking for unzip" >&5
+echo "configure:2053: checking for unzip" >&5
 	echo "$ac_t""$UNZIP" 1>&6
 fi
 
@@ -2082,7 +2083,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "uudecode", so it can be a program name with args.
 set dummy uudecode; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2086: checking for $ac_word" >&5
+echo "configure:2087: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UUDECODE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2113,7 +2114,7 @@ fi
 
 else
 	echo $ac_n "checking for uudecode""... $ac_c" 1>&6
-echo "configure:2117: checking for uudecode" >&5
+echo "configure:2118: checking for uudecode" >&5
 	echo "$ac_t""$UUDECODE" 1>&6
 fi
 
@@ -2147,7 +2148,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zcat", so it can be a program name with args.
 set dummy zcat; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2151: checking for $ac_word" >&5
+echo "configure:2152: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZCAT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2178,7 +2179,7 @@ fi
 
 else
 	echo $ac_n "checking for zcat""... $ac_c" 1>&6
-echo "configure:2182: checking for zcat" >&5
+echo "configure:2183: checking for zcat" >&5
 	echo "$ac_t""$ZCAT" 1>&6
 fi
 
@@ -2212,7 +2213,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zip", so it can be a program name with args.
 set dummy zip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2216: checking for $ac_word" >&5
+echo "configure:2217: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2243,7 +2244,7 @@ fi
 
 else
 	echo $ac_n "checking for zip""... $ac_c" 1>&6
-echo "configure:2247: checking for zip" >&5
+echo "configure:2248: checking for zip" >&5
 	echo "$ac_t""$ZIP" 1>&6
 fi
 
@@ -2296,7 +2297,7 @@ EOF
 if test -z "$GCC" ; then
 	
 echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:2300: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "configure:2301: checking for ${CC-cc} option to accept ANSI C" >&5
 if eval "test \"`echo '$''{'cf_cv_ansi_cc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2320,7 +2321,7 @@ for cf_arg in "-DCC_HAS_PROTOS" \
 do
 	CFLAGS="$cf_save_CFLAGS $cf_arg"
 	cat > conftest.$ac_ext <<EOF
-#line 2324 "configure"
+#line 2325 "configure"
 #include "confdefs.h"
 
 #ifndef CC_HAS_PROTOS
@@ -2336,7 +2337,7 @@ int main() {
 	struct s2 {int (*f) (double a);};
 ; return 0; }
 EOF
-if { (eval echo configure:2340: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2341: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ansi_cc="$cf_arg"; break
 else
@@ -2364,12 +2365,12 @@ fi
 
 fi
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:2368: checking for working const" >&5
+echo "configure:2369: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2373 "configure"
+#line 2374 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -2418,7 +2419,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:2422: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2423: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -2459,7 +2460,7 @@ clix*)
 	# contributed by Alex Matulich (matuli_a@marlin.navsea.navy.mil) also
 	# references -lmalloc and -lbsd.
 	echo $ac_n "checking for strcmp in -lc_s""... $ac_c" 1>&6
-echo "configure:2463: checking for strcmp in -lc_s" >&5
+echo "configure:2464: checking for strcmp in -lc_s" >&5
 ac_lib_var=`echo c_s'_'strcmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2467,7 +2468,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2471 "configure"
+#line 2472 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2478,7 +2479,7 @@ int main() {
 strcmp()
 ; return 0; }
 EOF
-if { (eval echo configure:2482: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2567,7 +2568,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2571: checking for $ac_word" >&5
+echo "configure:2572: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2611,17 +2612,17 @@ sony-newsos*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2615: checking for $ac_hdr" >&5
+echo "configure:2616: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2620 "configure"
+#line 2621 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2625: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2626: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2665,17 +2666,17 @@ ultrix*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2669: checking for $ac_hdr" >&5
+echo "configure:2670: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2674 "configure"
+#line 2675 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2679: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2680: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2709,7 +2710,7 @@ esac
 
 cf_test_netlibs=no
 echo $ac_n "checking for network libraries""... $ac_c" 1>&6
-echo "configure:2713: checking for network libraries" >&5
+echo "configure:2714: checking for network libraries" >&5
 if eval "test \"`echo '$''{'cf_cv_netlibs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2720,12 +2721,12 @@ cf_test_netlibs=yes
 for ac_func in gethostname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2724: checking for $ac_func" >&5
+echo "configure:2725: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2729 "configure"
+#line 2730 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2748,7 +2749,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2753: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -2771,7 +2772,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostname in -lnsl""... $ac_c" 1>&6
-echo "configure:2775: checking for gethostname in -lnsl" >&5
+echo "configure:2776: checking for gethostname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2779,7 +2780,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2783 "configure"
+#line 2784 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2790,7 +2791,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:2794: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2795: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2823,7 +2824,7 @@ else
 	
 		
 echo $ac_n "checking for gethostname in -lsocket""... $ac_c" 1>&6
-echo "configure:2827: checking for gethostname in -lsocket" >&5
+echo "configure:2828: checking for gethostname in -lsocket" >&5
 ac_lib_var=`echo socket'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2831,7 +2832,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2835 "configure"
+#line 2836 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2842,7 +2843,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:2846: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2886,21 +2887,21 @@ done
 # FIXME:  sequent needs this library (i.e., -lsocket -linet -lnsl), but
 # I don't know the entrypoints - 97/7/22 TD
 echo $ac_n "checking for -linet""... $ac_c" 1>&6
-echo "configure:2890: checking for -linet" >&5
+echo "configure:2891: checking for -linet" >&5
 if eval "test \"`echo '$''{'ac_cv_lib_inet'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LIBS="$LIBS"
 LIBS="-linet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2897 "configure"
+#line 2898 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:2904: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2905: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_lib_inet=yes
 else
@@ -2923,12 +2924,12 @@ if test "$ac_cv_func_lsocket" != no ; then
 for ac_func in socket
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2927: checking for $ac_func" >&5
+echo "configure:2928: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2932 "configure"
+#line 2933 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2951,7 +2952,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2955: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2956: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -2974,7 +2975,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:2978: checking for socket in -lsocket" >&5
+echo "configure:2979: checking for socket in -lsocket" >&5
 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2982,7 +2983,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2986 "configure"
+#line 2987 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2993,7 +2994,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:2997: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2998: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3026,7 +3027,7 @@ else
 	
 		
 echo $ac_n "checking for socket in -lbsd""... $ac_c" 1>&6
-echo "configure:3030: checking for socket in -lbsd" >&5
+echo "configure:3031: checking for socket in -lbsd" >&5
 ac_lib_var=`echo bsd'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3034,7 +3035,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3038 "configure"
+#line 3039 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3045,7 +3046,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:3049: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3050: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3090,12 +3091,12 @@ fi
 for ac_func in gethostbyname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3094: checking for $ac_func" >&5
+echo "configure:3095: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3099 "configure"
+#line 3100 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3118,7 +3119,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3122: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3123: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3141,7 +3142,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:3145: checking for gethostbyname in -lnsl" >&5
+echo "configure:3146: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3149,7 +3150,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3153 "configure"
+#line 3154 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3160,7 +3161,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:3164: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3201,12 +3202,12 @@ done
 for ac_func in strcasecmp
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3205: checking for $ac_func" >&5
+echo "configure:3206: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3210 "configure"
+#line 3211 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -3229,7 +3230,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3233: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -3252,7 +3253,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for strcasecmp in -lresolv""... $ac_c" 1>&6
-echo "configure:3256: checking for strcasecmp in -lresolv" >&5
+echo "configure:3257: checking for strcasecmp in -lresolv" >&5
 ac_lib_var=`echo resolv'_'strcasecmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3260,7 +3261,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3264 "configure"
+#line 3265 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3271,7 +3272,7 @@ int main() {
 strcasecmp()
 ; return 0; }
 EOF
-if { (eval echo configure:3275: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3276: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3316,7 +3317,7 @@ test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&6
 
 
 echo $ac_n "checking for screen type""... $ac_c" 1>&6
-echo "configure:3320: checking for screen type" >&5
+echo "configure:3321: checking for screen type" >&5
 if eval "test \"`echo '$''{'cf_cv_screen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3351,12 +3352,12 @@ case $cf_cv_screen in
 curses)
 	
 echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:3355: checking for initscr" >&5
+echo "configure:3356: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3360 "configure"
+#line 3361 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -3379,7 +3380,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3384: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -3400,7 +3401,7 @@ else
 case $host_os in #(vi
 freebsd*) #(vi
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:3404: checking for tgoto in -lmytinfo" >&5
+echo "configure:3405: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3408,7 +3409,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3412 "configure"
+#line 3413 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3419,7 +3420,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:3423: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3424: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3442,7 +3443,7 @@ fi
 	;;
 hpux10.*)
 	echo $ac_n "checking for initscr in -lcur_colr""... $ac_c" 1>&6
-echo "configure:3446: checking for initscr in -lcur_colr" >&5
+echo "configure:3447: checking for initscr in -lcur_colr" >&5
 ac_lib_var=`echo cur_colr'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3450,7 +3451,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcur_colr  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3454 "configure"
+#line 3455 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3461,7 +3462,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3465: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3466: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3485,7 +3486,7 @@ else
   echo "$ac_t""no" 1>&6
 
 	echo $ac_n "checking for initscr in -lHcurses""... $ac_c" 1>&6
-echo "configure:3489: checking for initscr in -lHcurses" >&5
+echo "configure:3490: checking for initscr in -lHcurses" >&5
 ac_lib_var=`echo Hcurses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3493,7 +3494,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lHcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3497 "configure"
+#line 3498 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3504,7 +3505,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3508: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3509: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3550,12 +3551,12 @@ if test ".$ac_cv_func_initscr" != .yes ; then
 	# Check for library containing tgoto.  Do this before curses library
 	# because it may be needed to link the test-case for initscr.
 	echo $ac_n "checking for tgoto""... $ac_c" 1>&6
-echo "configure:3554: checking for tgoto" >&5
+echo "configure:3555: checking for tgoto" >&5
 if eval "test \"`echo '$''{'ac_cv_func_tgoto'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3559 "configure"
+#line 3560 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char tgoto(); below.  */
@@ -3578,7 +3579,7 @@ tgoto();
 
 ; return 0; }
 EOF
-if { (eval echo configure:3582: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3583: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_tgoto=yes"
 else
@@ -3599,7 +3600,7 @@ else
 		for cf_term_lib in termcap termlib unknown
 		do
 			echo $ac_n "checking for tgoto in -l$cf_term_lib""... $ac_c" 1>&6
-echo "configure:3603: checking for tgoto in -l$cf_term_lib" >&5
+echo "configure:3604: checking for tgoto in -l$cf_term_lib" >&5
 ac_lib_var=`echo $cf_term_lib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3607,7 +3608,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_term_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3611 "configure"
+#line 3612 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3618,7 +3619,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:3622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3623: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3648,7 +3649,7 @@ fi
 	for cf_curs_lib in cursesX curses ncurses xcurses jcurses unknown
 	do
 		echo $ac_n "checking for initscr in -l$cf_curs_lib""... $ac_c" 1>&6
-echo "configure:3652: checking for initscr in -l$cf_curs_lib" >&5
+echo "configure:3653: checking for initscr in -l$cf_curs_lib" >&5
 ac_lib_var=`echo $cf_curs_lib'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3656,7 +3657,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_curs_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3660 "configure"
+#line 3661 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3667,7 +3668,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3671: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3672: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3693,16 +3694,16 @@ fi
 	LIBS="-l$cf_curs_lib $cf_save_LIBS"
 	if test "$cf_term_lib" = unknown ; then
 		echo $ac_n "checking if we can link with $cf_curs_lib library""... $ac_c" 1>&6
-echo "configure:3697: checking if we can link with $cf_curs_lib library" >&5
+echo "configure:3698: checking if we can link with $cf_curs_lib library" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 3699 "configure"
+#line 3700 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3706: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3707: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -3716,16 +3717,16 @@ rm -f conftest*
 		test $cf_result = no && { echo "configure: error: Cannot link curses library" 1>&2; exit 1; }
 	elif test "$cf_term_lib" != predefined ; then
 		echo $ac_n "checking if we need both $cf_curs_lib and $cf_term_lib libraries""... $ac_c" 1>&6
-echo "configure:3720: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+echo "configure:3721: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 3722 "configure"
+#line 3723 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:3729: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=no
 else
@@ -3735,14 +3736,14 @@ else
   
 			LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
 			cat > conftest.$ac_ext <<EOF
-#line 3739 "configure"
+#line 3740 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:3746: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3747: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -3764,14 +3765,14 @@ fi
 
 	
 echo $ac_n "checking for curses performance tradeoff""... $ac_c" 1>&6
-echo "configure:3768: checking for curses performance tradeoff" >&5
+echo "configure:3769: checking for curses performance tradeoff" >&5
 if eval "test \"`echo '$''{'cf_cv_curs_performance'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cf_cv_curs_performance=no
     cat > conftest.$ac_ext <<EOF
-#line 3775 "configure"
+#line 3776 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -3785,11 +3786,11 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:3789: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3790: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 3793 "configure"
+#line 3794 "configure"
 #include "confdefs.h"
 
 #define CURS_PERFORMANCE
@@ -3804,7 +3805,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:3808: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3809: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_curs_performance=yes
 else
@@ -3829,13 +3830,13 @@ EOF
 ncurses)
 	
 echo $ac_n "checking for ncurses header file""... $ac_c" 1>&6
-echo "configure:3833: checking for ncurses header file" >&5
+echo "configure:3834: checking for ncurses header file" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 3839 "configure"
+#line 3840 "configure"
 #include "confdefs.h"
 #include <curses.h>
 int main() {
@@ -3852,7 +3853,7 @@ make an error
 	
 ; return 0; }
 EOF
-if { (eval echo configure:3856: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3857: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_header=predefined
 else
@@ -3938,7 +3939,7 @@ done
 	;;
 esac
 echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:3942: checking for ncurses version" >&5
+echo "configure:3943: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3963,7 +3964,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:3967: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:3968: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -3972,7 +3973,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 3976 "configure"
+#line 3977 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -3995,7 +3996,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:3999: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4000: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -4020,7 +4021,7 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 cf_ncurses_LIBS=""
 cf_ncurses_SAVE="$LIBS"
 echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:4024: checking for Gpm_Open in -lgpm" >&5
+echo "configure:4025: checking for Gpm_Open in -lgpm" >&5
 ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4028,7 +4029,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4032 "configure"
+#line 4033 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4039,7 +4040,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:4043: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4044: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4055,7 +4056,7 @@ fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for initscr in -lgpm""... $ac_c" 1>&6
-echo "configure:4059: checking for initscr in -lgpm" >&5
+echo "configure:4060: checking for initscr in -lgpm" >&5
 ac_lib_var=`echo gpm'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4063,7 +4064,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4067 "configure"
+#line 4068 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4074,7 +4075,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4078: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4079: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4105,7 +4106,7 @@ freebsd*)
 	# This is only necessary if you are linking against an obsolete
 	# version of ncurses (but it should do no harm, since it's static).
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:4109: checking for tgoto in -lmytinfo" >&5
+echo "configure:4110: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4113,7 +4114,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4117 "configure"
+#line 4118 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4124,7 +4125,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4129: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4152,12 +4153,12 @@ LIBS="$cf_ncurses_LIBS $LIBS"
 	cf_cv_have_lib_ncurses=no
 	cf_libdir=""
 	echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:4156: checking for initscr" >&5
+echo "configure:4157: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4161 "configure"
+#line 4162 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -4180,7 +4181,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4184: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4185: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -4200,17 +4201,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for initscr in -lncurses""... $ac_c" 1>&6
-echo "configure:4204: checking for initscr in -lncurses" >&5
+echo "configure:4205: checking for initscr in -lncurses" >&5
 		LIBS="-lncurses $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 4207 "configure"
+#line 4208 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4215: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_ncurses=yes
@@ -4237,17 +4238,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/ncur
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lncurses in $cf_libdir""... $ac_c" 1>&6
-echo "configure:4241: checking for -lncurses in $cf_libdir" >&5
+echo "configure:4242: checking for -lncurses in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lncurses $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 4244 "configure"
+#line 4245 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4251: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4252: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_ncurses=yes
@@ -4279,7 +4280,7 @@ esac
 
 if test -n "$cf_ncurses_LIBS" ; then
 	echo $ac_n "checking if we can link ncurses without $cf_ncurses_LIBS""... $ac_c" 1>&6
-echo "configure:4283: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
+echo "configure:4284: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
 	cf_ncurses_SAVE="$LIBS"
 	for p in $cf_ncurses_LIBS ; do
 		q=`echo $LIBS | sed -e 's/'$p' //' -e 's/'$p'$//'`
@@ -4288,14 +4289,14 @@ echo "configure:4283: checking if we can link ncurses without $cf_ncurses_LIBS"
 		fi
 	done
 	cat > conftest.$ac_ext <<EOF
-#line 4292 "configure"
+#line 4293 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:4299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4300: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 else
@@ -4312,20 +4313,20 @@ fi
 slang)
 	
 echo $ac_n "checking for slang header file""... $ac_c" 1>&6
-echo "configure:4316: checking for slang header file" >&5
+echo "configure:4317: checking for slang header file" >&5
 if eval "test \"`echo '$''{'cf_cv_slang_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 4322 "configure"
+#line 4323 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 printf("%s\n", SLANG_VERSION)
 ; return 0; }
 EOF
-if { (eval echo configure:4329: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4330: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_slang_header=predefined
 else
@@ -4409,7 +4410,7 @@ cf_cv_lib_termcap=none
 # HP-UX 9.x terminfo has setupterm, but no tigetstr.
 if test "$termlib" = none; then
 	echo $ac_n "checking for tigetstr in -ltermlib""... $ac_c" 1>&6
-echo "configure:4413: checking for tigetstr in -ltermlib" >&5
+echo "configure:4414: checking for tigetstr in -ltermlib" >&5
 ac_lib_var=`echo termlib'_'tigetstr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4417,7 +4418,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermlib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4421 "configure"
+#line 4422 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4428,7 +4429,7 @@ int main() {
 tigetstr()
 ; return 0; }
 EOF
-if { (eval echo configure:4432: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4433: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4451,7 +4452,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -ltermlib""... $ac_c" 1>&6
-echo "configure:4455: checking for tgoto in -ltermlib" >&5
+echo "configure:4456: checking for tgoto in -ltermlib" >&5
 ac_lib_var=`echo termlib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4459,7 +4460,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermlib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4463 "configure"
+#line 4464 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4470,7 +4471,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4494,7 +4495,7 @@ fi
 if test "$cf_cv_lib_termcap" = none; then
 	# allow curses library for broken AIX system.
 	echo $ac_n "checking for initscr in -lcurses""... $ac_c" 1>&6
-echo "configure:4498: checking for initscr in -lcurses" >&5
+echo "configure:4499: checking for initscr in -lcurses" >&5
 ac_lib_var=`echo curses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4502,7 +4503,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4506 "configure"
+#line 4507 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4513,7 +4514,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:4517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4534,7 +4535,7 @@ else
 fi
 
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:4538: checking for tgoto in -ltermcap" >&5
+echo "configure:4539: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4542,7 +4543,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4546 "configure"
+#line 4547 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4553,7 +4554,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4557: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4558: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4576,7 +4577,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:4580: checking for tgoto in -ltermcap" >&5
+echo "configure:4581: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4584,7 +4585,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4588 "configure"
+#line 4589 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4595,7 +4596,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4599: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4600: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4618,7 +4619,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -lncurses""... $ac_c" 1>&6
-echo "configure:4622: checking for tgoto in -lncurses" >&5
+echo "configure:4623: checking for tgoto in -lncurses" >&5
 ac_lib_var=`echo ncurses'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4626,7 +4627,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lncurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4630 "configure"
+#line 4631 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4637,7 +4638,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:4641: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4642: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4667,12 +4668,12 @@ fi
 
 cf_slang_LIBS2="$LIBS"
 echo $ac_n "checking for acos""... $ac_c" 1>&6
-echo "configure:4671: checking for acos" >&5
+echo "configure:4672: checking for acos" >&5
 if eval "test \"`echo '$''{'ac_cv_func_acos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4676 "configure"
+#line 4677 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char acos(); below.  */
@@ -4695,7 +4696,7 @@ acos();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4700: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_acos=yes"
 else
@@ -4714,7 +4715,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for acos in -lm""... $ac_c" 1>&6
-echo "configure:4718: checking for acos in -lm" >&5
+echo "configure:4719: checking for acos in -lm" >&5
 ac_lib_var=`echo m'_'acos | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4722,7 +4723,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lm $LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4726 "configure"
+#line 4727 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4733,7 +4734,7 @@ int main() {
 acos()
 ; return 0; }
 EOF
-if { (eval echo configure:4737: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4738: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4773,12 +4774,12 @@ fi
 	cf_cv_have_lib_slang=no
 	cf_libdir=""
 	echo $ac_n "checking for SLtt_get_screen_size""... $ac_c" 1>&6
-echo "configure:4777: checking for SLtt_get_screen_size" >&5
+echo "configure:4778: checking for SLtt_get_screen_size" >&5
 if eval "test \"`echo '$''{'ac_cv_func_SLtt_get_screen_size'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4782 "configure"
+#line 4783 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char SLtt_get_screen_size(); below.  */
@@ -4801,7 +4802,7 @@ SLtt_get_screen_size();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4805: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4806: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_SLtt_get_screen_size=yes"
 else
@@ -4821,17 +4822,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for SLtt_get_screen_size in -lslang""... $ac_c" 1>&6
-echo "configure:4825: checking for SLtt_get_screen_size in -lslang" >&5
+echo "configure:4826: checking for SLtt_get_screen_size in -lslang" >&5
 		LIBS="-lslang $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 4828 "configure"
+#line 4829 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:4835: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_slang=yes
@@ -4858,17 +4859,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/slan
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lslang in $cf_libdir""... $ac_c" 1>&6
-echo "configure:4862: checking for -lslang in $cf_libdir" >&5
+echo "configure:4863: checking for -lslang in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lslang $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 4865 "configure"
+#line 4866 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:4872: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4873: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_slang=yes
@@ -4899,7 +4900,7 @@ esac
 
 cf_slang_LIBS3="$LIBS"
 echo $ac_n "checking if we can link slang without termcap""... $ac_c" 1>&6
-echo "configure:4903: checking if we can link slang without termcap" >&5
+echo "configure:4904: checking if we can link slang without termcap" >&5
 if test -n "`echo $cf_slang_LIBS1 | sed -e 's/ //g'`" ; then
 	cf_exclude=`echo ".$cf_slang_LIBS2" | sed -e "s@$cf_slang_LIBS1@@" -e 's@^.@@'`
 else
@@ -4907,14 +4908,14 @@ else
 fi
 LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s@$cf_exclude@@" -e 's@^.@@'`
 cat > conftest.$ac_ext <<EOF
-#line 4911 "configure"
+#line 4912 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:4918: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -4934,7 +4935,7 @@ eval cf_libdir=$libdir
 cf_libdir=`echo $cf_libdir | sed -e s@'^NONE/'@$prefix/@ -e s@'^NONE/'@$ac_default_prefix/@`
 
 echo $ac_n "checking for location of config-file""... $ac_c" 1>&6
-echo "configure:4938: checking for location of config-file" >&5
+echo "configure:4939: checking for location of config-file" >&5
 LYNX_CFG_FILE=$cf_libdir/lynx.cfg
 cat >> confdefs.h <<EOF
 #define LYNX_CFG_FILE "$LYNX_CFG_FILE"
@@ -4944,12 +4945,12 @@ echo "$ac_t""$LYNX_CFG_FILE" 1>&6
 
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:4948: checking for ANSI C header files" >&5
+echo "configure:4949: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4953 "configure"
+#line 4954 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -4957,7 +4958,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4961: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4962: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4974,7 +4975,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 4978 "configure"
+#line 4979 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -4992,7 +4993,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 4996 "configure"
+#line 4997 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -5013,7 +5014,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 5017 "configure"
+#line 5018 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -5024,7 +5025,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:5028: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5029: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -5048,12 +5049,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:5052: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:5053: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5057 "configure"
+#line 5058 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -5062,7 +5063,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:5066: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5067: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -5087,12 +5088,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:5091: checking for $ac_hdr that defines DIR" >&5
+echo "configure:5092: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5096 "configure"
+#line 5097 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -5100,7 +5101,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:5104: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5105: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -5125,7 +5126,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:5129: checking for opendir in -ldir" >&5
+echo "configure:5130: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5133,7 +5134,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5137 "configure"
+#line 5138 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5144,7 +5145,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:5148: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5166,7 +5167,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:5170: checking for opendir in -lx" >&5
+echo "configure:5171: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5174,7 +5175,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5178 "configure"
+#line 5179 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5185,7 +5186,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:5189: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5190: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5224,17 +5225,17 @@ for ac_hdr in \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5228: checking for $ac_hdr" >&5
+echo "configure:5229: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5233 "configure"
+#line 5234 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5238: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5239: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5262,13 +5263,13 @@ done
 
 
 echo $ac_n "checking termio.h and termios.h""... $ac_c" 1>&6
-echo "configure:5266: checking termio.h and termios.h" >&5
+echo "configure:5267: checking termio.h and termios.h" >&5
 if eval "test \"`echo '$''{'cf_cv_termio_and_termios'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 5272 "configure"
+#line 5273 "configure"
 #include "confdefs.h"
 
 #if HAVE_TERMIO_H
@@ -5281,7 +5282,7 @@ int main() {
 putchar (0x0a)
 ; return 0; }
 EOF
-if { (eval echo configure:5285: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5286: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_termio_and_termios=yes
 else
@@ -5304,17 +5305,17 @@ for ac_hdr in sys/wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5308: checking for $ac_hdr" >&5
+echo "configure:5309: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5313 "configure"
+#line 5314 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5318: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5319: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5351,17 +5352,17 @@ for ac_hdr in wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5355: checking for $ac_hdr" >&5
+echo "configure:5356: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5360 "configure"
+#line 5361 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5365: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5366: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5391,17 +5392,17 @@ for ac_hdr in waitstatus.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5395: checking for $ac_hdr" >&5
+echo "configure:5396: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5400 "configure"
+#line 5401 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5405: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5406: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5442,13 +5443,13 @@ fi
 
 
 echo $ac_n "checking for union wait""... $ac_c" 1>&6
-echo "configure:5446: checking for union wait" >&5
+echo "configure:5447: checking for union wait" >&5
 if eval "test \"`echo '$''{'cf_cv_type_unionwait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 5452 "configure"
+#line 5453 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -5459,7 +5460,7 @@ int x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:5463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_type_unionwait=no
 	 echo compiles ok w/o union wait 1>&5
@@ -5470,7 +5471,7 @@ else
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 5474 "configure"
+#line 5475 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -5485,7 +5486,7 @@ union wait x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:5489: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_type_unionwait=yes
 	 echo compiles ok with union wait and possibly macros too 1>&5
@@ -5512,20 +5513,20 @@ EOF
 if test $cf_cv_type_unionwait = yes; then
 
 	echo $ac_n "checking if union wait can be used as wait-arg""... $ac_c" 1>&6
-echo "configure:5516: checking if union wait can be used as wait-arg" >&5
+echo "configure:5517: checking if union wait can be used as wait-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_wait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 5522 "configure"
+#line 5523 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; wait(&x)
 ; return 0; }
 EOF
-if { (eval echo configure:5529: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5530: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_wait=yes
 else
@@ -5545,20 +5546,20 @@ EOF
 
 
 	echo $ac_n "checking if union wait can be used as waitpid-arg""... $ac_c" 1>&6
-echo "configure:5549: checking if union wait can be used as waitpid-arg" >&5
+echo "configure:5550: checking if union wait can be used as waitpid-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_waitpid'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 5555 "configure"
+#line 5556 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; waitpid(0, &x, 0)
 ; return 0; }
 EOF
-if { (eval echo configure:5562: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5563: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_waitpid=yes
 else
@@ -5580,12 +5581,12 @@ EOF
 fi
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:5584: checking for mode_t" >&5
+echo "configure:5585: checking for mode_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5589 "configure"
+#line 5590 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -5615,12 +5616,12 @@ fi
 
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:5619: checking for pid_t" >&5
+echo "configure:5620: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5624 "configure"
+#line 5625 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -5649,17 +5650,17 @@ fi
 
 ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
-echo "configure:5653: checking for vfork.h" >&5
+echo "configure:5654: checking for vfork.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5658 "configure"
+#line 5659 "configure"
 #include "confdefs.h"
 #include <vfork.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5663: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5664: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5684,18 +5685,18 @@ else
 fi
 
 echo $ac_n "checking for working vfork""... $ac_c" 1>&6
-echo "configure:5688: checking for working vfork" >&5
+echo "configure:5689: checking for working vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$cross_compiling" = yes; then
   echo $ac_n "checking for vfork""... $ac_c" 1>&6
-echo "configure:5694: checking for vfork" >&5
+echo "configure:5695: checking for vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5699 "configure"
+#line 5700 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vfork(); below.  */
@@ -5718,7 +5719,7 @@ vfork();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5722: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5723: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_vfork=yes"
 else
@@ -5739,7 +5740,7 @@ fi
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 5743 "configure"
+#line 5744 "configure"
 #include "confdefs.h"
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
@@ -5834,7 +5835,7 @@ main() {
   }
 }
 EOF
-if { (eval echo configure:5838: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5839: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_vfork_works=yes
 else
@@ -5858,13 +5859,13 @@ fi
 
 
 echo $ac_n "checking if we should use fcntl or ioctl""... $ac_c" 1>&6
-echo "configure:5862: checking if we should use fcntl or ioctl" >&5
+echo "configure:5863: checking if we should use fcntl or ioctl" >&5
 if eval "test \"`echo '$''{'cf_cv_fionbio'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 5868 "configure"
+#line 5869 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -5876,7 +5877,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:5880: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fionbio=ioctl
 else
@@ -5885,7 +5886,7 @@ else
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 5889 "configure"
+#line 5890 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -5902,7 +5903,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:5906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5907: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fionbio=fcntl
 else
@@ -5925,20 +5926,20 @@ EOF
 
 
 echo $ac_n "checking for broken/missing definition of remove""... $ac_c" 1>&6
-echo "configure:5929: checking for broken/missing definition of remove" >&5
+echo "configure:5930: checking for broken/missing definition of remove" >&5
 if eval "test \"`echo '$''{'cf_cv_baddef_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 5935 "configure"
+#line 5936 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:5942: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_baddef_remove=no
 else
@@ -5946,7 +5947,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 5950 "configure"
+#line 5951 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 		int __unlink(name) { return unlink(name); } 
@@ -5954,7 +5955,7 @@ int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:5958: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_baddef_remove=yes
 else
@@ -5978,13 +5979,13 @@ EOF
 
 
 echo $ac_n "checking for lstat""... $ac_c" 1>&6
-echo "configure:5982: checking for lstat" >&5
+echo "configure:5983: checking for lstat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_lstat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 5988 "configure"
+#line 5989 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -5993,7 +5994,7 @@ int main() {
 lstat(".", (struct stat *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:5997: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5998: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_func_lstat=yes
 else
@@ -6025,12 +6026,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6029: checking for $ac_func" >&5
+echo "configure:6030: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6034 "configure"
+#line 6035 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6053,7 +6054,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6057: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6058: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -6083,12 +6084,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6087: checking for $ac_func" >&5
+echo "configure:6088: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6092 "configure"
+#line 6093 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6111,7 +6112,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6115: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -6142,12 +6143,12 @@ for ac_func in strstr
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:6146: checking for $ac_func declaration" >&5
+echo "configure:6147: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6151 "configure"
+#line 6152 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -6156,11 +6157,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6160: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6161: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 6164 "configure"
+#line 6165 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -6169,7 +6170,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6173: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6174: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -6211,12 +6212,12 @@ for ac_func in getgrgid getgrnam
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:6215: checking for $ac_func declaration" >&5
+echo "configure:6216: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6220 "configure"
+#line 6221 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -6227,11 +6228,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6231: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6232: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 6235 "configure"
+#line 6236 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -6242,7 +6243,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:6246: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6247: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -6284,13 +6285,13 @@ done
 
 
 echo $ac_n "checking if TRUE/FALSE are defined""... $ac_c" 1>&6
-echo "configure:6288: checking if TRUE/FALSE are defined" >&5
+echo "configure:6289: checking if TRUE/FALSE are defined" >&5
 if eval "test \"`echo '$''{'cf_cv_bool_defs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6294 "configure"
+#line 6295 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6299,7 +6300,7 @@ int main() {
 int x = TRUE, y = FALSE
 ; return 0; }
 EOF
-if { (eval echo configure:6303: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6304: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_bool_defs=yes
 else
@@ -6326,13 +6327,13 @@ fi
 
 
 echo $ac_n "checking declaration of errno""... $ac_c" 1>&6
-echo "configure:6330: checking declaration of errno" >&5
+echo "configure:6331: checking declaration of errno" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 6336 "configure"
+#line 6337 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDLIB_H
@@ -6345,7 +6346,7 @@ int main() {
 long x = (long) errno
 ; return 0; }
 EOF
-if { (eval echo configure:6349: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6350: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'errno'=yes'
 else
@@ -6375,9 +6376,9 @@ cf_result=`echo $cf_result | tr '[a-z]' '[A-Z]'`
 EOF
 
     echo $ac_n "checking existence of errno""... $ac_c" 1>&6
-echo "configure:6379: checking existence of errno" >&5
+echo "configure:6380: checking existence of errno" >&5
         cat > conftest.$ac_ext <<EOF
-#line 6381 "configure"
+#line 6382 "configure"
 #include "confdefs.h"
 
 #undef errno
@@ -6387,7 +6388,7 @@ int main() {
 errno = 2
 ; return 0; }
 EOF
-if { (eval echo configure:6391: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6392: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval 'cf_cv_have_'errno'=yes'
 else
@@ -6417,20 +6418,20 @@ EOF
 
 
 echo $ac_n "checking for setlocale()""... $ac_c" 1>&6
-echo "configure:6421: checking for setlocale()" >&5
+echo "configure:6422: checking for setlocale()" >&5
 if eval "test \"`echo '$''{'cf_cv_locale'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6427 "configure"
+#line 6428 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 setlocale(LC_ALL, "")
 ; return 0; }
 EOF
-if { (eval echo configure:6434: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_locale=yes
 else
@@ -6451,13 +6452,13 @@ EOF
 
 
 echo $ac_n "checking if NGROUPS is defined""... $ac_c" 1>&6
-echo "configure:6455: checking if NGROUPS is defined" >&5
+echo "configure:6456: checking if NGROUPS is defined" >&5
 if eval "test \"`echo '$''{'cf_cv_ngroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6461 "configure"
+#line 6462 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -6471,7 +6472,7 @@ int main() {
 int x = NGROUPS
 ; return 0; }
 EOF
-if { (eval echo configure:6475: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6476: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=yes
 else
@@ -6479,7 +6480,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 6483 "configure"
+#line 6484 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -6493,7 +6494,7 @@ int main() {
 int x = NGROUPS_MAX
 ; return 0; }
 EOF
-if { (eval echo configure:6497: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6498: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=NGROUPS_MAX
 else
@@ -6527,13 +6528,13 @@ for cf_name in sys_nerr sys_errlist
 do
     
 echo $ac_n "checking declaration of $cf_name""... $ac_c" 1>&6
-echo "configure:6531: checking declaration of $cf_name" >&5
+echo "configure:6532: checking declaration of $cf_name" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_$cf_name'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 6537 "configure"
+#line 6538 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDLIB_H
@@ -6546,7 +6547,7 @@ int main() {
 long x = (long) $cf_name
 ; return 0; }
 EOF
-if { (eval echo configure:6550: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6551: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'$cf_name'=yes'
 else
@@ -6576,9 +6577,9 @@ cf_result=`echo $cf_result | tr '[a-z]' '[A-Z]'`
 EOF
 
     echo $ac_n "checking existence of $cf_name""... $ac_c" 1>&6
-echo "configure:6580: checking existence of $cf_name" >&5
+echo "configure:6581: checking existence of $cf_name" >&5
         cat > conftest.$ac_ext <<EOF
-#line 6582 "configure"
+#line 6583 "configure"
 #include "confdefs.h"
 
 #undef $cf_name
@@ -6588,7 +6589,7 @@ int main() {
 $cf_name = 2
 ; return 0; }
 EOF
-if { (eval echo configure:6592: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6593: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval 'cf_cv_have_'$cf_name'=yes'
 else
@@ -6619,13 +6620,13 @@ done
 
 
 echo $ac_n "checking if struct utmp is declared""... $ac_c" 1>&6
-echo "configure:6623: checking if struct utmp is declared" >&5
+echo "configure:6624: checking if struct utmp is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 6629 "configure"
+#line 6630 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -6634,7 +6635,7 @@ int main() {
 struct utmp x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:6638: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6639: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=yes
 else
@@ -6642,14 +6643,14 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 6646 "configure"
+#line 6647 "configure"
 #include "confdefs.h"
 #include <utmpx.h>
 int main() {
 struct utmpx x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:6653: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6654: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=utmpx
 else
@@ -6680,7 +6681,7 @@ EOF
 if test $cf_cv_screen != slang ; then
 	
 echo $ac_n "checking if curses supports alternate-character set""... $ac_c" 1>&6
-echo "configure:6684: checking if curses supports alternate-character set" >&5
+echo "configure:6685: checking if curses supports alternate-character set" >&5
 if eval "test \"`echo '$''{'cf_cv_alt_char_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6688,7 +6689,7 @@ else
 for mapname in acs_map _acs_map
 do
 	cat > conftest.$ac_ext <<EOF
-#line 6692 "configure"
+#line 6693 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6697,7 +6698,7 @@ int main() {
 chtype x = acs_map['l']; acs_map['m'] = 0
 ; return 0; }
 EOF
-if { (eval echo configure:6701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6702: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_alt_char_set=$mapname
 	 break
@@ -6720,13 +6721,13 @@ EOF
 
 	
 echo $ac_n "checking if curses supports fancy attributes""... $ac_c" 1>&6
-echo "configure:6724: checking if curses supports fancy attributes" >&5
+echo "configure:6725: checking if curses supports fancy attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_fancy_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 6730 "configure"
+#line 6731 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6739,7 +6740,7 @@ attrset(A_UNDERLINE|A_BOLD|A_REVERSE);
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6743: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fancy_curses=yes
 else
@@ -6759,7 +6760,7 @@ EOF
 
 
 	echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:6763: checking for ncurses version" >&5
+echo "configure:6764: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6784,7 +6785,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:6788: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:6789: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -6793,7 +6794,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 6797 "configure"
+#line 6798 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6816,7 +6817,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:6820: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6821: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -6836,13 +6837,13 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 
 if test "$cf_cv_ncurses_version" != no ; then
 echo $ac_n "checking for obsolete/broken version of ncurses""... $ac_c" 1>&6
-echo "configure:6840: checking for obsolete/broken version of ncurses" >&5
+echo "configure:6841: checking for obsolete/broken version of ncurses" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_broken'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 6846 "configure"
+#line 6847 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6856,7 +6857,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:6860: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6861: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_broken=no
 else
@@ -6881,13 +6882,13 @@ fi
 
 	
 echo $ac_n "checking if curses supports color attributes""... $ac_c" 1>&6
-echo "configure:6885: checking if curses supports color attributes" >&5
+echo "configure:6886: checking if curses supports color attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_color_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 6891 "configure"
+#line 6892 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6902,7 +6903,7 @@ chtype x = COLOR_BLUE;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6907: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_color_curses=yes
 else
@@ -6929,7 +6930,7 @@ fi
 
 	
 echo $ac_n "checking declaration of size-change""... $ac_c" 1>&6
-echo "configure:6933: checking declaration of size-change" >&5
+echo "configure:6934: checking declaration of size-change" >&5
 if eval "test \"`echo '$''{'cf_cv_sizechange'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6943,7 +6944,7 @@ do
     CFLAGS="$cf_save_CFLAGS"
     test -n "$cf_opts" && CFLAGS="$CFLAGS -D$cf_opts"
     cat > conftest.$ac_ext <<EOF
-#line 6947 "configure"
+#line 6948 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if HAVE_TERMIOS_H
@@ -6982,7 +6983,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6986: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6987: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_sizechange=yes
 else
@@ -7014,20 +7015,20 @@ EOF
 
 	
 echo $ac_n "checking if ttytype is declared in curses library""... $ac_c" 1>&6
-echo "configure:7018: checking if ttytype is declared in curses library" >&5
+echo "configure:7019: checking if ttytype is declared in curses library" >&5
 if eval "test \"`echo '$''{'cf_cv_have_ttytype'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7024 "configure"
+#line 7025 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 char *x = &ttytype[1]; *x = 1
 ; return 0; }
 EOF
-if { (eval echo configure:7031: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7032: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_have_ttytype=yes
 else
@@ -7054,12 +7055,12 @@ EOF
 	
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:7058: checking for $ac_func" >&5
+echo "configure:7059: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7063 "configure"
+#line 7064 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -7082,7 +7083,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7086: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7087: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -7112,7 +7113,7 @@ fi
 
 
 echo $ac_n "checking if experimental 8-bit case-conversion should be used""... $ac_c" 1>&6
-echo "configure:7116: checking if experimental 8-bit case-conversion should be used" >&5
+echo "configure:7117: checking if experimental 8-bit case-conversion should be used" >&5
 
 # Check whether --enable-8bit-toupper or --disable-8bit-toupper was given.
 if test "${enable_8bit_toupper+set}" = set; then
@@ -7136,7 +7137,7 @@ EOF
 
 
 echo $ac_n "checking if color-style code should be used""... $ac_c" 1>&6
-echo "configure:7140: checking if color-style code should be used" >&5
+echo "configure:7141: checking if color-style code should be used" >&5
 
 # Check whether --enable-color-style or --disable-color-style was given.
 if test "${enable_color_style+set}" = set; then
@@ -7184,7 +7185,7 @@ EOF
 	echo "$ac_t""yes" 1>&6
 
 	echo $ac_n "checking for location of style-sheet file""... $ac_c" 1>&6
-echo "configure:7188: checking for location of style-sheet file" >&5
+echo "configure:7189: checking for location of style-sheet file" >&5
 	LYNX_LSS_FILE=$cf_libdir/lynx.lss
 	cat >> confdefs.h <<EOF
 #define LYNX_LSS_FILE "$LYNX_LSS_FILE"
@@ -7196,13 +7197,37 @@ EOF
 esac
 
 
+echo $ac_n "checking if experimental partial-display should be used""... $ac_c" 1>&6
+echo "configure:7202: checking if experimental partial-display should be used" >&5
+
+# Check whether --enable-partial or --disable-partial was given.
+if test "${enable_partial+set}" = set; then
+  enableval="$enable_partial"
+  test "$enableval" != yes && enableval=no
+  if test "$enableval" != "no" ; then
+    use_partial_display=$enableval 
+  else
+    use_partial_display=no
+  fi
+else
+  enableval=no 
+  use_partial_display=no
+  
+fi
+
+echo "$ac_t""$use_partial_display" 1>&6
+test $use_partial_display != no && cat >> confdefs.h <<\EOF
+#define DISP_PARTIAL 1
+EOF
+
+
 use_dft_colors=no
 test ".$cf_cv_screen" = ".slang"                && use_dft_colors=maybe
 test ".$ac_cv_func_use_default_colors" = ".yes" && use_dft_colors=maybe
 
 if test "$use_dft_colors" != no ; then
 echo $ac_n "checking if you want to use default-colors""... $ac_c" 1>&6
-echo "configure:7206: checking if you want to use default-colors" >&5
+echo "configure:7231: checking if you want to use default-colors" >&5
 
 # Check whether --enable-default-colors or --disable-default-colors was given.
 if test "${enable_default_colors+set}" = set; then
@@ -7227,7 +7252,7 @@ EOF
 fi
 
 echo $ac_n "checking if you want to use extended HTML DTD logic""... $ac_c" 1>&6
-echo "configure:7231: checking if you want to use extended HTML DTD logic" >&5
+echo "configure:7256: checking if you want to use extended HTML DTD logic" >&5
 
 # Check whether --enable-extended-dtd or --disable-extended-dtd was given.
 if test "${enable_extended_dtd+set}" = set; then
@@ -7251,7 +7276,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use external commands""... $ac_c" 1>&6
-echo "configure:7255: checking if you want to use external commands" >&5
+echo "configure:7280: checking if you want to use external commands" >&5
 
 # Check whether --enable-externs or --disable-externs was given.
 if test "${enable_externs+set}" = set; then
@@ -7275,7 +7300,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use setfont support""... $ac_c" 1>&6
-echo "configure:7279: checking if you want to use setfont support" >&5
+echo "configure:7304: checking if you want to use setfont support" >&5
 
 # Check whether --enable-font-switch or --disable-font-switch was given.
 if test "${enable_font_switch+set}" = set; then
@@ -7299,7 +7324,7 @@ EOF
 
 
 echo $ac_n "checking if you want internal-links feature""... $ac_c" 1>&6
-echo "configure:7303: checking if you want internal-links feature" >&5
+echo "configure:7328: checking if you want internal-links feature" >&5
 
 # Check whether --enable-internal-links or --disable-internal-links was given.
 if test "${enable_internal_links+set}" = set; then
@@ -7323,7 +7348,7 @@ EOF
 
 
 echo $ac_n "checking if you want to fork NSL requests""... $ac_c" 1>&6
-echo "configure:7327: checking if you want to fork NSL requests" >&5
+echo "configure:7352: checking if you want to fork NSL requests" >&5
 
 # Check whether --enable-nsl-fork or --disable-nsl-fork was given.
 if test "${enable_nsl_fork+set}" = set; then
@@ -7347,7 +7372,7 @@ EOF
 
 
 echo $ac_n "checking if you want to underline links""... $ac_c" 1>&6
-echo "configure:7351: checking if you want to underline links" >&5
+echo "configure:7376: checking if you want to underline links" >&5
 
 # Check whether --enable-underlines or --disable-underlines was given.
 if test "${enable_underlines+set}" = set; then
@@ -7371,7 +7396,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use zlib for decompression of some gzip files""... $ac_c" 1>&6
-echo "configure:7375: checking if you want to use zlib for decompression of some gzip files" >&5
+echo "configure:7400: checking if you want to use zlib for decompression of some gzip files" >&5
 
 # Check whether --with-zlib or --without-zlib was given.
 if test "${with_zlib+set}" = set; then
@@ -7388,12 +7413,12 @@ if test ".$use_zlib" != ".no" ; then
 	cf_cv_have_lib_z=no
 	cf_libdir=""
 	echo $ac_n "checking for gzopen""... $ac_c" 1>&6
-echo "configure:7392: checking for gzopen" >&5
+echo "configure:7417: checking for gzopen" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gzopen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7397 "configure"
+#line 7422 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gzopen(); below.  */
@@ -7416,7 +7441,7 @@ gzopen();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_gzopen=yes"
 else
@@ -7436,17 +7461,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for gzopen in -lz""... $ac_c" 1>&6
-echo "configure:7440: checking for gzopen in -lz" >&5
+echo "configure:7465: checking for gzopen in -lz" >&5
 		LIBS="-lz $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 7443 "configure"
+#line 7468 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:7450: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_z=yes
@@ -7473,17 +7498,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/z"
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lz in $cf_libdir""... $ac_c" 1>&6
-echo "configure:7477: checking for -lz in $cf_libdir" >&5
+echo "configure:7502: checking for -lz in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lz $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 7480 "configure"
+#line 7505 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:7487: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_z=yes
@@ -7524,7 +7549,7 @@ fi
 # All DirEd functions that were enabled on compilation can be disabled
 # or modified at run time via DIRED_MENU symbols in lynx.cfg.
 echo $ac_n "checking if directory-editor code should be used""... $ac_c" 1>&6
-echo "configure:7528: checking if directory-editor code should be used" >&5
+echo "configure:7553: checking if directory-editor code should be used" >&5
 
 # Check whether --enable-dired or --disable-dired was given.
 if test "${enable_dired+set}" = set; then
@@ -7550,7 +7575,7 @@ EOF
 
 
 	echo $ac_n "checking if you wish to allow extracting from archives via DirEd""... $ac_c" 1>&6
-echo "configure:7554: checking if you wish to allow extracting from archives via DirEd" >&5
+echo "configure:7579: checking if you wish to allow extracting from archives via DirEd" >&5
 	
 # Check whether --enable-dired-archive or --disable-dired-archive was given.
 if test "${enable_dired_archive+set}" = set; then
@@ -7569,7 +7594,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow users to redefine DirEd keys""... $ac_c" 1>&6
-echo "configure:7573: checking if you wish to allow users to redefine DirEd keys" >&5
+echo "configure:7598: checking if you wish to allow users to redefine DirEd keys" >&5
 	
 # Check whether --enable-dired-override or --disable-dired-override was given.
 if test "${enable_dired_override+set}" = set; then
@@ -7595,7 +7620,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow permissions commands via DirEd""... $ac_c" 1>&6
-echo "configure:7599: checking if you wish to allow permissions commands via DirEd" >&5
+echo "configure:7624: checking if you wish to allow permissions commands via DirEd" >&5
 	
 # Check whether --enable-dired-permit or --disable-dired-permit was given.
 if test "${enable_dired_permit+set}" = set; then
@@ -7621,7 +7646,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow executable-permission commands via DirEd""... $ac_c" 1>&6
-echo "configure:7625: checking if you wish to allow executable-permission commands via DirEd" >&5
+echo "configure:7650: checking if you wish to allow executable-permission commands via DirEd" >&5
 	
 # Check whether --enable-dired-xpermit or --disable-dired-xpermit was given.
 if test "${enable_dired_xpermit+set}" = set; then
@@ -7640,7 +7665,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "tar" commands from DirEd""... $ac_c" 1>&6
-echo "configure:7644: checking if you wish to allow "tar" commands from DirEd" >&5
+echo "configure:7669: checking if you wish to allow "tar" commands from DirEd" >&5
 	
 # Check whether --enable-dired-tar or --disable-dired-tar was given.
 if test "${enable_dired_tar+set}" = set; then
@@ -7666,7 +7691,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "uudecode" commands from DirEd""... $ac_c" 1>&6
-echo "configure:7670: checking if you wish to allow "uudecode" commands from DirEd" >&5
+echo "configure:7695: checking if you wish to allow "uudecode" commands from DirEd" >&5
 	
 # Check whether --enable-dired-uudecode or --disable-dired-uudecode was given.
 if test "${enable_dired_uudecode+set}" = set; then
@@ -7692,7 +7717,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "zip" and "unzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:7696: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
+echo "configure:7721: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-zip or --disable-dired-zip was given.
 if test "${enable_dired_zip+set}" = set; then
@@ -7718,7 +7743,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "gzip" and "gunzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:7722: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
+echo "configure:7747: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-gzip or --disable-dired-gzip was given.
 if test "${enable_dired_gzip+set}" = set; then
@@ -7745,7 +7770,7 @@ fi
 fi
 
 echo $ac_n "checking if you want long-directory listings""... $ac_c" 1>&6
-echo "configure:7749: checking if you want long-directory listings" >&5
+echo "configure:7774: checking if you want long-directory listings" >&5
 
 # Check whether --enable-long-list or --disable-long-list was given.
 if test "${enable_long_list+set}" = set; then
@@ -7771,7 +7796,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if parent-directory references are permitted""... $ac_c" 1>&6
-echo "configure:7775: checking if parent-directory references are permitted" >&5
+echo "configure:7800: checking if parent-directory references are permitted" >&5
 
 # Check whether --enable-parent-dir-refs or --disable-parent-dir-refs was given.
 if test "${enable_parent_dir_refs+set}" = set; then
diff --git a/configure.in b/configure.in
index b86e558f..b1705f6b 100644
--- a/configure.in
+++ b/configure.in
@@ -435,6 +435,14 @@ no)
 esac
 AC_SUBST(INSTALL_LSS)
 
+AC_MSG_CHECKING(if experimental partial-display should be used)
+CF_ARG_ENABLE(partial,
+[  --enable-partial        use experimental partial-display logic],
+	[use_partial_display=$enableval],
+	[use_partial_display=no])
+AC_MSG_RESULT($use_partial_display)
+test $use_partial_display != no && AC_DEFINE(DISP_PARTIAL)
+
 use_dft_colors=no
 test ".$cf_cv_screen" = ".slang"                && use_dft_colors=maybe
 test ".$ac_cv_func_use_default_colors" = ".yes" && use_dft_colors=maybe
diff --git a/samples/lynx-keymaps b/samples/lynx-keymaps
new file mode 100644
index 00000000..f3847931
--- /dev/null
+++ b/samples/lynx-keymaps
@@ -0,0 +1,82 @@
+# This is a sample key sequence definition file.
+# Lines that start with a '#' are comment lines.  Blank lines are ignored.
+
+# The 'setkey' function may be used in two ways:
+#
+#   1.  setkey ESC-SEQUENCE  KEYSYM
+#   2.  setkey ESC-SEQUENCE  KEYSYM_NAME
+#
+# where KEYSYM is an integer.  A keysym is essentually with the lynx.rc
+# file calls a 'keystroke', but I think that keysym is a more appropriate
+# name.  The keysym is an integer and may be expressed in various ways:
+#
+#       as a decimal integer:  97
+#       hexadecimal:           0x61
+#       Octal:                 0141
+#       as an ASCII character: 'a'
+#
+# Some keysyms may be expressed symbolically as a keysym name using the
+# second form.  The currently recognized symbolic names are:
+#
+#       UPARROW
+#       DNARROW
+#       RTARROW
+#       LTARROW
+#       PGDOWN
+#       PGUP
+#       HOME
+#       END
+#       F1
+#       DO_KEY
+#       FIND_KEY
+#       SELECT_KEY
+#       INSERT_KEY
+#       REMOVE_KEY
+#       DO_NOTHING
+#
+# It does not matter if your keyboard does not have some of the keys
+# implied by the above names.  The fact is that lynx uses these keys as an
+# an intermediate representation.
+#
+# The ESC-SEQUENCE should be enclosed in double quotes.  The '^' character
+# is special and indicates a control character, e.g., ^K is Ctrl-K.  An ESC
+# character (ascii 27) may be represented as ^[.  As an example, many
+# terminals have arrow keys that emit 'ESC [ A' for the UP arrow.  This may
+# be represented as the escape sequence "^[[A".  The default keymapping is
+# given below:
+#
+setkey "\033[A"		UPARROW
+setkey "\033OA"		UPARROW
+setkey "\033[B"		DNARROW
+setkey "\033OB"		DNARROW
+setkey "\033[C"		RTARROW
+setkey "\033OC"		RTARROW
+setkey "\033[D"		LTARROW
+setkey "\033OD"		LTARROW
+setkey "\033[1~"	FIND_KEY
+setkey "\033[2~"	INSERT_KEY
+setkey "\033[3~"	REMOVE_KEY
+setkey "\033[4~"	SELECT_KEY
+setkey "\033[5~"	PGUP
+setkey "\033[6~"	PGDOWN
+setkey "\033[8~"	END
+setkey "\033[7~"	HOME
+setkey "\033[28~"	F1
+setkey "\033[29~"	DO_KEY
+#
+# All other keys map to themselves, e.g,
+#
+setkey "a"		'a'
+#
+# Now suppose that your terminal produces different escape sequences for
+# HOME and END.  In particular, suppose that the home key produces 'ESC [
+# H' and that the end key produces 'ESC [ K'.  Then these may be defined to
+# map to lynx HOME and END keys via
+#
+setkey "^[[H"		HOME
+setkey "^[[K"		END
+#
+# Similarly, we may map emacs-like sequences to these functions:
+#
+setkey "^[<"		HOME
+setkey "^[>"		END
diff --git a/src/HTML.c b/src/HTML.c
index 55b5d1d0..07444474 100644
--- a/src/HTML.c
+++ b/src/HTML.c
@@ -116,7 +116,7 @@ PRIVATE void change_paragraph_style PARAMS((HTStructured * me,
 #define VERBOSE_IMG(value,string) \
       ((verbose_img) ? (newtitle = MakeNewTitle(value)): string)
 
-PRIVATE char * MakeNewTitle(CONST char ** value);
+PRIVATE char * MakeNewTitle PARAMS((CONST char ** value));
 
 /*	Set an internal flag that the next call to a stack-affecting method
 **	is only internal and the stack manipulation should be skipped. - kw
@@ -7436,7 +7436,7 @@ PUBLIC int HTLoadError ARGS3(
 }
 
 
-PRIVATE char * MakeNewTitle(CONST char ** value)
+PRIVATE char * MakeNewTitle ARGS1(CONST char **, value)
 {
     char *ptr;
     char *newtitle = NULL;
diff --git a/src/LYCharUtils.c b/src/LYCharUtils.c
index 41d9bfc1..4f2054ac 100644
--- a/src/LYCharUtils.c
+++ b/src/LYCharUtils.c
@@ -418,7 +418,7 @@ PUBLIC void LYFillLocalFileURL ARGS2(
 **  Currently this function is used for temporary files like "Lynx Info Page"
 **  and for one permanent - bookmarks (so it may be a problem if you change
 **  the display charset later: new bookmark entries may be mistranslated).
-** 								 - LP
+**								 - LP
 */
 PUBLIC void LYAddMETAcharsetToFD ARGS2(
 	FILE *, 	fd,
@@ -1055,7 +1055,7 @@ PUBLIC void LYExpandString ARGS2(
 		saved_char_in = c;
 #endif /* NOTDEFINED */
 	    if (me->T.trans_to_uni &&
-		(code >= 127 ||
+		(code >= LYlowest_eightbit[me->inUCLYhndl] ||
 		 (code < 32 && code != 0 &&
 		  me->T.trans_C0_to_uni))) {
 		/*
@@ -1983,6 +1983,135 @@ PRIVATE char ** LYUCFullyTranslateString_1 ARGS9(
 		    break;
 		} else {
 		    code = lcode;
+		    if ((code == 1) ||
+		       (code > 129 && code < 156)) {
+			/*
+			** Assume these are Microsoft code points, inflicted on
+			** us by FrontPage.  - FM
+			**
+			** MS FrontPage uses syntax like &#153; in 128-159
+			** range and doesn't follow Unicode standards for this
+			** area.  Windows-1252 codepoints are assumed here.
+			*/
+			switch (code) {
+			case 1:
+			    /*
+			    **	WHITE SMILING FACE
+			    */
+			    code = 0x263a;
+			    break;
+			case 130:
+			    /*
+			    **	SINGLE LOW-9 QUOTATION MARK (sbquo)
+			    */
+			    code = 0x201a;
+			    break;
+			case 132:
+			    /*
+			    **	DOUBLE LOW-9 QUOTATION MARK (bdquo)
+			    */
+			    code = 0x201e;
+			    break;
+			case 133:
+			    /*
+			    **	HORIZONTAL ELLIPSIS (hellip)
+			    */
+			    code = 0x2026;
+			    break;
+			case 134:
+			    /*
+			    **	DAGGER (dagger)
+			    */
+			    code = 0x2020;
+			    break;
+			case 135:
+			    /*
+			    **	DOUBLE DAGGER (Dagger)
+			    */
+			    code = 0x2021;
+			    break;
+			case 137:
+			    /*
+			    **	PER MILLE SIGN (permil)
+			    */
+			    code = 0x2030;
+			    break;
+			case 139:
+			    /*
+			    **	SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+			    **	(lsaquo)
+			    */
+			    code = 0x2039;
+			    break;
+			case 145:
+			    /*
+			    **	LEFT SINGLE QUOTATION MARK (lsquo)
+			    */
+			    code = 0x2018;
+			    break;
+			case 146:
+			    /*
+			    **	RIGHT SINGLE QUOTATION MARK (rsquo)
+			    */
+			    code = 0x2019;
+			    break;
+			case 147:
+			    /*
+			    **	LEFT DOUBLE QUOTATION MARK (ldquo)
+			    */
+			    code = 0x201c;
+			    break;
+			case 148:
+			    /*
+			    **	RIGHT DOUBLE QUOTATION MARK (rdquo)
+			    */
+			    code = 0x201d;
+			    break;
+			case 149:
+			    /*
+			    **	BULLET (bull)
+			    */
+			    code = 0x2022;
+			    break;
+			case 150:
+			    /*
+			    **	EN DASH (ndash)
+			    */
+			    code = 0x2013;
+			    break;
+			case 151:
+			    /*
+			    **	EM DASH (mdash)
+			    */
+			    code = 0x2014;
+			    break;
+			case 152:
+			    /*
+			    **	SMALL TILDE (tilde)
+			    */
+			    code = 0x02dc;
+			    break;
+			case 153:
+			    /*
+			    **	TRADE MARK SIGN (trade)
+			    */
+			    code = 0x2122;
+			    break;
+			case 155:
+			    /*
+			    **	SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+			    **	(rsaquo)
+			    */
+			    code = 0x203a;
+			    break;
+			default:
+			    /*
+			    **	Do not attempt a conversion
+			    **	to valid Unicode values.
+			    */
+			    break;
+		       }
+		    }
 		    state = S_check_uni;
 		}
 		break;
@@ -2210,7 +2339,7 @@ PRIVATE char ** LYUCFullyTranslateString_1 ARGS9(
 	    **	is commonly found on query to CGI-scripts
 	    **	enclosed as href= URLs like  "somepath/?x=1&yz=2"
 	    **	Without this dirty fix, submission of such URLs was broken
-	    **	if &yz string happend to be a recognized entity name. - LP
+	    **	if &yz string happened to be a recognized entity name. - LP
 	    */
 	   if ( ((code = HTMLGetEntityUCValue(name)) > 0) &&
 		!((cpe == '=') && (stype == st_URL)) ) {
diff --git a/src/LYClean.c b/src/LYClean.c
index 69b2cdbf..d67d76cf 100644
--- a/src/LYClean.c
+++ b/src/LYClean.c
@@ -4,6 +4,7 @@
 #include <LYUtils.h>
 #include <LYSignal.h>
 #include <LYClean.h>
+#include <LYMainLoop.h>
 #include <LYGlobalDefs.h>
 #include <LYStrings.h>
 #include <LYTraversal.h>
@@ -198,13 +199,5 @@ PUBLIC void cleanup NOARGS
     DidCleanup = TRUE;
 #endif /* VMS */
 
-    fflush(stdout);
-    fflush(stderr);
-    if (LYTraceLogFP != NULL) {
-	fclose(LYTraceLogFP);
-	LYTraceLogFP = NULL;
-#if !defined(VMS) || (defined(VMS) && !defined(VAXC) && !defined(UCX))
-	*stderr = LYOrigStderr;
-#endif /* !VMS || (VMS && !VAXC && !UCX) */
-    }
+    LYCloseTracelog();
 }
diff --git a/src/LYCurses.c b/src/LYCurses.c
index f1a03969..3bc76490 100644
--- a/src/LYCurses.c
+++ b/src/LYCurses.c
@@ -157,7 +157,7 @@ PRIVATE void sl_suspend ARGS1(
     SLang_init_tty(3, 0, 1);
 #endif /* SLANG_VERSION > 9929 */
     signal(SIGTSTP, sl_suspend);
-#ifndef _WINDOWS
+#if !defined(_WINDOWS) && !defined(__DJGPP__)
     SLtty_set_suspend_state(1);
 #endif
     if (sig == SIGTSTP)
@@ -466,24 +466,18 @@ PRIVATE void LYsetWAttr ARGS1(WINDOW *, win)
 	int code = 0;
 	int attr = A_NORMAL;
 	int offs = 1;
-	static int have_underline = -1;
-	static int NoColorVideo = -1;
 
-	if (have_underline < 0) {
-#ifndef DOSPATH
-		have_underline = tigetstr("smul") != 0;
-#else
-		have_underline = 1;
-#endif /* DOSPATH */
-	}
+#ifdef UNIX
+	static int NoColorVideo = -1;
 
-#if ( !defined(__DJGPP__) && !defined(_WINDOWS) )
 	if (NoColorVideo < 0) {
 		NoColorVideo = tigetnum("ncv");
 	}
 	if (NoColorVideo < 0)
 		NoColorVideo = 0;
-#endif /* !__DJGPP__ and !_WINDOWS */
+#else /* PDCurses */
+	static int NoColorVideo = 0;
+#endif /* UNIX */
 
 	if (Current_Attr & A_BOLD)
 		code |= 1;
@@ -494,8 +488,8 @@ PRIVATE void LYsetWAttr ARGS1(WINDOW *, win)
 	attr = lynx_color_cfg[code].attr;
 
 	/*
-	 * FIXME:  no_color_video isn't implemented (97/4/14) in ncurses 4.x,
-	 * but may be in SVr4 (which would make this redundant for the latter).
+	 * no_color_video isn't implemented (97/4/14) in ncurses 4.1, but may
+	 * be in SVr4 (which would make this redundant for the latter).
 	 */
 	if ((Current_Attr & A_BOLD) && !(NoColorVideo & 33)) {
 		attr |= A_BOLD;
@@ -615,34 +609,35 @@ PUBLIC void lynx_setup_colors NOARGS
  */
 PUBLIC void start_curses NOARGS
 {
-	 static BOOLEAN first_time = TRUE;
-
-	 if(first_time)
-	 {
-		  initscr();	  /* start curses */
-		  first_time = FALSE;
-		  cbreak();
-		  keypad(stdscr, TRUE);
-		  fflush(stdin);
-		  fflush(stdout);
-		  if (has_colors()) {
-		      lynx_has_color = TRUE;
-		      start_color();
-		  }
-		  lynx_init_colors();
-		  lynx_called_initscr = TRUE;
-
- /* Inform pdcurses that we're interested in knowing when mouse
-    buttons are clicked.  Maybe someday pdcurses will support it.
- */
-	 if (LYUseMouse)
-	      lynx_enable_mouse (1);
+    static BOOLEAN first_time = TRUE;
 
-	 } else sock_init();
+    if(first_time)
+    {
+	initscr();		/* start curses */
+	first_time = FALSE;
+	cbreak();
+	keypad(stdscr, TRUE);
+	fflush(stdin);
+	fflush(stdout);
+	if (has_colors()) {
+	    lynx_has_color = TRUE;
+	    start_color();
+	}
+	lynx_init_colors();
+	lynx_called_initscr = TRUE;
+
+	/* Inform pdcurses that we're interested in knowing when mouse buttons
+	 * are clicked.  Maybe someday pdcurses will support it.
+	 */
+	if (LYUseMouse)
+	    lynx_enable_mouse (1);
+
+    } else
+	sock_init();
 
-	 LYCursesON = TRUE;
-	 clear();
-	 noecho();
+    LYCursesON = TRUE;
+    clear();
+    noecho();
 }
 #else
 PUBLIC void start_curses NOARGS
@@ -655,6 +650,10 @@ PUBLIC void start_curses NOARGS
 
     if (slinit == 0) {
 	SLtt_get_terminfo();
+#ifdef __DJGPP__
+	SLkp_init ();
+#endif /* __DJGPP__ */
+
 #ifdef UNIX
 #if SLANG_VERSION >= 9935
 	SLang_TT_Read_FD = fileno(stdin);
@@ -691,6 +690,7 @@ PUBLIC void start_curses NOARGS
 	}
 	size_change(0);
 
+#if defined(VMS) || defined(UNIX)
 	SLtt_add_color_attribute(4, SLTT_ULINE_MASK);
 	SLtt_add_color_attribute(5, SLTT_ULINE_MASK);
 	/*
@@ -702,7 +702,12 @@ PUBLIC void start_curses NOARGS
 	} else {
 	    SLtt_Blink_Mode = 0;
 	}
+#endif /* VMS || UNIX */
     }
+#ifdef __DJGPP__
+    else sock_init();
+#endif /* __DJGPP__ */
+
     slinit = 1;
     Current_Attr = 0;
 #ifndef VMS
@@ -715,12 +720,14 @@ PUBLIC void start_curses NOARGS
     SLsmg_init_smg();
     SLsmg_Display_Eight_Bit = LYlowest_eightbit[current_char_set];
     if (SLsmg_Display_Eight_Bit > 191)
-       SLsmg_Display_Eight_Bit = 191; /* may print ctrl chars otherwise - kw */
+	SLsmg_Display_Eight_Bit = 191; /* may print ctrl chars otherwise - kw */
     scrollok(0,0);
     SLsmg_Backspace_Moves = 1;
 #ifndef VMS
-#ifndef _WINDOWS
-   SLtty_set_suspend_state(1);
+#if defined(_WINDOWS) || defined(__DJGPP__)
+    /* SLgetkey_map_to_ansi (1); -- FIXME: is this needed? */
+#else
+    SLtty_set_suspend_state(1);
 #endif /* !_WINDOWS */
 #ifdef SIGTSTP
     if (!no_suspend)
@@ -735,7 +742,7 @@ PUBLIC void start_curses NOARGS
 
 #ifdef VMS
     /*
-     *	If we are VMS then do initsrc() everytime start_curses()
+     *	If we are VMS then do initscr() everytime start_curses()
      *	is called!
      */
     initscr();	/* start curses */
@@ -845,29 +852,30 @@ PUBLIC void start_curses NOARGS
 
 PUBLIC void lynx_enable_mouse ARGS1(int,state)
 {
-   if (LYUseMouse == 0)
-     return;
+    if (LYUseMouse == 0)
+	return;
 
 #ifdef USE_SLANG_MOUSE
-   SLtt_set_mouse_mode (state, 0);
-   SLtt_flush_output ();
+    SLtt_set_mouse_mode (state, 0);
+    SLtt_flush_output ();
 #else
 #ifdef NCURSES_MOUSE_VERSION
-     /* Inform ncurses that we're interested in knowing when mouse
-      button 1 is clicked */
+    /* Inform ncurses that we're interested in knowing when mouse
+     * button 1 is clicked */
 #ifndef _WINDOWS
-   if (state)
-     mousemask(BUTTON1_CLICKED | BUTTON3_CLICKED, NULL);
-   else
-     mousemask(0, NULL);
+    if (state)
+	mousemask(BUTTON1_CLICKED | BUTTON3_CLICKED, NULL);
+    else
+	mousemask(0, NULL);
 #else
-   if (state) mouse_set(BUTTON1_CLICKED && BUTTON2_CLICKED && BUTTON3_CLICKED);
+    if (state)
+	mouse_set(BUTTON1_CLICKED && BUTTON2_CLICKED && BUTTON3_CLICKED);
 #endif /* !_WINDOWS */
 #endif /* NCURSES_MOUSE_VERSION */
 
 #if defined(DJGPP) && !defined(USE_SLANG)
-     if (state)
-       mouse_set(BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED);
+    if (state)
+	mouse_set(BUTTON1_CLICKED | BUTTON2_CLICKED | BUTTON3_CLICKED);
 #endif
 #endif				       /* NOT USE_SLANG_MOUSE */
 }
@@ -899,8 +907,8 @@ PUBLIC void stop_curses NOARGS
 
 #if defined(SIGTSTP) && defined(USE_SLANG)
 #ifndef VMS
-   if (!no_suspend)
-       signal(SIGTSTP, SIG_DFL);
+    if (!no_suspend)
+	signal(SIGTSTP, SIG_DFL);
 #endif /* !VMS */
 #endif /* SIGTSTP && USE_SLANG */
 
diff --git a/src/LYCurses.h b/src/LYCurses.h
index 9704e532..9f51e031 100644
--- a/src/LYCurses.h
+++ b/src/LYCurses.h
@@ -188,6 +188,10 @@ extern unsigned int Lynx_Color_Flags;
 #define USE_SLANG_MOUSE		1
 #endif /* USE_SLANG */
 
+#if SLANG_VERSION >= 10000
+#define USE_SLANG_KEYMAPS	1
+#endif
+
 #define SL_LYNX_USE_COLOR	1
 #define SL_LYNX_USE_BLINK	2
 #define SL_LYNX_OVERRIDE_COLOR	4
diff --git a/src/LYGlobalDefs.h b/src/LYGlobalDefs.h
index 44c33b37..2507f81e 100644
--- a/src/LYGlobalDefs.h
+++ b/src/LYGlobalDefs.h
@@ -121,6 +121,7 @@ extern BOOLEAN jump_buffer;     /* TRUE if offering default shortcut */
 extern BOOLEAN goto_buffer;     /* TRUE if offering default goto URL */
 extern char *LYRequestTitle;    /* newdoc.title in calls to getfile() */
 extern char *jumpprompt;        /* The default jump statusline prompt */
+extern int Newline;		/* HText_pageDisplay() requires it */
 extern int more;  /* is there more document to display? */
 extern int display_lines; /* number of lines in the display */
 extern int www_search_result;
@@ -251,6 +252,7 @@ extern BOOLEAN enable_scrollback; /* Clear screen before displaying new page */
 extern BOOLEAN keep_mime_headers; /* Include mime headers and *
 				   * force source dump	      */
 extern BOOLEAN no_url_redirection;   /* Don't follow URL redirections */
+extern BOOLEAN display_partial;      /* Display document during download */
 extern char *form_post_data;         /* User data for post form */
 extern char *form_get_data;          /* User data for get form */
 extern char *http_error_file;        /* Place HTTP status code in this file */
@@ -319,7 +321,6 @@ extern char *MBM_A_subdescript[MBM_V_MAXFILES+1];
 extern FILE *LYTraceLogFP;		/* Pointer for TRACE log	 */
 extern char *LYTraceLogPath;		/* Path for TRACE log		 */
 extern BOOLEAN LYUseTraceLog;		/* Use a TRACE log?		 */
-extern FILE LYOrigStderr;		/* Original stderr pointer	 */
 extern BOOLEAN LYSeekFragMAPinCur;
 extern BOOLEAN LYSeekFragAREAinCur;
 extern BOOLEAN LYStripDotDotURLs;	/* Try to fix ../ in some URLs?  */
diff --git a/src/LYMail.c b/src/LYMail.c
index d355c30a..19132764 100644
--- a/src/LYMail.c
+++ b/src/LYMail.c
@@ -1,3 +1,13 @@
+/*
+ * This file checked for sprintf() buffer overruns on 1998/05/06 by Bela
+ * Lubkin <filbo@armory.com>.  Please don't introduce any new ones...
+ *
+ * See comments marked "- BL" for two still-possible overruns in the VMS
+ * code.
+ *
+ * Not yet checked for any other sort of buffer overrun.
+ */
+
 #include <HTUtils.h>
 #include <tcp.h>
 #include <HTParse.h>
@@ -458,6 +468,8 @@ PUBLIC void mailform ARGS4(
 	 *  command, and ignore any keywords to minimize risk
 	 *  of them making the line too long or having problem
 	 *  characters. - FM
+	 *
+	 *  Possibly still a problem if user supplies long subject. - BL
 	 */
 	sprintf(cmd,
 		"%s %s%s/subject=\"%s\" %s ",
@@ -485,8 +497,12 @@ PUBLIC void mailform ARGS4(
 	 *  4 letters is arbitrarily the smallest possible mail
 	 *  address, at least for lynx.  That way extra spaces
 	 *  won't confuse the mailer and give a blank address.
+	 *
+	 *  ignore addresses so long that they would overflow the
+	 *  temporary buffer (i.e. about 500 chars). - BL
 	 */
-	if (strlen(address_ptr1) > 3) {
+	if (strlen(address_ptr1) > 3 &&
+            strlen(address_ptr1) + strlen(mail_adrs) < sizeof(cmd)) {
 	    if (!first) {
 		StrAllocCat(command, ",");
 	    }
@@ -514,8 +530,12 @@ PUBLIC void mailform ARGS4(
 	     *	4 letters is arbitrarily the smallest possible mail
 	     *	address, at least for lynx.  That way extra spaces
 	     *	won't confuse the mailer and give a blank address.
+	     *
+	     *  ignore addresses so long that they would overflow the
+	     *  temporary buffer (i.e. about 500 chars). - BL
 	     */
-	    if (strlen(address_ptr1) > 3) {
+	    if (strlen(address_ptr1) > 3 &&
+                strlen(address_ptr1) + strlen(mail_adrs) < sizeof(cmd)) {
 		StrAllocCat(command, ",");
 		sprintf(cmd, mail_adrs, address_ptr1);
 		if (isPMDF) {
@@ -536,10 +556,15 @@ PUBLIC void mailform ARGS4(
     remove(my_tmpfile);
     remove(hdrfile);
 #else /* DOSPATH */
-    sprintf(cmd, "%s -t \"%s\" -F %s", system_mail, address, my_tmpfile);
+    StrAllocCopy(command, system_mail);
+    StrAllocCat(command, " -t \"");
+    StrAllocCat(command, address);
+    StrAllocCat(command, "\" -F ");
+    StrAllocCat(command, my_tmpfile);
     stop_curses();
-    printf("Sending form content:\n\n$ %s\n\nPlease wait...", cmd);
-    system(cmd);
+    printf("Sending form content:\n\n$ %s\n\nPlease wait...", command);
+    system(command);
+    FREE(command);
     sleep(MessageSecs);
     start_curses();
     remove(my_tmpfile);
@@ -775,7 +800,16 @@ PUBLIC void mailmsg ARGS4(
 	} else
 	    address_ptr2 = NULL;
 
-	if (strlen(address) > 3) {
+	/*
+	 *  4 letters is arbitrarily the smallest possible mail
+	 *  address, at least for lynx.  That way extra spaces
+	 *  won't confuse the mailer and give a blank address.
+	 *
+	 *  ignore addresses so long that they would overflow the
+	 *  temporary buffer (i.e. about 500 chars). - BL
+	 */
+	if (strlen(address) > 3 &&
+            strlen(address) + strlen(mail_adrs) < sizeof(cmd)) {
 	    if (!first) {
 		StrAllocCat(command, ",");
 	    }
@@ -793,8 +827,13 @@ PUBLIC void mailmsg ARGS4(
 	remove(hdrfile);
     }
 #else /* DOSPATH */
-    sprintf(cmd, "%s -t \"%s\" -F %s", system_mail, address, my_tmpfile);
-    system(cmd);
+    StrAllocCopy(command, system_mail);
+    StrAllocCat(command, " -t \"");
+    StrAllocCat(command, address);
+    StrAllocCat(command, "\" -F ");
+    StrAllocCat(command, my_tmpfile);
+    system(command);
+    FREE(command);
     remove(my_tmpfile);
 #endif
 #endif /* VMS */
@@ -853,11 +892,13 @@ PUBLIC void reply_by_mail ARGS3(
 #ifdef DOSPATH
     char tmpfile2[256];
 #endif
+#if defined(DOSPATH) || defined(VMS)
+    char *command = NULL;
+#endif
     static char *personal_name = NULL;
     char subject[80];
 #ifdef VMS
     char *address_ptr1 = NULL, *address_ptr2 = NULL;
-    char *command = NULL;
     BOOLEAN first = TRUE;
     BOOLEAN isPMDF = FALSE;
     char hdrfile[256];
@@ -1214,8 +1255,9 @@ PUBLIC void reply_by_mail ARGS3(
      *	Put the To: line in the header.
      */
 #ifndef DOSPATH
-    sprintf(buf, "To: %s\n", address);
-    StrAllocCopy(header, buf);
+    StrAllocCopy(header, "To: ");
+    StrAllocCat(header, address);
+    StrAllocCat(header, "\n");
 #endif
 
     /*
@@ -1245,10 +1287,14 @@ PUBLIC void reply_by_mail ARGS3(
     /*
      *	Put the X-URL and X-Mailer lines in the header.
      */
-    sprintf(buf,
-	    "X-URL: %s%s\n",
-	    (filename && *filename) ? filename : "mailto:",
-	    (filename && *filename) ? "" : address);
+    StrAllocCat(header, "X-URL: ");
+    if (filename && *filename) {
+        StrAllocCat(header, filename);
+    }
+    else {
+        StrAllocCat(header, "mailto:");
+        StrAllocCat(header, address);
+    }
     StrAllocCat(header, buf);
     sprintf(buf, "X-Mailer: Lynx, Version %s\n", LYNX_VERSION);
     StrAllocCat(header, buf);
@@ -1349,8 +1395,9 @@ PUBLIC void reply_by_mail ARGS3(
 	fprintf((isPMDF ? hfd : fd),
 		"X-Personal_name: %s\n",user_input);
 #else
-	sprintf(buf, "X-Personal_name: %s\n", user_input);
-	StrAllocCat(header, buf);
+	StrAllocCat(header, "X-Personal_name: ");
+	StrAllocCat(header, user_input);
+	StrAllocCat(header, "\n");
 #endif /* VMS */
     }
 
@@ -1395,8 +1442,9 @@ PUBLIC void reply_by_mail ARGS3(
 	fprintf(fd, "\n");
     }
 #else
-    sprintf(buf, "From: %s\n", user_input);
-    StrAllocCat(header, buf);
+    StrAllocCat(header, "From: ");
+    StrAllocCat(header, user_input);
+    StrAllocCat(header, "\n");
 #endif /* VMS */
 #endif /* !NO_ANONYMOUS_EMAIL */
 #ifdef VMS
@@ -1433,8 +1481,9 @@ PUBLIC void reply_by_mail ARGS3(
 #ifdef VMS
     sprintf(subject, "%.70s", user_input);
 #else
-    sprintf(buf, "Subject: %s\n", user_input);
-    StrAllocCat(header, buf);
+    StrAllocCat(header, "Subject: ");
+    StrAllocCat(header, user_input);
+    StrAllocCat(header, "\n");
 #endif /* VMS */
 
     /*
@@ -1481,8 +1530,9 @@ PUBLIC void reply_by_mail ARGS3(
 
 #ifdef DOSPATH
     if (*address) {
-	sprintf(buf, "To: %s\n", address);
-	StrAllocCat(header, buf);
+        StrAllocCat(header, "To: ");
+        StrAllocCat(header, address);
+        StrAllocCat(header, "\n");
     }
 #endif
 
@@ -1599,9 +1649,9 @@ PUBLIC void reply_by_mail ARGS3(
 		i = (LYlines - 2);
 	    }
 	    *cp++ = '\0';
-	    sprintf(cmd, "%s\n", cp1);
-	    fprintf(fd, cmd);
-	    addstr(cmd);
+	    fprintf(fd, "%s\n", cp1);
+	    addstr(cp1);
+	    addstr("\n");
 	    cp1 = cp;
 	    i--;
 	}
@@ -1726,6 +1776,8 @@ PUBLIC void reply_by_mail ARGS3(
 	 *  command, and ignore any keywords to minimize risk
 	 *  of them making the line too long or having problem
 	 *  characters. - FM
+	 *
+	 *  Possibly still a problem if user supplies long subject. - BL
 	 */
 	sprintf(cmd,
 		"%s %s%s/subject=\"%s\" %s ",
@@ -1753,8 +1805,12 @@ PUBLIC void reply_by_mail ARGS3(
 	 *  4 letters is arbitrarily the smallest possible mail
 	 *  address, at least for lynx.  That way extra spaces
 	 *  won't confuse the mailer and give a blank address.
+	 *
+	 *  ignore addresses so long that they would overflow the
+	 *  temporary buffer (i.e. about 500 chars). - BL
 	 */
-	if (strlen(address_ptr1) > 3) {
+	if (strlen(address_ptr1) > 3 &&
+            strlen(address_ptr1) + strlen(mail_adrs) < sizeof(cmd)) {
 	    if (!first) {
 		StrAllocCat(command, ",");
 	    }
@@ -1782,8 +1838,12 @@ PUBLIC void reply_by_mail ARGS3(
 	     *	4 letters is arbitrarily the smallest possible mail
 	     *	address, at least for lynx.  That way extra spaces
 	     *	won't confuse the mailer and give a blank address.
+	     *
+	     *  ignore addresses so long that they would overflow the
+	     *  temporary buffer (i.e. about 500 chars). - BL
 	     */
-	    if (strlen(address_ptr1) > 3) {
+	    if (strlen(address_ptr1) > 3 &&
+                strlen(address_ptr1) + strlen(mail_adrs) < sizeof(cmd)) {
 		StrAllocCat(command, ",");
 		sprintf(cmd, mail_adrs, address_ptr1);
 		if (isPMDF) {
@@ -1839,14 +1899,19 @@ PUBLIC void reply_by_mail ARGS3(
     while ((n = fread(buf, 1, sizeof(buf), fd)) != 0)
 	fwrite(buf, 1, n, fp);
 #ifdef DOSPATH
-	sprintf(cmd, "%s -t \"%s\" -F %s", system_mail, address, tmpfile2);
-	fclose(fp);		/* Close the tmpfile. */
-	stop_curses();
-	printf("Sending your comment:\n\n$ %s\n\nPlease wait...", cmd);
-	system(cmd);
-	sleep(MessageSecs);
-	start_curses();
-	remove(tmpfile2);	/* Delete the tmpfile. */
+    StrAllocCopy(command, system_mail);
+    StrAllocCat(command, " -t \"");
+    StrAllocCat(command, address);
+    StrAllocCat(command, "\" -F ");
+    StrAllocCat(command, tmpfile2);
+    fclose(fp);		/* Close the tmpfile. */
+    stop_curses();
+    printf("Sending your comment:\n\n$ %s\n\nPlease wait...", command);
+    system(command);
+    FREE(command);
+    sleep(MessageSecs);
+    start_curses();
+    remove(tmpfile2);	/* Delete the tmpfile. */
 #else
     pclose(fp);
 #endif
diff --git a/src/LYMain.c b/src/LYMain.c
index dea33847..449b8931 100644
--- a/src/LYMain.c
+++ b/src/LYMain.c
@@ -34,6 +34,12 @@
 #include <HTDOS.h>
 #endif
 
+#ifdef __DJGPP__
+#ifdef USE_SLANG
+#include <dos.h>
+#endif /* USE_SLANG */
+#endif /* __DJGPP__ */
+
 #ifndef VMS
 #ifdef SYSLOG_REQUESTED_URLS
 #include <syslog.h>
@@ -303,6 +309,7 @@ PUBLIC BOOLEAN LYCancelledFetch = FALSE; /* TRUE if cancelled binary fetch */
 	       /* Include mime headers with source dump */
 PUBLIC BOOLEAN keep_mime_headers = FALSE;
 PUBLIC BOOLEAN no_url_redirection = FALSE; /* Don't follow URL redirections */
+PUBLIC BOOLEAN display_partial = FALSE; /* Display document during download */
 PUBLIC char *form_post_data = NULL;  /* User data for post form */
 PUBLIC char *form_get_data = NULL;   /* User data for get form */
 PUBLIC char *http_error_file = NULL; /* Place HTTP status code in this file */
@@ -358,7 +365,6 @@ PUBLIC BOOL New_DTD = YES;
 PUBLIC FILE *LYTraceLogFP = NULL;		/* Pointer for TRACE log  */
 PUBLIC char *LYTraceLogPath = NULL;		/* Path for TRACE log	   */
 PUBLIC BOOLEAN LYUseTraceLog = USE_TRACE_LOG;	/* Use a TRACE log?	   */
-PUBLIC FILE LYOrigStderr;			/* Original stderr pointer */
 PUBLIC BOOLEAN LYSeekFragMAPinCur = TRUE;
 PUBLIC BOOLEAN LYSeekFragAREAinCur = TRUE;
 
@@ -400,9 +406,25 @@ PRIVATE void FatalProblem PARAMS((int sig));
 #endif
 
 #ifdef __DJGPP__
-void  reset_break()
+PRIVATE int LY_set_ctrl_break(int setting)
+{
+    (void)signal(SIGINT, (setting ? SIG_DFL : SIG_IGN));
+    setcbrk(setting);
+}
+
+PRIVATE int LY_get_ctrl_break(void)
 {
-    PDC_set_ctrl_break(init_ctrl_break[0]);
+    typedef union REGS Regs;
+    extern Regs regs;
+    regs.h.ah = 0x33;
+    regs.h.al = 0x00;
+    int86(0x21, &regs, &regs);
+    return ((int) regs.h.dl);
+}
+
+PRIVATE void reset_break(void)
+{
+    LY_set_ctrl_break(init_ctrl_break[0]);
 }
 #endif /* __DJGPP__ */
 
@@ -555,26 +577,28 @@ PUBLIC int main ARGS2(
 #endif /* _WINDOWS */
 
 #ifdef __DJGPP__
-if (PDC_get_ctrl_break() == 0) {
-    PDC_set_ctrl_break(TRUE);
-    init_ctrl_break[0] = 0;}
-else {init_ctrl_break[0] = 1;}
+    if (LY_get_ctrl_break() == 0) {
+	LY_set_ctrl_break(TRUE);
+	init_ctrl_break[0] = 0;
+    } else {
+	init_ctrl_break[0] = 1;
+    }
     atexit(reset_break);
     sock_init();
 #endif
 
 #if defined(_WINDOWS) || defined(DJGPP)
-	/*
-	 * To prevent corrupting binary data with _WINDOWS and DJGPP
-	 * we open files and stdout in BINARY mode by default.
-	 * Where necessary we should open and (close!) TEXT mode.
-	 */
-	_fmode = O_BINARY;
-	setmode( fileno( stdout ), O_BINARY );
+    /*
+     * To prevent corrupting binary data with _WINDOWS and DJGPP
+     * we open files and stdout in BINARY mode by default.
+     * Where necessary we should open and (close!) TEXT mode.
+     */
+    _fmode = O_BINARY;
+    setmode( fileno( stdout ), O_BINARY );
 #endif
 
 #ifdef DOSPATH
-	if (getenv("TERM")==NULL) putenv("TERM=vt100");
+    if (getenv("TERM")==NULL) putenv("TERM=vt100");
 #endif
 
     LYShowColor = (SHOW_COLOR ? SHOW_COLOR_ON : SHOW_COLOR_OFF);
@@ -1060,7 +1084,6 @@ else {init_ctrl_break[0] = 1;}
     StrAllocCopy(LYTraceLogPath, (Home_Dir() ? Home_Dir() : ""));
     StrAllocCat(LYTraceLogPath, "/Lynx.trace");
 #endif /* VMS */
-    LYOrigStderr = *stderr;
     if (TRACE && LYUseTraceLog) {
 	/*
 	 *  If we can't open it for writing, give up.
@@ -1074,7 +1097,7 @@ else {init_ctrl_break[0] = 1;}
 	    exit(-1);
 	}
 #ifdef VMS
-	fclose(LYTraceLogFP);
+	LYCloseTracelog();
 	while (remove(LYTraceLogPath) == 0)
 	    ;
 	if ((LYTraceLogFP = LYNewTxtFile(LYTraceLogPath)) == NULL) {
@@ -1085,7 +1108,6 @@ else {init_ctrl_break[0] = 1;}
 #endif /* VMS */
 	fflush(stdout);
 	fflush(stderr);
-	*stderr = *LYTraceLogFP;
 	fprintf(tfp, "\t\t%s\n\n", LYNX_TRACELOG_TITLE);
     }
 
@@ -1163,6 +1185,10 @@ else {init_ctrl_break[0] = 1;}
     }
     fclose(fp);
 
+#if defined(USE_SLANG_KEYMAPS) 
+    if (-1 == lynx_initialize_keymaps ()) 
+	exit (-1); 
+#endif 
     /*
      * Make sure we have the character sets declared.
      *	This will initialize the CHARTRANS handling. - KW
@@ -1777,7 +1803,7 @@ typedef union {
  * Storing the four types of data in separate fields costs about 1K of data.
  * However, this provides usable type-checking.  The initial version of the
  * parse_args_type used 'long' for all types, and dumped core when processing
- * "lynx -help".  (The compiler was unable to detect some minor errors). 
+ * "lynx -help".  (The compiler was unable to detect some minor errors).
  */
 #ifdef  PARSE_DEBUG
 #define ParseData BOOLEAN *set_value; int *int_value; char **str_value; ParseFunc fun_value
@@ -2313,7 +2339,7 @@ static int post_data_fun ARGS3(
     char buf[1024];
 
     /*
-     * On Unix, conflicts with curses when interactive so let's force a dump. 
+     * On Unix, conflicts with curses when interactive so let's force a dump.
      * - CL
      *
      * On VMS, mods have been made in LYCurses.c to deal with potential
@@ -2781,6 +2807,10 @@ keys (may be incompatible with some curses packages)"
       "number_links",	SET_ARG,		&number_links,
       "force numbering of links"
    ),
+   PARSE_SET(
+      "partial",	TOGGLE_ARG,		&display_partial,
+      "display partial pages while downloading"
+   ),
    PARSE_FUN(
       "pauth",		NEED_FUNCTION_ARG,	pauth_fun,
       "=id:pw\nauthentication information for protected proxy server"
@@ -2836,7 +2866,7 @@ with the PREV_DOC command or from the History List"
       "require .www_browsable files to browse directories"
    ),
    PARSE_SET(
-      "show_cursor",	UNSET_ARG,		&LYUseDefShoCur,
+      "show_cursor",	TOGGLE_ARG,		&LYUseDefShoCur,
       "toggles hiding of the cursor in the lower right corner"
    ),
    PARSE_SET(
@@ -2990,35 +3020,46 @@ in double-quotes (\"-\") on VMS)");
 /*
  * This function performs a string comparison on two strings a and b.  a is
  * assumed to be an ordinary null terminated string, but b may be terminated
- * by an '=' character.  If terminated by '=', *c will be pointed to the
- * character following the '='.
+ * by an '=', '+' or '-' character.  If terminated by '=', *c will be pointed
+ * to the character following the '='.  If terminated by '+' or '-', *c will
+ * be pointed to that character.  (+/- added for toggle processing - BL.)
  * If a and b match, it returns 1.  Otherwise 0 is returned.
  */
-static int arg_eqs_parse (char *a, char *b, char **c)
+static int arg_eqs_parse ARGS3(
+	char *,		a,
+	char *,		b,
+	char **,	c)
 {
-   while (1)
-     {
-	if (*a != *b)
-	  {
-	     if ((*a == 0) && (*b == '='))
-	       {
-		  *c = b + 1;
-		  return 1;
-	       }
-	     return 0;
-	  }
-
-	if (*a == 0)
-	  {
-	     *c = 0;
-	     return 1;
-	  }
-
+    *c = NULL;
+    while (1) {
+	if ((*a != *b)
+	 || (*a == 0)
+	 || (*b == 0)) {
+	    if (*a == 0) {
+		switch (*b) {
+		case '=':
+		    *c = b + 1;
+		    return 1;
+		case '-':	/* FALLTHRU */
+		case '+':
+		    *c = b;
+		    return 1;
+		case 0:
+		    return 1;
+		default:
+		    return 0;
+		}
+	    } else {
+		return 0;
+	    }
+	}
 	a++;
 	b++;
      }
 }
 
+#define is_true(s)  (*s == '1' || *s == '+' || !strcmp(s, "on"))
+#define is_false(s) (*s == '0' || *s == '-' || !strcmp(s, "off"))
 
 PRIVATE void parse_arg ARGS2(
 	char **,	argv,
@@ -3069,7 +3110,7 @@ PRIVATE void parse_arg ARGS2(
 	ParseUnion *q = (ParseUnion *)(&(p->value));
 #endif
 	ParseFunc fun;
-	char *next_arg;
+	char *next_arg = NULL;
 
 	if ((p->name[0] != *arg_name)
 	    || (0 == arg_eqs_parse (p->name, arg_name, &next_arg))) {
@@ -3084,19 +3125,29 @@ PRIVATE void parse_arg ARGS2(
 	}
 
 	switch (p->type & ARG_TYPE_MASK) {
-	case TOGGLE_ARG:
-	     if (q->set_value != 0)
-	         *(q->set_value) = !(*(q->set_value));
-	     break;
-
-	case SET_ARG:
-	     if (q->set_value != 0)
-	         *(q->set_value) = TRUE;
-	     break;
-
+	case TOGGLE_ARG:	/* FALLTHRU */
+	case SET_ARG:		/* FALLTHRU */
 	case UNSET_ARG:
-	     if (q->set_value != 0)
-	         *(q->set_value) = FALSE;
+	     if (q->set_value != 0) {
+		 if (next_arg == 0) {
+		    switch (p->type & ARG_TYPE_MASK) {
+		    case TOGGLE_ARG:
+			 *(q->set_value) = !(*(q->set_value));
+			 break;
+		    case SET_ARG:
+			 *(q->set_value) = TRUE;
+			 break;
+		    case UNSET_ARG:
+			 *(q->set_value) = FALSE;
+			 break;
+		    }
+		 } else if (is_true(next_arg)) {
+		     *(q->set_value) = TRUE;
+		 } else if (is_false(next_arg)) {
+		     *(q->set_value) = FALSE;
+		 }
+		 /* deliberately ignore anything else - BL */
+	     }
 	     break;
 
 	case FUNCTION_ARG:
diff --git a/src/LYMainLoop.c b/src/LYMainLoop.c
index 51bbb262..6ff7b827 100644
--- a/src/LYMainLoop.c
+++ b/src/LYMainLoop.c
@@ -90,6 +90,8 @@ PUBLIC	HTList * Goto_URLs = NULL;  /* List of Goto URLs */
 
 PUBLIC char * LYRequestTitle = NULL; /* newdoc.title in calls to getfile() */
 
+PUBLIC int Newline = 0; /* HText_pageDisplay() requires it */
+
 PRIVATE document newdoc;
 PRIVATE document curdoc;
 PRIVATE char *traversal_host = NULL;
@@ -129,6 +131,46 @@ PRIVATE void free_mainloop_variables NOARGS
     return;
 }
 
+PUBLIC FILE *TraceFP NOARGS
+{
+    if (LYTraceLogFP != 0) {
+	return LYTraceLogFP;
+    }
+    return stderr;
+}
+
+PRIVATE void TracelogOpenFailed NOARGS
+{
+    WWW_TraceFlag = FALSE;
+    _statusline(TRACELOG_OPEN_FAILED);
+    sleep(MessageSecs);
+}
+
+PUBLIC void LYCloseTracelog NOARGS
+{
+    if (LYTraceLogFP != 0) {
+	fflush(stdout);
+	fflush(stderr);
+	fclose(LYTraceLogFP);
+	LYTraceLogFP = 0;
+    }
+}
+
+PRIVATE BOOLEAN LYReopenTracelog ARGS1(BOOLEAN *, trace_flag_ptr)
+{
+    CTRACE(tfp, "\nTurning off TRACE for fetch of log.\n");
+    LYCloseTracelog();
+    if ((LYTraceLogFP = LYAppendToTxtFile(LYTraceLogPath)) == NULL) {
+	TracelogOpenFailed();
+	return FALSE;
+    }
+    if (TRACE) {
+	WWW_TraceFlag = FALSE;
+	*trace_flag_ptr = TRUE;
+    }
+    return TRUE;
+}
+
 /*
  *  Here's where we do all the work.
  *  mainloop is basically just a big switch dependent on the users input.
@@ -145,7 +187,6 @@ int mainloop NOARGS
     int getresult;
     int arrowup = FALSE, show_help = FALSE;
     int lines_in_file = -1;
-    int Newline = 0;
     char prev_target[512];
     char user_input_buffer[1024];
     char *owner_address = NULL;  /* Holds the responsible owner's address     */
@@ -164,6 +205,8 @@ int mainloop NOARGS
     BOOLEAN user_mode_flag = user_mode;
     BOOLEAN HTfileSortMethod_flag = HTfileSortMethod;
     int CurrentCharSet_flag = current_char_set;
+    int CurrentAssumeCharSet_flag = UCLYhndl_for_unspec;
+    int CurrentAssumeLocalCharSet_flag = UCLYhndl_HTFile_for_unspec;
     BOOLEAN show_dotfiles_flag = show_dotfiles;
     BOOLEAN LYRawMode_flag = LYRawMode;
     BOOLEAN LYSelectPopups_flag = LYSelectPopups;
@@ -430,24 +473,11 @@ try_again:
 		    WWWDoc.safe = newdoc.safe;
 		    tmpanchor = HTAnchor_parent(HTAnchor_findAddress(&WWWDoc));
 		    if ((HText *)HTAnchor_document(tmpanchor) == NULL) {
-			CTRACE(tfp, "\nTurning off TRACE for fetch of log.\n");
-			fflush(stdout);
-			fflush(stderr);
-			fclose(LYTraceLogFP);
-			*stderr = LYOrigStderr;
-			if ((LYTraceLogFP = LYAppendToTxtFile(LYTraceLogPath)) == NULL) {
-			    WWW_TraceFlag = FALSE;
-			    _statusline(TRACELOG_OPEN_FAILED);
-			    sleep(MessageSecs);
+			if (!LYReopenTracelog(&trace_mode_flag)) {
 			    old_c = 0;
 			    cmd = LYK_PREV_DOC;
 			    goto new_cmd;
 			}
-			*stderr = *LYTraceLogFP;
-			if (TRACE) {
-			    WWW_TraceFlag = FALSE;
-			    trace_mode_flag = TRUE;
-			}
 		    }
 		}
 
@@ -3744,6 +3774,8 @@ check_goto_URL:
 		 (!strncmp(curdoc.address, "file:", 5) ||
 		  !strncmp(curdoc.address, "ftp:", 4))) ||
 		CurrentCharSet_flag != current_char_set ||
+		CurrentAssumeCharSet_flag != UCLYhndl_for_unspec ||
+		CurrentAssumeLocalCharSet_flag != UCLYhndl_HTFile_for_unspec ||
 		LYRawMode_flag != LYRawMode ||
 		LYSelectPopups_flag != LYSelectPopups ||
 		((strcmp(CurrentUserAgent, (LYUserAgent ?
@@ -3815,6 +3847,8 @@ check_goto_URL:
 	    user_mode_flag = user_mode;
 	    HTfileSortMethod_flag = HTfileSortMethod;
 	    CurrentCharSet_flag = current_char_set;
+	    CurrentAssumeCharSet_flag = UCLYhndl_for_unspec;
+	    CurrentAssumeLocalCharSet_flag = UCLYhndl_HTFile_for_unspec;
 	    show_dotfiles_flag = show_dotfiles;
 	    LYRawMode_flag = LYRawMode;
 	    LYSelectPopups_flag = LYSelectPopups;
@@ -4803,12 +4837,6 @@ check_add_bookmark_to_self:
 		printf(SPAWNING_MSG);
 		fflush(stdout);
 		fflush(stderr);
-		if (LYTraceLogFP)
-		    /*
-		     *	Set stderr back to its original value
-		     *	during the shell escape. - FM
-		     */
-		    *stderr = LYOrigStderr;
 #ifdef DOSPATH
 #ifdef __DJGPP__
 		__djgpp_set_ctrl_c(0);
@@ -4838,12 +4866,6 @@ check_add_bookmark_to_self:
 #endif /* __EMX__ */
 #endif /* VMS */
 #endif /* DOSPATH */
-		if (LYTraceLogFP)
-		    /*
-		     *	Set stderr back to the log file on
-		     *	return from the shell escape. - FM
-		     */
-		    *stderr = *LYTraceLogFP;
 		start_curses();
 		refresh_screen = TRUE;	/* for an HText_pageDisplay() */
 	    } else {
@@ -5098,24 +5120,19 @@ check_add_bookmark_to_self:
 		 *  command. - FM
 		 */
 		if ((LYTraceLogFP = LYNewTxtFile(LYTraceLogPath)) == NULL) {
-		    WWW_TraceFlag = FALSE;
-		    _statusline(TRACELOG_OPEN_FAILED);
-		    sleep(MessageSecs);
+		    TracelogOpenFailed();
 		    break;
 		}
 #ifdef VMS
-		fclose(LYTraceLogFP);
+		LYCloseTracelog();
 		while (remove(LYTraceLogPath) == 0)
 		    ;
 		if ((LYTraceLogFP = LYNewTxtFile(LYTraceLogPath)) == NULL) {
-		    WWW_TraceFlag == FALSE;
-		    _statusline(TRACELOG_OPEN_FAILED);
-		    sleep(MessageSecs);
+		    TracelogOpenFailed();
 		    break;
 		}
 #endif /* VMS */
-		*stderr = *LYTraceLogFP;
-		fprintf(stderr, "\t\t%s\n\n", LYNX_TRACELOG_TITLE);
+		fprintf(tfp, "\t\t%s\n\n", LYNX_TRACELOG_TITLE);
 	    }
 	    break;
 
@@ -5148,22 +5165,9 @@ check_add_bookmark_to_self:
 	     *	and open it again, to make sure all stderr messages thus
 	     *	far will be in the log. - FM
 	     */
-	    CTRACE(tfp, "\nTurning off TRACE for fetch of log.\n");
-	    fflush(stdout);
-	    fflush(stderr);
-	    fclose(LYTraceLogFP);
-	    *stderr = LYOrigStderr;
-	    if ((LYTraceLogFP = LYAppendToTxtFile(LYTraceLogPath)) == NULL) {
-		WWW_TraceFlag = FALSE;
-		_statusline(TRACELOG_OPEN_FAILED);
-		sleep(MessageSecs);
+	    if (!LYReopenTracelog(&trace_mode_flag))
 		break;
-	    }
-	    *stderr = *LYTraceLogFP;
-	    if (TRACE) {
-		WWW_TraceFlag = FALSE;
-		trace_mode_flag = TRUE;
-	    }
+
 	    StrAllocCopy(newdoc.address, "file://localhost");
 #ifdef VMS
 	    StrAllocCat(newdoc.address, HTVMS_wwwName(LYTraceLogPath));
diff --git a/src/LYMainLoop.h b/src/LYMainLoop.h
index b3a5bd99..8a501234 100644
--- a/src/LYMainLoop.h
+++ b/src/LYMainLoop.h
@@ -2,6 +2,7 @@
 #ifndef LYMAINLOOP_H
 #define LYMAINLOOP_H
 
+extern void LYCloseTracelog NOPARAMS;
 extern int mainloop NOPARAMS;
 
 #endif /* LYMAINLOOP_H */
diff --git a/src/LYOptions.c b/src/LYOptions.c
index b218ee25..c763b853 100644
--- a/src/LYOptions.c
+++ b/src/LYOptions.c
@@ -122,8 +122,9 @@ PUBLIC void options NOARGS
 #endif /* !VMS */
     char *choices[MAXCHOICES];
     int CurrentCharSet = current_char_set;
-    int CurrentShowColor = LYShowColor;
     int CurrentAssumeCharSet = UCLYhndl_for_unspec;
+    int CurrentAssumeLocalCharSet = UCLYhndl_HTFile_for_unspec;
+    int CurrentShowColor = LYShowColor;
     BOOLEAN CurrentRawMode = LYRawMode;
     BOOLEAN AddValueAccepted = FALSE;
     char *cp = NULL;
@@ -841,6 +842,7 @@ draw_options:
 			HTMLSetUseDefaultRawMode(current_char_set, LYRawMode);
 			HTMLUseCharacterSet(current_char_set);
 			CurrentAssumeCharSet = UCLYhndl_for_unspec;
+			CurrentAssumeLocalCharSet = UCLYhndl_HTFile_for_unspec;
 			CurrentRawMode = LYRawMode;
 #if !defined(VMS) && !defined(USE_SLANG)
 			if (!LYSelectPopups)
diff --git a/src/LYReadCFG.c b/src/LYReadCFG.c
index be9acfa6..a8e1ac67 100644
--- a/src/LYReadCFG.c
+++ b/src/LYReadCFG.c
@@ -888,6 +888,9 @@ static Config_Type Config_Table [] =
      PARSE_SET("no_ismap_if_usemap", CONF_BOOL, LYNoISMAPifUSEMAP),
      PARSE_STR("no_proxy", CONF_ENV, no_proxy_putenv_cmd ),
      PARSE_SET("no_referer_header", CONF_BOOL, LYNoRefererHeader),
+#ifdef DISP_PARTIAL
+     PARSE_SET("partial", CONF_BOOL, display_partial),
+#endif
      PARSE_STR("personal_mailcap", CONF_STR, personal_type_map),
      PARSE_STR("personal_extension_map", CONF_STR, personal_extension_map),
      PARSE_STR("preferred_charset", CONF_STR, pref_charset),
diff --git a/src/LYStrings.c b/src/LYStrings.c
index f3bb9b55..b39603fa 100644
--- a/src/LYStrings.c
+++ b/src/LYStrings.c
@@ -232,7 +232,11 @@ PUBLIC int LYmbcsstrlen ARGS2(
 #ifdef VMS
 #define GetChar() ttgetc()
 #else
+#ifdef __DJGPP__
+#define GetChar SLkp_getkey
+#else
 #define GetChar (int)SLang_getkey
+#endif /* __DJGPP__ */
 #endif /* VMS */
 #endif /* USE_SLANG */
 
@@ -315,12 +319,248 @@ PRIVATE int map_function_to_key ARGS1(char, keysym)
 }
 #endif
 
+#if defined(USE_SLANG_MOUSE)
+PRIVATE int sl_read_mouse_event NOARGS
+{
+   int mouse_x, mouse_y, button;
+
+   mouse_link = -1;
+   if (-1 != sl_parse_mouse_event (&mouse_x, &mouse_y, &button))
+     {
+	if (button == 0)  /* left */
+	  return set_clicked_link (mouse_x, mouse_y);
+
+	if (button == 2)   /* right */
+	  {
+	     /* Right button: go back to prev document.
+	      * The problem is that we need to determine
+	      * what to return to achieve this.
+	      */
+	     return map_function_to_key (LYK_PREV_DOC);
+	  }
+     }
+   return -1;
+}
+#endif
+
 PRIVATE BOOLEAN csi_is_csi = TRUE;
 PUBLIC void ena_csi ARGS1(
     BOOLEAN,	flag)
 {
     csi_is_csi = flag;
 }
+
+#if defined(USE_SLANG_KEYMAPS)
+static SLKeyMap_List_Type *Keymap_List;
+
+/* This value should be larger than anything in LYStrings.h */
+#define MOUSE_KEYSYM 0x1000
+
+typedef struct
+{
+   char *name;
+   int keysym;
+}
+Keysym_String_List;
+
+static Keysym_String_List Keysym_Strings [] =
+{
+   {"UPARROW",		UPARROW},
+   {"DNARROW",		DNARROW},
+   {"RTARROW",		RTARROW},
+   {"LTARROW",		LTARROW},
+   {"PGDOWN",		PGDOWN},
+   {"PGUP",		PGUP},
+   {"HOME",		HOME},
+   {"END",		END_KEY},
+   {"F1",		F1},
+   {"DO_KEY",		DO_KEY},
+   {"FIND_KEY",		FIND_KEY},
+   {"SELECT_KEY",	SELECT_KEY},
+   {"INSERT_KEY",	INSERT_KEY},
+   {"REMOVE_KEY",	REMOVE_KEY},
+   {"DO_NOTHING",	DO_NOTHING},
+   {NULL, -1}
+};
+
+static int map_string_to_keysym (char *str, int *keysym)
+{
+   Keysym_String_List *k;
+
+   k = Keysym_Strings;
+   while (k->name != NULL)
+     {
+	if (0 == strcmp (k->name, str))
+	  {
+	     *keysym = k->keysym;
+	     return 0;
+	  }
+	k++;
+     }
+   fprintf (stderr, "Keysym %s is unknown\n", str);
+   *keysym = -1;
+   return -1;
+}
+
+
+/* The second argument may either be a string or and integer */
+static int setkey_cmd (int argc GCC_UNUSED, SLcmd_Cmd_Table_Type *table)
+{
+   char *keyseq;
+   int keysym;
+
+   keyseq = table->string_args [1];
+   switch (table->arg_type[2])
+     {
+      case SLANG_INT_TYPE:
+	keysym = table->int_args[2];
+	break;
+
+      case SLANG_STRING_TYPE:
+        if (-1 == map_string_to_keysym (table->string_args[2], &keysym))
+	  return -1;
+	break;
+
+      default:
+	return -1;
+     }
+
+   return SLkm_define_keysym (keyseq, keysym, Keymap_List);
+}
+
+static int unsetkey_cmd (int argc GCC_UNUSED, SLcmd_Cmd_Table_Type *table)
+{
+   SLang_undefine_key (table->string_args[1], Keymap_List);
+   if (SLang_Error) return -1;
+   return 0;
+}
+
+static SLcmd_Cmd_Type Keymap_Cmd_Table [] =
+{
+   {setkey_cmd,   "setkey",   "SG"},
+   {unsetkey_cmd, "unsetkey", "S"},
+   {NULL}
+};
+
+static int read_keymap_file NOARGS
+{
+   char line[1024];
+   FILE *fp;
+   char file[1024];
+   char *home;
+   char *keymap_file;
+   int ret;
+   SLcmd_Cmd_Table_Type tbl;
+   int linenum;
+
+#ifdef VMS
+   keymap_file = "lynx.keymaps";
+   home = "SYS$LOGIN:";
+#else
+   keymap_file = "/.lynx-keymaps";
+   home = getenv ("HOME");
+   if (home == NULL) home = "";
+#endif
+
+   sprintf (file, "%s%s", home, keymap_file);
+
+   if (NULL == (fp = fopen (file, "r")))
+     return 0;
+
+   tbl.table = Keymap_Cmd_Table;
+
+   linenum = 0;
+   ret = 0;
+   while (NULL != fgets (line, sizeof (line), fp))
+     {
+	char *s = LYSkipBlanks(line);
+
+	linenum++;
+
+	if ((*s == 0) || (*s == '#'))
+	  continue;
+
+	if (-1 == SLcmd_execute_string (s, &tbl))
+	  {
+	     ret = -1;
+	     break;
+	  }
+     }
+
+   fclose (fp);
+
+   if (ret == -1)
+     fprintf (stderr, "Error processing line %d of %s\n", linenum, file);
+
+   return ret;
+}
+
+int lynx_initialize_keymaps NOARGS
+{
+   int i;
+   char keybuf[2];
+
+   if (NULL == (Keymap_List = SLang_create_keymap ("Lynx", NULL)))
+     return -1;
+
+   keybuf[1] = 0;
+   for (i = 1; i < 256; i++)
+     {
+	keybuf[0] = (char) i;
+	SLkm_define_keysym (keybuf, i, Keymap_List);
+     }
+
+   SLkm_define_keysym ("\033[A",   UPARROW,    Keymap_List);
+   SLkm_define_keysym ("\033OA",   UPARROW,    Keymap_List);
+   SLkm_define_keysym ("\033[B",   DNARROW,    Keymap_List);
+   SLkm_define_keysym ("\033OB",   DNARROW,    Keymap_List);
+   SLkm_define_keysym ("\033[C",   RTARROW,    Keymap_List);
+   SLkm_define_keysym ("\033OC",   RTARROW,    Keymap_List);
+   SLkm_define_keysym ("\033[D",   LTARROW,    Keymap_List);
+   SLkm_define_keysym ("\033OD",   LTARROW,    Keymap_List);
+   SLkm_define_keysym ("\033[1~",  FIND_KEY,   Keymap_List);
+   SLkm_define_keysym ("\033[2~",  INSERT_KEY, Keymap_List);
+   SLkm_define_keysym ("\033[3~",  REMOVE_KEY, Keymap_List);
+   SLkm_define_keysym ("\033[4~",  SELECT_KEY, Keymap_List);
+   SLkm_define_keysym ("\033[5~",  PGUP,       Keymap_List);
+   SLkm_define_keysym ("\033[6~",  PGDOWN,     Keymap_List);
+   SLkm_define_keysym ("\033[8~",  END_KEY,    Keymap_List);
+   SLkm_define_keysym ("\033[7~",  HOME,       Keymap_List);
+   SLkm_define_keysym ("\033[28~", F1,         Keymap_List);
+   SLkm_define_keysym ("\033[29~", DO_KEY,     Keymap_List);
+
+   SLkm_define_keysym ("\033[M", MOUSE_KEYSYM, Keymap_List);
+
+   if (SLang_Error
+       || (-1 == read_keymap_file ()))
+     SLang_exit_error ("Unable to initialize keymaps");
+
+   return 0;
+}
+
+int LYgetch (void)
+{
+   SLang_Key_Type *key;
+   int keysym;
+
+   key = SLang_do_key (Keymap_List, (int (*)(void)) GetChar);
+   if ((key == NULL) || (key->type != SLKEY_F_KEYSYM))
+     return DO_NOTHING;
+
+   keysym = key->f.keysym;
+
+#if defined (USE_SLANG_MOUSE)
+   if (keysym == MOUSE_KEYSYM)
+     return sl_read_mouse_event ();
+#endif
+
+   if ((keysym > DO_NOTHING) || (keysym < 0))
+     return 0;
+
+   return keysym;
+}
+#else
+
 /*
  *  LYgetch() translates some escape sequences and may fake noecho.
  */
@@ -353,6 +593,10 @@ re_read:
    }
 #endif /* !USE_SLANG || VMS */
 
+/* The RAWDOSKEYHACK takes key definitions from curses.h (when using
+ * PDCURSES) or from the DJGPP file keys.h (when using SLANG) and maps
+ * them to the values used by the lynx file LYKeymap.c. */
+
 #ifdef RAWDOSKEYHACK
     if (raw_dos_key_hack) {
 	if (c == 0) c = '/';
@@ -444,23 +688,7 @@ re_read:
 #ifdef USE_SLANG_MOUSE
 	   if ((c == 27) && (b == '['))
 	     {
-		int mouse_x, mouse_y, button;
-
-		mouse_link = -1;
-		c = -1;
-		if (-1 != sl_parse_mouse_event (&mouse_x, &mouse_y, &button))
-		  {
-		     if (button == 0)  /* left */
-		       c = set_clicked_link (mouse_x, mouse_y);
-		     else if (button == 2)   /* right */
-		       {
-			  /* Right button: go back to prev document.
-			   * The problem is that we need to determine
-			   * what to return to achieve this.
-			   */
-			  c = map_function_to_key (LYK_PREV_DOC);
-		       }
-		  }
+		c = sl_read_mouse_event ();
 	     }
 	   else
 #endif
@@ -554,6 +782,49 @@ re_read:
 	if (isdigit(a) && (b == '[' || c == 155) && d != -1 && d != '~')
 	    d = GetChar();
     }
+#if defined(__DJGPP__) && defined(USE_SLANG)
+    else { /* SLang keypad interface */
+	switch (c) {
+	case SL_KEY_UP:
+	    c = UPARROW;
+	    break;
+	case SL_KEY_DOWN:
+	    c = DNARROW;
+	    break;
+	case SL_KEY_RIGHT:
+	    c = RTARROW;
+	    break;
+	case SL_KEY_B2:
+	    c = DO_NOTHING;
+	    break;
+	case SL_KEY_LEFT:
+	    c = LTARROW;
+	    break;
+	case SL_KEY_PPAGE:
+	case SL_KEY_A3:
+	    c = PGUP;
+	    break;
+	case SL_KEY_NPAGE:
+	case SL_KEY_C3:
+	    c = PGDOWN;
+	    break;
+	case SL_KEY_HOME:
+	case SL_KEY_A1:
+	    c = HOME;
+	    break;
+	case SL_KEY_END:
+	case SL_KEY_C1:
+	    c = END_KEY;
+	    break;
+	case SL_KEY_F(1):
+	    c = F1;
+	    break;
+	case SL_KEY_BACKSPACE:
+	    c = 127;
+	    break;
+	}
+    }
+#endif
 #if HAVE_KEYPAD
     else {
 	/*
@@ -708,11 +979,13 @@ re_read:
     }
 }
 
+#endif				       /* NOT USE_SLANG_KEYMAPS */
+
 /*
  * Convert a null-terminated string to lowercase
  */
 PUBLIC void LYLowerCase ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     size_t i;
     for (i = 0; buffer[i]; i++)
@@ -723,7 +996,7 @@ PUBLIC void LYLowerCase ARGS1(
  * Convert a null-terminated string to uppercase
  */
 PUBLIC void LYUpperCase ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     size_t i;
     for (i = 0; buffer[i]; i++)
@@ -734,7 +1007,7 @@ PUBLIC void LYUpperCase ARGS1(
  * Remove ALL whitespace from a string (including embedded blanks).
  */
 PUBLIC void LYRemoveBlanks ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     if (buffer != 0) {
 	size_t i, j;
@@ -749,10 +1022,10 @@ PUBLIC void LYRemoveBlanks ARGS1(
  * Skip whitespace
  */
 PUBLIC char * LYSkipBlanks ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     while (isspace((unsigned char)(*buffer)))
-    	buffer++;
+	buffer++;
     return buffer;
 }
 
@@ -760,10 +1033,10 @@ PUBLIC char * LYSkipBlanks ARGS1(
  * Skip non-whitespace
  */
 PUBLIC char * LYSkipNonBlanks ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     while (*buffer != 0 && !isspace((unsigned char)(*buffer)))
-    	buffer++;
+	buffer++;
     return buffer;
 }
 
@@ -774,7 +1047,7 @@ PUBLIC CONST char * LYSkipCBlanks ARGS1(
 	CONST char *,	buffer)
 {
     while (isspace((unsigned char)(*buffer)))
-    	buffer++;
+	buffer++;
     return buffer;
 }
 
@@ -785,7 +1058,7 @@ PUBLIC CONST char * LYSkipCNonBlanks ARGS1(
 	CONST char *,	buffer)
 {
     while (*buffer != 0 && !isspace((unsigned char)(*buffer)))
-    	buffer++;
+	buffer++;
     return buffer;
 }
 
@@ -793,22 +1066,22 @@ PUBLIC CONST char * LYSkipCNonBlanks ARGS1(
  * Trim leading blanks from a string
  */
 PUBLIC void LYTrimLeading ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     char *skipped = LYSkipBlanks(buffer);
     while ((*buffer++ = *skipped++) != 0)
-    	;
+	;
 }
 
 /*
  * Trim trailing blanks from a string
  */
 PUBLIC void LYTrimTrailing ARGS1(
-	char *,		buffer)
+	char *, 	buffer)
 {
     size_t i = strlen(buffer);
     while (i != 0 && isspace((unsigned char)buffer[i-1]))
-    	buffer[--i] = 0;
+	buffer[--i] = 0;
 }
 
 /*
@@ -1701,7 +1974,6 @@ PUBLIC char * SNACat ARGS3(
     return *dest;
 }
 
-
 /*
 **   UPPER8 ?
 **   it was "TOUPPER(a) - TOUPPER(b)" in its previous life...
diff --git a/src/LYStrings.h b/src/LYStrings.h
index deb6343f..11eba6c1 100644
--- a/src/LYStrings.h
+++ b/src/LYStrings.h
@@ -67,8 +67,6 @@ extern char * SNACat PARAMS((
 #define StrnAllocCopy(dest, src, n)  SNACopy (&(dest), src, n)
 #define StrnAllocCat(dest, src, n)   SNACat  (&(dest), src, n)
 
-#define printable(c) (((c)>31 && (c)<=255) || (c)==9 || (c)==10 || (c)<0 )
-
 /* values for LYgetch */
 #define UPARROW		256	/* 0x100 */
 #define DNARROW		257	/* 0x101 */
diff --git a/src/LYUtils.c b/src/LYUtils.c
index 57fe0a18..a6053827 100644
--- a/src/LYUtils.c
+++ b/src/LYUtils.c
@@ -16,6 +16,9 @@
 #ifdef DOSPATH
 #include <HTDOS.h>
 #endif
+#ifdef DISP_PARTIAL
+#include <LYKeymap.h>
+#endif /* DISP_PARTIAL */
 #ifdef VMS
 #include <descrip.h>
 #include <libclidef.h>
@@ -2093,6 +2096,43 @@ PUBLIC int HTCheckForInterrupt NOARGS
 #endif /* DOSPATH */
     if (TOUPPER(c) == 'Z' || c == 7 || c == 3)
 	return((int)TRUE);
+#ifdef DISP_PARTIAL
+    else if (display_partial)
+    {
+	switch (keymap[c+1])
+	{
+	case LYK_PREV_PAGE :
+	    if (Newline > 1)
+		Newline -= display_lines ;
+	    break ;
+	case LYK_NEXT_PAGE :
+	    if (HText_canScrollDown())
+		Newline += display_lines ;
+	    break ;
+	case LYK_UP_TWO :
+	    if (Newline > 1)
+		Newline -= 2 ;
+	    break ;
+	case LYK_DOWN_TWO :
+	    if (HText_canScrollDown())
+		Newline += 2 ;
+	    break ;
+	case LYK_HOME:
+	    if (Newline > 1)
+		Newline = 1;
+	    break;
+	case LYK_END:
+	    if (HText_canScrollDown())
+		Newline = MAXINT;
+	    break;
+	case LYK_REFRESH :
+	    break ;
+	default :
+	    return ((int)FALSE) ;
+	}
+	HText_pageDisplay(Newline, "");
+    }
+#endif /* DISP_PARTIAL */
 
     /** Other keystrokes **/
     return((int)FALSE);
@@ -2778,7 +2818,9 @@ PUBLIC void size_change ARGS1(
     int old_cols = LYcols;
 
 #ifdef USE_SLANG
+#if defined(VMS) || defined(UNIX) 
     SLtt_get_screen_size();
+#endif /* VMS || UNIX */ 
     LYlines = SLtt_Screen_Rows;
     LYcols  = SLtt_Screen_Cols;
 #ifdef SLANG_MBCS_HACK
@@ -3914,7 +3956,11 @@ have_VMS_URL:
 	     */
 #if defined (DOSPATH) || defined (__EMX__)
 	    if (old_string[1] != ':' && old_string[1] != '|') {
+#ifdef DOSPATH
 		StrAllocCopy(temp, HTDOS_wwwName(curdir));
+#else
+		StrAllocCopy(temp, curdir);
+#endif
 		if(curdir[strlen(curdir)-1] != '/')
 		    StrAllocCat(temp, "/");
 		LYstrncpy(curdir, temp, (DIRNAMESIZE - 1));
diff --git a/src/LYexit.c b/src/LYexit.c
index 16e1ce9c..d60e62f5 100644
--- a/src/LYexit.c
+++ b/src/LYexit.c
@@ -9,6 +9,7 @@
 #include <LYUtils.h>
 #include <LYSignal.h>
 #include <LYClean.h>
+#include <LYMainLoop.h>
 #ifdef SYSLOG_REQUESTED_URLS
 #include <syslog.h>
 #endif /* SYSLOG_REQUESTED_URLS */
@@ -113,13 +114,7 @@ PUBLIC void LYexit ARGS1(
 	printf("\r\n%s\r\n\r\n", MEMORY_EXHAUSTED_ABORT);
 	fflush(stdout);
     }
-    if (LYTraceLogFP != NULL) {
-	fflush(stdout);
-	fflush(stderr);
-	fclose(LYTraceLogFP);
-	LYTraceLogFP = NULL;
-	*stderr = LYOrigStderr;
-    }
+    LYCloseTracelog();
 #endif /* !VMS */
     exit(status);
 }
diff --git a/src/chrtrans/def7_uni.tbl b/src/chrtrans/def7_uni.tbl
index 01b86d7a..cd62c186 100644
--- a/src/chrtrans/def7_uni.tbl
+++ b/src/chrtrans/def7_uni.tbl
@@ -2177,12 +2177,12 @@ U+001d:GS
 U+001e:RS
 U+001f:US
 U+007f:DT
-U+0080:PA
-U+0081:HO
 # Most of these characters (82-9F) may be inflicted on us
 # by MS FrontPages which uses Unicode notation such as &#153;
 # but there are no assigned letters in Unicode 128-159 range.
 # It is assumed in the code that those codepoints are from windows-1252.
+#U+0080:PA
+#U+0081:HO
 #U+0082:BH
 #U+0083:NH
 #U+0084:IN
@@ -2194,10 +2194,10 @@ U+0081:HO
 #U+008a:VS
 #U+008b:PD
 #U+008c:PU
-U+008d:RI
-U+008e:SS2
-U+008f:SS3
-U+0090:DCS
+#U+008d:RI
+#U+008e:SS2
+#U+008f:SS3
+#U+0090:DCS
 #U+0091:P1
 #U+0092:P2
 #U+0093:TS
@@ -2207,7 +2207,7 @@ U+0090:DCS
 #U+0097:EG
 #U+0098:SS
 #U+0099:GC
-U+009a:SC
+#U+009a:SC
 #U+009b:CSI
 #U+009c:ST
 #U+009d:OC
diff --git a/src/makefile.dsl b/src/makefile.dsl
new file mode 100644
index 00000000..5623bc65
--- /dev/null
+++ b/src/makefile.dsl
@@ -0,0 +1,65 @@
+OBJS= UCdomap.o UCAux.o UCAuto.o \

+LYClean.o LYShowInfo.o LYEdit.o LYStrings.o \

+LYMail.o HTAlert.o GridText.o LYGetFile.o \

+LYMain.o LYMainLoop.o LYCurses.o LYBookmark.o LYUtils.o \

+LYOptions.o LYReadCFG.o LYSearch.o LYHistory.o \

+LYForms.o LYPrint.o LYrcFile.o LYDownload.o LYNews.o LYKeymap.o \

+HTML.o HTFWriter.o HTInit.o DefaultStyle.o LYLocal.o LYUpload.o \

+LYLeaks.o LYexit.o LYJump.o LYList.o LYCgi.o LYTraversal.o \

+LYEditmap.o LYCharSets.o LYCharUtils.o LYMap.o LYCookie.o LYExtern.o \

+LYStyle.o LYHash.o

+

+SLANGINC = -I/slang/src

+SLANGLIB = /slang/src/djgobjs/libslang.a

+CFLAGS= $(MCFLAGS) -I. -I.. $(SLANGINC)

+

+CC = gcc

+MCFLAGS = -O3 -DRAWDOSKEYHACK -DUSE_ZLIB -DUSE_EXTERNALS -DUSE_SLANG -DACCESS_AUTH -DNO_CUSERID -DNOUSERS -DDOSPATH -DNO_TTYTYPE -DNO_UTMP -Ichrtrans -I../WWW/library/implementation   -I../djgpp/tcplib/include -I../djgpp/tcplib/include/tcp

+WWWLIB = ../WWW/library/djgpp/libwww.a  ../djgpp/tcplib/obj/libtcp.a

+LIBS=-lz -lwmemu

+

+all: lynx.exe

+

+lynx.exe:   message $(OBJS) $(WWWLIB)

+	@echo "Linking and creating Lynx executable"

+	$(CC) $(CFLAGS) -o lynx.exe  $(OBJS) $(WWWLIB) $(SLANGLIB) $(LIBS)

+	@echo "Welcome to Lynx!"

+

+message:

+	@echo "Compiling Lynx sources"

+

+dbg:	$(OBJS) $(WWWLIB)

+	@echo "Making Lynx code"

+	$(CC) -g $(OBJS) $(CFLAGS) $(WWWLIB) $(SLANGLIB) $(LIBS)

+

+lint:

+	lint *.c  > ../lint.out

+

+clean:

+	rm -f lynx.exe core *.[ob]

+

+LYMain.o: ../userdefs.h

+LYMainLoop.o: LYMainLoop.c ../userdefs.h

+LYReadCFG.o: LYReadCFG.c ../userdefs.h

+HTFWriter.o: HTFWriter.c ../userdefs.h

+LYGetFile.o: LYGetFile.c ../userdefs.h

+LYOptions.o: LYOptions.c ../userdefs.h

+LYReadCFG.o: LYReadCFG.c ../userdefs.h

+LYTraversal.o: LYTraversal.c ../userdefs.h

+LYCharSets.o: LYCharSets.c ../userdefs.h

+LYShowInfo.o: LYShowInfo.c ../userdefs.h

+LYStrings.o: LYStrings.c ../userdefs.h

+LYBookmark.o: LYBookmark.c ../userdefs.h

+LYHistory.o: LYHistory.c ../userdefs.h

+LYDownload.o: LYDownload.c ../userdefs.h

+DefaultStyle.o: DefaultStyle.c ../userdefs.h

+LYEditmap.o: LYEditmap.c ../userdefs.h

+LYCharUtils.o: LYCharUtils.c ../userdefs.h

+LYExtern.o: LYExtern.c ../userdefs.h

+LYCookie.o: ../userdefs.h

+

+#UCdomap.o: UCdomap.c ../userdefs.h lycharsets.h

+#UCdomap.o: UCdomap.c chrtrans/UCkd.h chrtrans/makeuctb chrtrans/makeuctb.c \

+#                UCdomap.h UCMap.h ../userdefs.h

+#UCAux.o : UCAux.c $(CMN)UCAux.h $(CMN)UCDefs.h

+

diff --git a/src/makefile.wsl b/src/makefile.wsl
new file mode 100644
index 00000000..cabfe3c5
--- /dev/null
+++ b/src/makefile.wsl
@@ -0,0 +1,62 @@
+OBJS= UCdomap.o UCAux.o UCAuto.o \

+LYClean.o LYShowInfo.o LYEdit.o LYStrings.o \

+LYMail.o HTAlert.o GridText.o LYGetFile.o \

+LYMain.o LYMainLoop.o LYCurses.o LYBookmark.o LYUtils.o \

+LYOptions.o LYReadCFG.o LYSearch.o LYHistory.o \

+LYForms.o LYPrint.o LYrcFile.o LYDownload.o LYNews.o LYKeymap.o \

+HTML.o HTFWriter.o HTInit.o DefaultStyle.o LYLocal.o LYUpload.o \

+LYLeaks.o LYexit.o LYJump.o LYList.o LYCgi.o LYTraversal.o \

+LYEditmap.o LYCharSets.o LYCharUtils.o LYMap.o LYCookie.o LYExtern.o \

+LYStyle.o LYHash.o

+

+SLANGINC=-If:/slang/src

+CFLAGS= $(MCFLAGS) -I. -I.. $(SLANGINC)

+

+CC = gcc

+MCFLAGS = -O3 -DUSE_ZLIB -DUSE_EXTERNALS \

+-DUSE_SLANG -DACCESS_AUTH -DNO_CUSERID \

+-DNOUSERS -DDOSPATH -DNO_TTYTYPE -DNO_UTMP -I../WWW/library/implement -I../djgpp/tcplib/include \

+-I./chrtrans -I../djgpp/tcplib/include/tcp

+WWWLIB = ../WWW/library/djgpp/libwww.a ../djgpp/tcplib/obj/libtcp.a

+LIBS=-Lf:/slang/src/djgobjs -lslang -lz

+CHRTR= ./chrtrans/

+

+all: lynx.exe

+

+lynx.exe:   message $(OBJS) $(WWWLIB)

+	@echo "Linking and creating Lynx executable"

+	$(CC) $(CFLAGS) -o lynx.exe  $(OBJS) $(WWWLIB) $(SLANGLIB) $(LIBS)

+	@echo "Welcome to Lynx!"

+

+message:

+	@echo "Compiling Lynx sources"

+

+dbg:    $(OBJS) $(WWWLIB)

+	@echo "Making Lynx code"

+	$(CC) $(OBJS) $(CFLAGS) $(WWWLIB) $(SLANGLIB) $(LIBS)

+

+lint:

+	lint *.c  > ../lint.out

+

+clean:

+	rm -f lynx.exe core *.[ob]

+

+LYMain.o: ../userdefs.h

+LYMainLoop.o: LYMainLoop.c ../userdefs.h

+LYReadCFG.o: LYReadCFG.c ../userdefs.h

+HTFWriter.o: HTFWriter.c ../userdefs.h

+LYGetFile.o: LYGetFile.c ../userdefs.h

+LYOptions.o: LYOptions.c ../userdefs.h

+LYReadCFG.o: LYReadCFG.c ../userdefs.h

+LYTraversal.o: LYTraversal.c ../userdefs.h

+LYCharSets.o: LYCharSets.c ../userdefs.h

+LYShowInfo.o: LYShowInfo.c ../userdefs.h

+LYStrings.o: LYStrings.c ../userdefs.h

+LYBookmark.o: LYBookmark.c ../userdefs.h

+LYHistory.o: LYHistory.c ../userdefs.h

+LYDownload.o: LYDownload.c ../userdefs.h

+DefaultStyle.o: DefaultStyle.c ../userdefs.h

+LYEditmap.o: LYEditmap.c ../userdefs.h

+LYCharUtils.o: LYCharUtils.c ../userdefs.h

+LYExtern.o: LYExtern.c ../userdefs.h

+LYCookie.o: ../userdefs.h

diff --git a/test/c1.html b/test/c1.html
new file mode 100644
index 00000000..66b0e30d
--- /dev/null
+++ b/test/c1.html
@@ -0,0 +1,82 @@
+<HTML>
+<HEAD>
+<TITLE> Test of some symbols </TITLE>
+</HEAD>
+<BODY>
+<PRE>
+You may press '\' to view the source of this test
+
+NCRs for symbols which are the C1 control chars for iso-8859-1 and Unicode,
+but assumed as <em>windows-1252</em> codepoints (common for windows-xxxx),
+say mercy to MS FrontPage (WYSIWYG HTML editor).
+
+<em>Number  NCR    alt-NCR    windows-1252</em>
+
+0x80    &#x80;	<IMG SRC=X ALT="&#x80;">	 <!--&#x0080;-->   	#NOT USED
+0x81    &#x81;	<IMG SRC=X ALT="&#x81;">	 <!--&#x0081;-->   	#NOT USED
+0x82    &#x82;	<IMG SRC=X ALT="&#x82;">	 &#x201a;   	#SINGLE LOW-9 QUOTATION MARK
+0x83    &#x83;	<IMG SRC=X ALT="&#x83;">	 &#x0192;   	#LATIN SMALL LETTER F WITH HOOK
+0x84    &#x84;	<IMG SRC=X ALT="&#x84;">	 &#x201e;   	#DOUBLE LOW-9 QUOTATION MARK
+0x85    &#x85;	<IMG SRC=X ALT="&#x85;">	 &#x2026;   	#HORIZONTAL ELLIPSIS
+0x86    &#x86;	<IMG SRC=X ALT="&#x86;">	 &#x2020;   	#DAGGER
+0x87    &#x87;	<IMG SRC=X ALT="&#x87;">	 &#x2021;   	#DOUBLE DAGGER
+0x88    &#x88;	<IMG SRC=X ALT="&#x88;">	 &#x02c6;   	#MODIFIER LETTER CIRCUMFLEX ACCENT
+0x89    &#x89;	<IMG SRC=X ALT="&#x89;">	 &#x2030;   	#PER MILLE SIGN
+0x8a    &#x8a;	<IMG SRC=X ALT="&#x8a;">	 &#x0160;   	#LATIN CAPITAL LETTER S WITH CARON
+0x8b    &#x8b;	<IMG SRC=X ALT="&#x8b;">	 &#x2039;   	#SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+0x8c    &#x8c;	<IMG SRC=X ALT="&#x8c;">	 &#x0152;   	#LATIN CAPITAL LIGATURE OE
+0x8d    &#x8d;	<IMG SRC=X ALT="&#x8d;">	 <!--&#x008d;-->   	#NOT USED
+0x8e    &#x8e;	<IMG SRC=X ALT="&#x8e;">	 <!--&#x008e;-->   	#NOT USED
+0x8f    &#x8f;	<IMG SRC=X ALT="&#x8f;">	 <!--&#x008f;-->   	#NOT USED
+0x90    &#x90;	<IMG SRC=X ALT="&#x90;">	 <!--&#x0090;-->   	#NOT USED
+0x91    &#x91;	<IMG SRC=X ALT="&#x91;">	 &#x2018;   	#LEFT SINGLE QUOTATION MARK
+0x92    &#x92;	<IMG SRC=X ALT="&#x92;">	 &#x2019;   	#RIGHT SINGLE QUOTATION MARK
+0x93    &#x93;	<IMG SRC=X ALT="&#x93;">	 &#x201c;   	#LEFT DOUBLE QUOTATION MARK
+0x94    &#x94;	<IMG SRC=X ALT="&#x94;">	 &#x201d;   	#RIGHT DOUBLE QUOTATION MARK
+0x95    &#x95;	<IMG SRC=X ALT="&#x95;">	 &#x2022;   	#BULLET
+0x96    &#x96;	<IMG SRC=X ALT="&#x96;">	 &#x2013;   	#EN DASH
+0x97    &#x97;	<IMG SRC=X ALT="&#x97;">	 &#x2014;   	#EM DASH
+0x98    &#x98;	<IMG SRC=X ALT="&#x98;">	 &#x02dc;   	#SMALL TILDE
+0x99    &#x99;	<IMG SRC=X ALT="&#x99;">	 &#x2122;   	#TRADE MARK SIGN
+0x9a    &#x9a;	<IMG SRC=X ALT="&#x9a;">	 &#x0161;   	#LATIN SMALL LETTER S WITH CARON
+0x9b    &#x9b;	<IMG SRC=X ALT="&#x9b;">	 &#x203a;   	#SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+0x9c    &#x9c;	<IMG SRC=X ALT="&#x9c;">	 &#x0153;   	#LATIN SMALL LIGATURE OE
+0x9d    &#x9d;	<IMG SRC=X ALT="&#x9d;">	 <!--&#x009d;-->   	#NOT USED
+0x9e    &#x9e;	<IMG SRC=X ALT="&#x9e;">	 <!--&#x009e;-->   	#NOT USED
+0x9f    &#x9f;	<IMG SRC=X ALT="&#x9f;">	 &#x0178;   	#LATIN CAPITAL LETTER Y WITH DIAERESIS
+
+
+</PRE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/raw8bit.html b/test/raw8bit.html
new file mode 100644
index 00000000..6fcb75a1
--- /dev/null
+++ b/test/raw8bit.html
@@ -0,0 +1,32 @@
+<HTML>
+<HEAD>
+<TITLE> Test of raw 8-bit symbols </TITLE>
+<!--META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"-->
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+</HEAD>
+<BODY>
+<PRE>
+This page has META HTTP-EQUIV="Content-Type" CONTENT= tag,
+it currently corresponds to "text/html; charset=iso-8859-1".
+To view another charset you may edit META with 'e' command.
+
+
+    0 1 2 3 4 5 6 7 8 9 A B C D E F
+20    ! " # $ % & ' ( ) * + , - . /
+30  0 1 2 3 4 5 6 7 8 9 : ; < = > ?
+40  @ A B C D E F G H I J K L M N O
+50  P Q R S T U V W X Y Z [ \ ] ^ _
+60  ` a b c d e f g h i j k l m n o
+70  p q r s t u v w x y z { | } ~
+80                 
+90                 
+A0                 
+B0                 
+C0                 
+D0                 
+E0                 
+F0                 
+
+</PRE>
+</BODY>
+</HTML>
diff --git a/test/sgml.html b/test/sgml.html
index e5c2105d..57f55a03 100644
--- a/test/sgml.html
+++ b/test/sgml.html
@@ -41,12 +41,13 @@ original comment:
 
 
 This test illuminating SGML character entities implementation in your browser.
-We sort the entities according unicode numbers.
+We sort the entities according to unicode numbers.
 You should see visible character if your display character set support it
 or some substitution string picked up from  src/chrtrans/def7_uni.tbl.
 If you see &amp;somename; - this name is not implemented yet,
-you may search for &amp;. (Sorry, ISOgrk4 seems to be a nonsense.
-Keep in mind that this table is much wider than in HTML 4.0 draft).
+you may search for &amp;. (Sorry, ISOgrk4 which hold a dot in its name
+seems to be nonvisible for most browsers. Keep in mind that
+this table is much wider than in HTML 4.0 draft).
 							Leonid Pauzner.
 
 
diff --git a/test/spaces.html b/test/spaces.html
new file mode 100644
index 00000000..de55720b
--- /dev/null
+++ b/test/spaces.html
@@ -0,0 +1,31 @@
+<HTML>
+<HEAD>
+<TITLE> Test of some symbols </TITLE>
+</HEAD>
+<BODY>
+<PRE>
+You may press '\' to view the source of this test
+<em>UNICODE   NCR  alt-NCR  named  alt-named</em>
+
+0x2000    [&#x2000;]	<IMG SRC=X ALT="[&#x2000;]">				# EN QUAD
+0x2001    [&#x2001;]	<IMG SRC=X ALT="[&#x2001;]">				# EM QUAD
+0x2002    [&#x2002;]	<IMG SRC=X ALT="[&#x2002;]">	[&ensp;]	<IMG SRC=X ALT="[&ensp;]">	 	# EN SPACE
+0x2003    [&#x2003;]	<IMG SRC=X ALT="[&#x2003;]">	[&emsp;]	<IMG SRC=X ALT="[&emsp;]">	 	# EM SPACE
+0x2004    [&#x2004;]	<IMG SRC=X ALT="[&#x2004;]">	[&emsp13;]	<IMG SRC=X ALT="[&emsp13;]">	 	# THREE-PER-EM SPACE
+0x2005    [&#x2005;]	<IMG SRC=X ALT="[&#x2005;]">	[&emsp14;]	<IMG SRC=X ALT="[&emsp14;]">	 	# FOUR-PER-EM SPACE
+0x2007    [&#x2007;]	<IMG SRC=X ALT="[&#x2007;]">	[&numsp;]	<IMG SRC=X ALT="[&numsp;]">	 	# FIGURE SPACE
+0x2008    [&#x2008;]	<IMG SRC=X ALT="[&#x2008;]">	[&puncsp;]	<IMG SRC=X ALT="[&puncsp;]">	 	# PUNCTUATION SPACE
+0x2009    [&#x2009;]	<IMG SRC=X ALT="[&#x2009;]">	[&thinsp;]	<IMG SRC=X ALT="[&thinsp;]">	 	# THIN SPACE
+0x200A    [&#x200A;]	<IMG SRC=X ALT="[&#x200A;]">	[&hairsp;]	<IMG SRC=X ALT="[&hairsp;]">	 	# HAIR SPACE
+0x200C    [&#x200C;]	<IMG SRC=X ALT="[&#x200C;]">	[&zwnj;]	<IMG SRC=X ALT="[&zwnj;]">	 	# ZERO WIDTH NON-JOINER
+0x200D    [&#x200D;]	<IMG SRC=X ALT="[&#x200D;]">	[&zwj;]	<IMG SRC=X ALT="[&zwj;]">	 	# ZERO WIDTH JOINER
+0x200E    [&#x200E;]	<IMG SRC=X ALT="[&#x200E;]">	[&lrm;]	<IMG SRC=X ALT="[&lrm;]">	 	# LEFT-TO-RIGHT MARK
+0x200F    [&#x200F;]	<IMG SRC=X ALT="[&#x200F;]">	[&rlm;]	<IMG SRC=X ALT="[&rlm;]">	 	# RIGHT-TO-LEFT MARK
+0x2010    [&#x2010;]	<IMG SRC=X ALT="[&#x2010;]">	[&dash;]	<IMG SRC=X ALT="[&dash;]">	 	# HYPHEN
+0x2013    [&#x2013;]	<IMG SRC=X ALT="[&#x2013;]">	[&ndash;]	<IMG SRC=X ALT="[&ndash;]">	 	# EN DASH
+0x2014    [&#x2014;]	<IMG SRC=X ALT="[&#x2014;]">	[&mdash;]	<IMG SRC=X ALT="[&mdash;]">	 	# EM DASH
+
+
+</PRE>
+</BODY>
+</HTML>
diff --git a/userdefs.h b/userdefs.h
index 2b63ce42..97ce8741 100644
--- a/userdefs.h
+++ b/userdefs.h
@@ -1202,7 +1202,7 @@
  * the version definition with the Project Version on checkout. Just
  * ignore it. - kw */
 /* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */
-#define LYNX_VERSION "2.8.1dev.9"
+#define LYNX_VERSION "2.8.1dev.10"
 
 #ifndef MAXINT
 #define MAXINT 2147483647	/* max integer */