From 6b2c8fd9c34b0a8f444f5341b7b4da9d79e5ac2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Schmidt?= Date: Sat, 18 Jan 1997 15:53:48 +0000 Subject: [PATCH] Oops! I commented out the waiting for retrace loops, because the one in draw_mouse causes spontanious hangs on my p5-100 when I move the mouse excessively. Forgot that on the last commit, so using the mouse or destructive cursor would produce large amounts of flicker.. --- sys/dev/syscons/syscons.c | 10 +++++----- sys/i386/isa/syscons.c | 10 +++++----- sys/isa/syscons.c | 10 +++++----- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/sys/dev/syscons/syscons.c b/sys/dev/syscons/syscons.c index 50a3c34fe67..bf4dc20367e 100644 --- a/sys/dev/syscons/syscons.c +++ b/sys/dev/syscons/syscons.c @@ -3454,9 +3454,10 @@ set_destructive_cursor(scr_stat *scp) if ((i >= scp->cursor_start && i <= scp->cursor_end) || (scp->cursor_start >= scp->font_size && i == scp->font_size - 1)) cursor[i] |= 0xff; -#if 0 - while (!(inb(crtc_addr+6) & 0x08)) /* wait for vertical retrace */ ; -#endif + + /* wait for vertical retrace to avoid jitter on some videocards */ + while (!(inb(crtc_addr+6) & 0x08)) /* idle */ ; + set_font_mode(); bcopy(cursor, (char *)pa_to_va(address) + DEAD_CHAR * 32, 32); set_normal_mode(); @@ -3614,9 +3615,8 @@ draw_mouse_image(scr_stat *scp) scp->mouse_oldpos = scp->mouse_pos; /* wait for vertical retrace to avoid jitter on some videocards */ -#if 0 while (!(inb(crtc_addr+6) & 0x08)) /* idle */ ; -#endif + set_font_mode(); bcopy(scp->mouse_cursor, (char *)pa_to_va(address) + 0xd0 * 32, 128); set_normal_mode(); diff --git a/sys/i386/isa/syscons.c b/sys/i386/isa/syscons.c index 50a3c34fe67..bf4dc20367e 100644 --- a/sys/i386/isa/syscons.c +++ b/sys/i386/isa/syscons.c @@ -3454,9 +3454,10 @@ set_destructive_cursor(scr_stat *scp) if ((i >= scp->cursor_start && i <= scp->cursor_end) || (scp->cursor_start >= scp->font_size && i == scp->font_size - 1)) cursor[i] |= 0xff; -#if 0 - while (!(inb(crtc_addr+6) & 0x08)) /* wait for vertical retrace */ ; -#endif + + /* wait for vertical retrace to avoid jitter on some videocards */ + while (!(inb(crtc_addr+6) & 0x08)) /* idle */ ; + set_font_mode(); bcopy(cursor, (char *)pa_to_va(address) + DEAD_CHAR * 32, 32); set_normal_mode(); @@ -3614,9 +3615,8 @@ draw_mouse_image(scr_stat *scp) scp->mouse_oldpos = scp->mouse_pos; /* wait for vertical retrace to avoid jitter on some videocards */ -#if 0 while (!(inb(crtc_addr+6) & 0x08)) /* idle */ ; -#endif + set_font_mode(); bcopy(scp->mouse_cursor, (char *)pa_to_va(address) + 0xd0 * 32, 128); set_normal_mode(); diff --git a/sys/isa/syscons.c b/sys/isa/syscons.c index 50a3c34fe67..bf4dc20367e 100644 --- a/sys/isa/syscons.c +++ b/sys/isa/syscons.c @@ -3454,9 +3454,10 @@ set_destructive_cursor(scr_stat *scp) if ((i >= scp->cursor_start && i <= scp->cursor_end) || (scp->cursor_start >= scp->font_size && i == scp->font_size - 1)) cursor[i] |= 0xff; -#if 0 - while (!(inb(crtc_addr+6) & 0x08)) /* wait for vertical retrace */ ; -#endif + + /* wait for vertical retrace to avoid jitter on some videocards */ + while (!(inb(crtc_addr+6) & 0x08)) /* idle */ ; + set_font_mode(); bcopy(cursor, (char *)pa_to_va(address) + DEAD_CHAR * 32, 32); set_normal_mode(); @@ -3614,9 +3615,8 @@ draw_mouse_image(scr_stat *scp) scp->mouse_oldpos = scp->mouse_pos; /* wait for vertical retrace to avoid jitter on some videocards */ -#if 0 while (!(inb(crtc_addr+6) & 0x08)) /* idle */ ; -#endif + set_font_mode(); bcopy(scp->mouse_cursor, (char *)pa_to_va(address) + 0xd0 * 32, 128); set_normal_mode();