Date: Mon, 3 Apr 2000 11:02:25 +0200 (IST) From: Eli Zaretskii X-Sender: eliz AT is To: djgpp AT delorie DOT com Subject: Re: _setcursortype problem in DOS window In-Reply-To: <8F0B1097robwgclaracouk@195.8.69.73> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Sun, 2 Apr 2000, Robert W. Griffiths wrote: > The solid and normal > cursors are OK, but instead of the cursor disappearing after the middle > call, I get a sort of inverted normal cursor ie the flashing line is at > the top of the character cell. This only seems to happen when running in > a Win98 DOS window - full screen works fine. I know about this. It seems like a bug in the Windows display VxD, because DOS and full-screen display on Windows both work correctly. I imagine that the problem is with the emulation of the BIOS feature whereby, by default, the cursor shape is independent of the character cell size. In other words, you can treat a 16-pixel cursor on the 80x25 VGA screen as if it were a 8-pixel CGA screen. I'm guessing that the Windows display VxD doesn't support the VGA character cell size well enough. You could try using function 12h, subfunction 34h of Int 10h, to control this behavior. I don't know whether it will do any good on Windows. In any case, this is not a problem with the DJGPP library, it also happens if you issue raw BIOS calls directly via int86 or __dpmi_int. As an aside, I suggest to upgrade to DJGPP v2.03, since the conio functions in v2.02 had several bugs.