From owner-freebsd-stable Sun Dec 5 2:14: 1 1999 Delivered-To: freebsd-stable@freebsd.org Received: from outmail.utsunomiya-u.ac.jp (outmail.utsunomiya-u.ac.jp [160.12.196.3]) by hub.freebsd.org (Postfix) with ESMTP id E7F301503B; Sun, 5 Dec 1999 02:13:57 -0800 (PST) (envelope-from yokota@zodiac.mech.utsunomiya-u.ac.jp) Received: from zodiac.mech.utsunomiya-u.ac.jp (IDENT:KcDgLg877IhVzcVTxd8WFWKbhI2uYTxt@zodiac.mech.utsunomiya-u.ac.jp [160.12.42.1]) by outmail.utsunomiya-u.ac.jp (8.9.3/3.7Wpl2) with ESMTP id TAA25546; Sun, 5 Dec 1999 19:11:51 +0900 (JST) Received: from zodiac.mech.utsunomiya-u.ac.jp (zodiac.mech.utsunomiya-u.ac.jp [160.12.42.1]) by zodiac.mech.utsunomiya-u.ac.jp (8.7.6+2.6Wbeta7/3.4W/zodiac-May96) with ESMTP id TAA28697; Sun, 5 Dec 1999 19:16:42 +0900 (JST) Message-Id: <199912051016.TAA28697@zodiac.mech.utsunomiya-u.ac.jp> To: stable@freebsd.org Cc: sobomax@altavista.net, jhb@freebsd.org, ticso@cicely.de, Alexander@leidinger.net, Cejka Rudolf , yokota@zodiac.mech.utsunomiya-u.ac.jp Subject: Re: Problem with syscons in VESA mode In-reply-to: Your message of "Fri, 03 Dec 1999 13:32:45 +0200." <3847AA5D.5947E0EE@altavista.net> References: <19991203105728.A68768@dcse.fee.vutbr.cz> <3847AA5D.5947E0EE@altavista.net> Date: Sun, 05 Dec 1999 19:16:41 +0900 From: Kazutaka YOKOTA Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I modified Cejka Rudolf's patch for -STABLE. Would people care to test this in your -STABLE boxes? I don't have a -STABLE test box handy right now. Kazu Index: syscons.c =================================================================== RCS file: /src/CVS/src/sys/dev/syscons/syscons.c,v retrieving revision 1.293.2.9 diff -u -r1.293.2.9 syscons.c --- syscons.c 1999/11/29 02:38:39 1.293.2.9 +++ syscons.c 1999/12/05 07:02:04 @@ -3368,11 +3368,12 @@ case 0x09: /* non-destructive tab */ mark_for_update(scp, scp->cursor_pos - scp->scr_buf); scp->cursor_pos += (8 - scp->xpos % 8u); - mark_for_update(scp, scp->cursor_pos - scp->scr_buf); if ((scp->xpos += (8 - scp->xpos % 8u)) >= scp->xsize) { scp->xpos = 0; scp->ypos++; + scp->cursor_pos = scp->scr_buf + scp->ypos * scp->xsize; } + mark_for_update(scp, scp->cursor_pos - scp->scr_buf); break; case 0x0a: /* newline, same pos */ >Cejka Rudolf wrote: > >> Kazutaka YOKOTA wrote (1999/12/03): >> > This strange behavior was reported several times in the past. It must >> > be related to screen update logic in syscons. But, I don't think we >> > have successfully fixed it at that time :-( >> > It's time to analyze the problem again... >> >> Yes. I know about this problem too but I have no time to fix and test >> it. Is anybody interested in bug reports? ;-) >> >> * Left margin moving to the right is related to the screen width not >> divisible by 8 and an use of tabulators at the end of line after the >> last valid tab position. So the same problem could be seen for >> example with screen width 90, which is accessible for all >> -current users: Let's suppose that cursor range is 0..89: If the >> cursor is on 80..87, it will move to position 88 and everything is ok. >> If the cursor is on 88..89, the position is calculated properly (you >> can switch to another console then return and cursor will be on >> the right position on column 0), but cursor is moved incorrectly >> on column 8 on the next line and next lines are moved to the left too >> until you switch between consoles. >> I think the fix should be trivial (syscons.c,v 1.327) - but it is >> speculated right now without testing: >> >> -- >> *** syscons.c Sun Nov 28 15:29:28 1999 >> --- /tmp/syscons.c Fri Dec 3 10:28:59 1999 >> *************** >> *** 2946,2956 **** >> [...] > >Thanks! It seems fixed my problems with syscons. > >-Maxim To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message