delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/1999/05/16/13:53:12

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
Sender: cygwin-developers-owner AT sourceware DOT cygnus DOT com
Delivered-To: mailing list cygwin-developers AT sourceware DOT cygnus DOT com
Sender: fujieda AT elbereth DOT jaist DOT ac DOT jp
To: cygwin-developers AT sourceware DOT cygnus DOT com
Subject: improve scroll speed on Win9x
Mime-Version: 1.0 (generated by tm-edit 7.106)
From: Kazuhiro Fujieda <fujieda AT jaist DOT ac DOT jp>
Date: 17 May 1999 02:52:53 +0900
Message-ID: <s1s90ao52bu.fsf@jaist.ac.jp>
Lines: 45
X-Mailer: Gnus v5.3/Emacs 19.34

I don't feel like using recent snapshots on my Pentium 133MHz Win95
box because of slowness of the scroll speed.

ScrollSonsoleScreenBuffer() become very slow on Win9x after it is
called several times repeatedly. So if a scroll region isn't set,
fhandler_console::write_normal() should output '\n' instead of
calling scroll_screen() like past snapshots.

--- fhandler_console.cc-	Tue May 11 12:33:18 1999
+++ fhandler_console.cc	Mon May 17 02:42:34 1999
@@ -987,20 +987,18 @@
 	  break;
 	case DWN:
 	  cursor_get (&x, &y);
-
-	  if (get_w_binary ())
-	    cursor_rel (0, 1);
-	  else
-	    {
-	      x = 0;
-	      cursor_set (FALSE, x, y + 1);
-	    }
-
 	  if (y == srBottom)
 	    {
-	      scroll_screen (0, srTop + 1, -1, srBottom, 0, srTop);
-	      cursor_set (FALSE, x, y);
+	      if (y < info.winBottom || scroll_region.Top)
+		scroll_screen (0, srTop + 1, -1, srBottom, 0, srTop);
+	      else
+		WriteFile (get_output_handle (), "\n", 1, &done, 0);
 	    }
+	  else
+	    y++;
+	  if (!get_w_binary ())
+	      x = 0;
+	  cursor_set (FALSE, x, y);
 	  break;
 	case BAK:
 	  cursor_rel (-1, 0);

____
  | AIST      Kazuhiro Fujieda <fujieda AT jaist DOT ac DOT jp>
  | HOKURIKU  School of Information Science
o_/ 1990      Japan Advanced Institute of Science and Technology

- Raw text -


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