Date: Wed, 12 Aug 1998 11:28:15 +0300 (IDT) From: Eli Zaretskii To: matthew DOT krause AT juno DOT com cc: djgpp AT delorie DOT com Subject: Re: Less Problem In-Reply-To: <19980811.094355.3918.0.matthew.krause@juno.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk On Tue, 11 Aug 1998 matthew DOT krause AT juno DOT com wrote: > When I call less under Rhide, or using man, it displays the first screen, > then locks. I have to nuke the Dos box with Control Alt Delete, then end > task. You are one of the few unfortunate souls who get screwed by Microsoft. It appears that some versions of system DLLs and VxDs involved in running DJGPP programs (such as vmm32.vxd) have a bug that raises its ugly head when one DJGPP program (RHIDE in your case) calls another (Less). The bug manifests itself when one of the two DJGPP programs (the parent or the child, it doesn't matter which one) calls function 1680h of Interrupt 2Fh inside its idle loop. This function tells Windows that the caller doesn't need the rest of its time slice, which is a Good Thing to do when you are idling, e.g. waiting for user input. When it is called on those rare versions of Windows, the DOS box is wedged like you describe. A solution is to either upgrade your Windows version, or rebuild the program that gets stuck after replacing the library function __dpmi_yield with a version which works around this bug. I will probably upload a fixed binary of Less (built with a patched __dpmi_yield) in the near future. If you cannot wait until I have enough free time, mail me privately and I will send you the source of the fixed __dpmi_yield and instructions how to rebuild Less.