delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/11/24/07:25:34

From: Hans-Bernhard Broeker <broeker AT physik DOT rwth-aachen DOT de>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Buffering text...
Date: 24 Nov 2000 12:10:49 GMT
Organization: Aachen University of Technology (RWTH)
Lines: 41
Message-ID: <8vlls9$8fn$1@nets3.rz.RWTH-Aachen.DE>
References: <YIgT5.7336$vA4 DOT 123021 AT news6-win DOT server DOT ntlworld DOT com>
NNTP-Posting-Host: acp3bf.physik.rwth-aachen.de
X-Trace: nets3.rz.RWTH-Aachen.DE 975067849 8695 137.226.32.75 (24 Nov 2000 12:10:49 GMT)
X-Complaints-To: abuse AT rwth-aachen DOT de
NNTP-Posting-Date: 24 Nov 2000 12:10:49 GMT
Originator: broeker@
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Graham Reeds <grahamr AT dtn DOT ntl DOT com> wrote:
> I'm trying to blit some text in a dosbox under w98se. The text box is
> usually of the 50+ line variety so I can see all that goes horribly wrong
> when I compile:-)  

For that purpose, you'ld be better off using some tools, like 'redir',
RHIDE or Emacs. You won't be limited to any particular amount of
compiler errors, then. You can deal with 500 lines of errors as easily
as with 5.

> However, when I do a text output of the debug info and
> variables in real-time, the screen flickers horribly.  I've tried putting a
> vsync in there before the clrscr(), but it still flickers horribly.  

Please note that the Win9x DOS box is a *simulated* text screen if you
display it windowed, i.e. there's considerable overhead in its
operation. It has to catch attempts of your program to write into the
VGA memory or call BIOS functions, and re-interpret them as graphical
operations inside the Window.

> Is there anyway of efficiently (i.e. fast) updating the text output
> while keeping it readable - the last few lines are almost unreadable
> since it takes a while for the update to get down there.

Other than avoiding clrscr() and/or windowed operation: no, I don't
think there is.

> Unfortunately it isn't as easy as updating just the lines that
> change since sometimes 50% plus of variables are changing and so
> that means most of the screen.  

Even then, clrscr() is a waste of time by a factor of 4 or so. At 50%
of content having to be replaced, clrscr() plus re-write of the whole
stuff causes 4 times the amount of characters to be written to screen
as would be truly necessary.



-- 
Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de)
Even if all the snow were burnt, ashes would remain.

- Raw text -


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