delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/05/14/02:50:41

Date: Mon, 14 May 2001 09:52:32 +0300 (IDT)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: "Mark E." <snowball3 AT bigfoot DOT com>
cc: djgpp-workers AT delorie DOT com
Subject: Re: DJGPP 2.04 release date
In-Reply-To: <3AFF2E8F.13877.2B55601@localhost>
Message-ID: <Pine.SUN.3.91.1010514094049.24166C-100000@is>
MIME-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Mon, 14 May 2001, Mark E. wrote:

> > What else is there?
> 
> Extended keyboard support in termios would be good so the Bash specific 
> tminit.c could go away.

Yes, that would be a welcome addition.  A possible implementation would 
be to add functions like tgetstr, tgetent, tgetflag, tgetnum, and make 
them return strings which the termios emulation would convert to the 
appropriate cursor motion and other commands.

And if someone is working on termios, I'd like to add one more feature: 
make termios work through DOS functions rather than BIOS functions if
a specific environment variable is set.  This is required to allow 
running DJGPP ports which use termios, such as GDB, as a subprocess of 
the Windows port of Emacs.

The problem is that Emacs creates a pipe in a way that is not visible to 
isatty.  So DJGPP programs think their stdin is a console device and use 
BIOS, which to the user looks as if the application hangs, because no I/O 
is ever received by Emacs.

The solution is to sense this situation and switch to using functions 6 
and 7 of Int 21h, or maybe even functions 3Fh and 40h after switching the 
device to raw binary mode.  This supports less non-ASCII function keys 
than the BIOS functions, but when we run as an Emacs subprocess, many 
function keys are not required anyway.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019