From: Hans-Bernhard Broeker 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: 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 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.