[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20071209230003.GC25047@implementation>
Date: Mon, 10 Dec 2007 00:00:03 +0100
From: Samuel Thibault <samuel.thibault@...-lyon.org>
To: linux-kernel@...r.kernel.org,
linuxconsole-dev@...ts.sourceforge.net
Subject: Re: vcsa and big endian
Samuel Thibault, le Sun 09 Dec 2007 23:50:39 +0100, a écrit :
> Samuel Thibault, le Sun 09 Dec 2007 23:43:49 +0100, a écrit :
> > On big endian machines, /dev/vcsa stores text/attribute bytes in big
> > endian order, while it stores them in little endian order on little
> > endian machines. Is that expected?
>
> It looks like ggi considers this as normal. In any case, the vcsa
> manual page should probably be made more clear ("but including
> attributes" -> "but using unsigned shorts that include attributes" for
> instance).
And the code example should be fixed too:
char ch, attrib;
(void) read(fd, &ch, 1);
(void) read(fd, &attrib, 1);
should rather be
unsigned short s;
unsigned char ch, attrib;
...
(void) read(fd, &s, 2);
ch = s & 0xff;
attrib = (s >> 8);
The manual page should also mention that when a 512 chars font is
loaded, the 9th bit is in the attrib value, and its position can be
fetched through the VT_GETHIFONTMASK ioctl.
Samuel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists