From: cga2000 <cg...@op...> - 2007-10-14 23:24:48
|
I just had to replace the display on an old laptop and I'm trying to figure out if color rendering is correct. I tried setterm to set the background to black and foreground to white on the linux console but this doesn't seem to be doing anything. I still have what looks to be pale gray text on a dark gray background. Is there any way I can permanently change this to black & white? Thanks, cga |
From: Antonino A. D. <ad...@gm...> - 2007-10-15 04:43:54
|
On Sun, 2007-10-14 at 19:24 -0400, cga2000 wrote: > I just had to replace the display on an old laptop and I'm trying to > figure out if color rendering is correct. > > I tried setterm to set the background to black and foreground to white > on the linux console but this doesn't seem to be doing anything. > > I still have what looks to be pale gray text on a dark gray background. > > Is there any way I can permanently change this to black & white? > Try setterm -blink on | off And let us know what kind of driver you are using. Tony |
From: cga2000 <cg...@op...> - 2007-10-15 11:54:01
|
On Mon, Oct 15, 2007 at 12:43:35AM EDT, Antonino A. Daplas wrote: > On Sun, 2007-10-14 at 19:24 -0400, cga2000 wrote: > > I just had to replace the display on an old laptop and I'm trying to > > figure out if color rendering is correct. > > > > I tried setterm to set the background to black and foreground to white > > on the linux console but this doesn't seem to be doing anything. > > > > I still have what looks to be pale gray text on a dark gray background. > > > > Is there any way I can permanently change this to black & white? > > > > Try setterm -blink on | off I spent some time with setterm. The -blink on|off flag does not do anything that I could see. I also tried setterm ulcolor bright blue followed by man setterm. Sure enough the underlined parts of the man page became a nice bright blue. I also tried escape sequences such as echo "[1;36;42mthis text is a nice whatever color" and "this text .." did come out the requested color. But this last method only changed the colors for the duration of the "echo". Looks like the display of the bash prompt resets my display to the default drab grey on black (or dark grey .. I'm not sure". OTOH -inversescreen on does change the display to black over pale grey. What I can't figure out is how to set the foreground and background to something else than the default permanently. A bit like "xterm -fg color -bg othercolor". Not sure this is possible. > And let us know what kind of driver you are using. I have video=atyfb:1400x1050 in my grub boot command. The card is a mach64. > Tony Thanks, cga |
From: Antonino A. D. <ad...@gm...> - 2007-10-15 14:51:40
|
On Mon, 2007-10-15 at 07:53 -0400, cga2000 wrote: > On Mon, Oct 15, 2007 at 12:43:35AM EDT, Antonino A. Daplas wrote: > > On Sun, 2007-10-14 at 19:24 -0400, cga2000 wrote: > > And let us know what kind of driver you are using. > > I have video=atyfb:1400x1050 in my grub boot command. > > The card is a mach64. > This has to be a bug if your atyfb can't even show the console colors properly. I'll CC some people. Can you post your dmesg and fbset -i? If you're using a recent kernel, try tinkering with /sys/module/vt/parameters/default_blu|default_grn|default_red The above will show you the colors of the console palette, which you can also customize anytime. Tony |
From: cga2000 <cg...@op...> - 2007-10-23 03:12:50
|
On Mon, Oct 22, 2007 at 10:20:35AM EDT, Antonino A. Daplas wrote: > On Sun, 2007-10-21 at 20:30 -0400, cga2000 wrote: > > On Sun, Oct 21, 2007 at 07:31:31PM EDT, Antonino A. Daplas wrote: > > > On Sun, 2007-10-21 at 08:34 -0400, cga2000 wrote: > > > > > On Sat, Oct 20, 2007 at 12:06:31PM EDT, Antonino A. Daplas wrote: > > > > > > > > The 16 entries is standard since the linux console is limited to > > > 16 colors. As to why separate each component (R, G, B) into 3 > > > files, it's because that is the simplest way, otherwise, we have > > > to add additional code to separate each color into its components > > > before feeding them to the console layer. > > OK. > > > > So we have three files for our three fundamental colors. > > You have probably realized I'm a bit thick by now .. but why 16 > > entries to each file - iow, I would have expected one for the > > background, one for the foreground .. etc. > > I'm still a bit lost. > > Do you mean why not one file per attribute? ... ie, > default_foreground, default_background, default_underline, etc? It is > simply more complicated since we have to take into consideration how a > console driver represents an attribute, ie, one driver may use blue > for underline, another may use green, and in another ignored. > Color though is treated the same whatever driver you use. OK .. I think I get it. 3 files x 16 entries define a 16-color palette with the three rgb channels in separate files. So that if the first entry is 0 in all three files, color0 will be [rgb:0,0,0] (black) .. if it is 127 in all three files it will be [rgb:127,127,127] (grey50..?) etc. If the second entry is 255 in the default_red file and 0 in both default_green and default_blue .. color1 will be pure red .. And naturally if I want color15 to be pure white the last entry in all three files needs to be set to 255. Right? In other words the three files represent the three rgb channels and the 16 entries the different red, green, blue values for each of the 16 colors the console is capable of displaying simultaneously. But then why does the bash shell display my input commands in light grey rather than white? Does this mean that I have 8 x 2 colors and that some kind of a bold attribute being on of off as the application decides .. causes only text that is highlighted to be displayed in white while "normal" text is displayed in grey? I don't suppose anyone has come up with a little utility that loops on the 3x16 entries and issues escape sequences to display a semi-graphical representation of the current color palette? Something that would display 8x2 squares visualizing the 16 colors. This would make it a lot easier to tell at a glance what the current palette looks like .. although I'm sure that with a bit of practice I will be able to see it just by glancing at the default_{red|grn|blu} files. :-) Thanks, cga |
From: Geert U. <ge...@li...> - 2007-10-23 07:56:29
Attachments:
colors
|
On Mon, 22 Oct 2007, cga2000 wrote: > 3 files x 16 entries define a 16-color palette with the three rgb > channels in separate files. > > So that if the first entry is 0 in all three files, color0 will be > [rgb:0,0,0] (black) .. if it is 127 in all three files it will be > [rgb:127,127,127] (grey50..?) etc. > > If the second entry is 255 in the default_red file and 0 in both > default_green and default_blue .. color1 will be pure red .. > > And naturally if I want color15 to be pure white the last entry in all > three files needs to be set to 255. > > Right? Right! > In other words the three files represent the three rgb channels and the > 16 entries the different red, green, blue values for each of the 16 > colors the console is capable of displaying simultaneously. > > But then why does the bash shell display my input commands in light grey > rather than white? Normal text is light grey. > Does this mean that I have 8 x 2 colors and that some kind of a bold > attribute being on of off as the application decides .. causes only text > that is highlighted to be displayed in white while "normal" text is > displayed in grey? Yes, white is used for highlighted text. > I don't suppose anyone has come up with a little utility that loops on > the 3x16 entries and issues escape sequences to display a semi-graphical > representation of the current color palette? Something that would > display 8x2 squares visualizing the 16 colors. > > This would make it a lot easier to tell at a glance what the current > palette looks like .. although I'm sure that with a bit of practice I > will be able to see it just by glancing at the default_{red|grn|blu} > files. I attached such a script I wrote many years ago (last modified in 2004). However, it no longer displays the highlighted colors correctly on the console or in a gnome-terminal? It still works fine in a good old xterm. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@li... In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds |
From: cga2000 <cg...@op...> - 2007-10-15 23:04:35
|
On Mon, Oct 15, 2007 at 10:51:20AM EDT, Antonino A. Daplas wrote: > On Mon, 2007-10-15 at 07:53 -0400, cga2000 wrote: > > On Mon, Oct 15, 2007 at 12:43:35AM EDT, Antonino A. Daplas wrote: > > > On Sun, 2007-10-14 at 19:24 -0400, cga2000 wrote: > > > > And let us know what kind of driver you are using. > > > > I have video=atyfb:1400x1050 in my grub boot command. > > > > The card is a mach64. > > > > This has to be a bug if your atyfb can't even show the console colors > properly. I'll CC some people. Thank you for your interest. > Can you post your dmesg and fbset -i? Here's the output of fbset -i: mode "1400x1050-60" # D: 107.701 MHz, H: 63.804 kHz, V: 59.853 Hz geometry 1400 1050 1400 5980 8 timings 9285 128 48 13 0 112 3 accel true rgba 8/0,8/0,8/0,0/0 endmode Frame buffer device information: Name : ATY Mach64 Address : 0xfd000000 Size : 8384512 Type : PACKED PIXELS Visual : PSEUDOCOLOR XPanStep : 8 YPanStep : 1 YWrapStep : 0 LineLength : 1400 MMIO Address: 0xfc000000 MMIO Size : 2048 Accelerator : ATI Mach64GT What does the rgba line mean? As to dmesg, could you be a bit more specific? I don't want to spam the list with unrelated material. Would you want the dmesg log immediately after a (re)boot? If you need the entire dmesg, I'll put it up some place on the web, hopefully tomorrow. > If you're using a recent kernel, try tinkering with linux 2.6.20 .. which is pretty recent? > /sys/module/vt/parameters/default_blu|default_grn|default_red Hmm .. I don't seem to have anything called default_blu on this machine and no vt directory in the /sys/module tree. Would this be a clue? > The above will show you the colors of the console palette, which you can > also customize anytime. Interesting. When I have the time I would like to change the default colors to something a bit more interesting -- both in the console and in xterm for the sake of applications that do not support 256 colors. Thanks, cga |
From: Antonino A. D. <ad...@gm...> - 2007-10-16 08:35:37
|
On Mon, 2007-10-15 at 19:04 -0400, cga2000 wrote: > On Mon, Oct 15, 2007 at 10:51:20AM EDT, Antonino A. Daplas wrote: > > On Mon, 2007-10-15 at 07:53 -0400, cga2000 wrote: > > > On Mon, Oct 15, 2007 at 12:43:35AM EDT, Antonino A. Daplas wrote: > > > > On Sun, 2007-10-14 at 19:24 -0400, cga2000 wrote: > > > > > > And let us know what kind of driver you are using. > > > > > > I have video=atyfb:1400x1050 in my grub boot command. > > > > > > The card is a mach64. > > > > > > > This has to be a bug if your atyfb can't even show the console colors > > properly. I'll CC some people. > > Thank you for your interest. > > > Can you post your dmesg and fbset -i? > > Here's the output of fbset -i: > > mode "1400x1050-60" > # D: 107.701 MHz, H: 63.804 kHz, V: 59.853 Hz > geometry 1400 1050 1400 5980 8 > timings 9285 128 48 13 0 112 3 > accel true > rgba 8/0,8/0,8/0,0/0 > endmode > > Frame buffer device information: > Name : ATY Mach64 > Address : 0xfd000000 > Size : 8384512 > Type : PACKED PIXELS > Visual : PSEUDOCOLOR > XPanStep : 8 > YPanStep : 1 > YWrapStep : 0 > LineLength : 1400 > MMIO Address: 0xfc000000 > MMIO Size : 2048 > Accelerator : ATI Mach64GT > > What does the rgba line mean? > red|green|blue|alpha length/offset > As to dmesg, could you be a bit more specific? > Just the atyfb messages. > I don't want to spam the list with unrelated material. > > Would you want the dmesg log immediately after a (re)boot? Anytime, doesn't matter. > > If you need the entire dmesg, I'll put it up some place on the web, > hopefully tomorrow. > > > If you're using a recent kernel, try tinkering with > > linux 2.6.20 .. which is pretty recent? > > > /sys/module/vt/parameters/default_blu|default_grn|default_red > > Hmm .. I don't seem to have anything called default_blu on this machine > and no vt directory in the /sys/module tree. > > Would this be a clue? > > > The above will show you the colors of the console palette, which you can > > also customize anytime. > > Interesting. When I have the time I would like to change the default > colors to something a bit more interesting -- both in the console and > in xterm for the sake of applications that do not support 256 colors. > It's a 2.6,21 or 2.6.22 feature. Tony |
From: cga2000 <cg...@op...> - 2007-10-16 17:12:25
|
On Tue, Oct 16, 2007 at 04:35:25AM EDT, Antonino A. Daplas wrote: [..] > It's a 2.6.21 or 2.6.22 feature. OK. Will upgrade asap. Here's dmesg just in case: [07:52:11][gavron@turki:~]$ dmesg | g atyfb (standard input):atyfb: using auxiliary register aperture (standard input):atyfb: 3D RAGE Mobility P/M (Mach64 LM, AGP 2x) [0x4c4d rev 0x64] (standard input):atyfb: Mach64 BIOS is located at c0000, mapped at c00c0000. (standard input):atyfb: BIOS frequency table: (standard input):atyfb: PCLK_min_freq 984, PCLK_max_freq 23600, ref_freq 2950, ref_divider 64 (standard input):atyfb: MCLK_pwd 4200, MCLK_max_freq 8300, XCLK_max_freq 12500, SCLK_freq 5000 (standard input):atyfb: BIOS contains driver information table. (standard input):atyfb: colour active matrix monitor detected: IBM ITSX93 (standard input):atyfb: id=6, 1400x1050 pixels, 262144 colours (LT mode) (standard input):atyfb: supports refresh rates [60], default 60 Hz (standard input):atyfb: LCD CRTC parameters: 108.28 1400 1448 1560 1688 1050 1050 1053 1066 (standard input):atyfb: : 9259 128 1400 48 112 13 1050 0 3 (standard input):atyfb: 8M SGRAM (1:1), 29.498928 MHz XTAL, 236 MHz PLL, 83 Mhz MCLK, 125 MHz XCLK (standard input):atyfb: fb0: ATY Mach64 frame buffer device on PCI Thanks, cga |
From: cga2000 <cg...@op...> - 2007-10-20 04:26:37
|
On Tue, Oct 16, 2007 at 04:35:25AM EDT, Antonino A. Daplas wrote: > On Mon, 2007-10-15 at 19:04 -0400, cga2000 wrote: > > On Mon, Oct 15, 2007 at 10:51:20AM EDT, Antonino A. Daplas wrote: [..] Hello Tony, I have finally gotten around to building a 2.6.23 kernel. I tried to change my foreground/background colors via setterm without any effect. > > > /sys/module/vt/parameters/default_blu|default_grn|default_red I do have this directory now that I have upgraded to a the more recent kernel, but I am unsure how I should use these files. Thanks, cga |
From: Antonino A. D. <ad...@gm...> - 2007-10-20 16:08:52
|
On Sat, 2007-10-20 at 00:26 -0400, cga2000 wrote: > On Tue, Oct 16, 2007 at 04:35:25AM EDT, Antonino A. Daplas wrote: > > On Mon, 2007-10-15 at 19:04 -0400, cga2000 wrote: > > > On Mon, Oct 15, 2007 at 10:51:20AM EDT, Antonino A. Daplas wrote: > > [..] > > Hello Tony, > > I have finally gotten around to building a 2.6.23 kernel. I tried to > change my foreground/background colors via setterm without any effect. > > > > > /sys/module/vt/parameters/default_blu|default_grn|default_red > > I do have this directory now that I have upgraded to a the more recent > kernel, but I am unsure how I should use these files. > Each has 16 entries in decimal format standing for the red (default_red), green (default_grn) and blue (default_blu) part of the color. I'll be using hexadecimal from here on, since that is easier to understand. So the first entry (index 0) is 0x00 for red, 0x00 for green and 0x00 for blue. If you combine them as RGB, you get 0x000000 (black). Index 0 (which is black by default) is the default bacground color. Entry 8 (index 7), which is RGB 0xaaaaaa (light gray) is the default foreground color. If you want to change the background color from black to blue: 1. cat /sys/module/vt/parameters/default_blu > blue.txt 2. change the first entry from 0 to 255, 3. echo blue.txt > /sys/module/vt/parameters/default_blu 4. Type 'reset' to reset the terminal. 6. You should not have a light gray text on a blue background. Tony |
From: cga2000 <cg...@op...> - 2007-10-21 12:35:09
|
> On Sat, Oct 20, 2007 at 12:06:31PM EDT, Antonino A. Daplas wrote: > > > Each has 16 entries in decimal format standing for the red > > (default_red), green (default_grn) and blue (default_blu) part of the > > color. I'll be using hexadecimal from here on, since that is easier to > > understand. > > > > So the first entry (index 0) is 0x00 for red, 0x00 for green and 0x00 > > for blue. If you combine them as RGB, you get 0x000000 (black). Index 0 > > (which is black by default) is the default bacground color. Entry 8 > > (index 7), which is RGB 0xaaaaaa (light gray) is the default foreground > > color. > > Yes, why on earth did they decide on decimal entries? > > > If you want to change the background color from black to blue: > > > > 1. cat /sys/module/vt/parameters/default_blu > blue.txt > > 2. change the first entry from 0 to 255, > > 3. echo blue.txt > /sys/module/vt/parameters/default_blu > > This should be: > > # cp blue.txt /sys/module/vt/parameters/default_blu > > .. right? > > > 4. Type 'reset' to reset the terminal. > > Yes, I now have a blue background. > > > 6. You should not have a light gray text on a blue background. > > But why three files and 16 entries in each file? > > Is this documented in a man page or anything? > > Thanks, > cga |
From: Antonino A. D. <ad...@gm...> - 2007-10-21 23:31:40
|
On Sun, 2007-10-21 at 08:34 -0400, cga2000 wrote: > > On Sat, Oct 20, 2007 at 12:06:31PM EDT, Antonino A. Daplas wrote: > > > > > Each has 16 entries in decimal format standing for the red > > > (default_red), green (default_grn) and blue (default_blu) part of the > > > color. I'll be using hexadecimal from here on, since that is easier to > > > understand. > > > > > > So the first entry (index 0) is 0x00 for red, 0x00 for green and 0x00 > > > for blue. If you combine them as RGB, you get 0x000000 (black). Index 0 > > > (which is black by default) is the default bacground color. Entry 8 > > > (index 7), which is RGB 0xaaaaaa (light gray) is the default foreground > > > color. > > > > Yes, why on earth did they decide on decimal entries? It just happened :-). This is probably something you would handle with a script, so whether it's in decimal or hex probably does not matter. > > > > > If you want to change the background color from black to blue: > > > > > > 1. cat /sys/module/vt/parameters/default_blu > blue.txt > > > 2. change the first entry from 0 to 255, > > > 3. echo blue.txt > /sys/module/vt/parameters/default_blu > > > > This should be: > > > > # cp blue.txt /sys/module/vt/parameters/default_blu > > > > .. right? > > Yes, my mistake, cp or cat. > > > > 4. Type 'reset' to reset the terminal. > > > > Yes, I now have a blue background. > > > > > 6. You should not have a light gray text on a blue background. > > > > But why three files and 16 entries in each file? > > The 16 entries is standard since the linux console is limited to 16 colors. As to why separate each component (R, G, B) into 3 files, it's because that is the simplest way, otherwise, we have to add additional code to separate each color into its components before feeding them to the console layer. > > Is this documented in a man page or anything? > > Not in so many words. This is a new feature, and it is described in Documentation/kernel-parameters.txt. Tony |
From: cga2000 <cg...@op...> - 2007-10-22 00:31:08
|
On Sun, Oct 21, 2007 at 07:31:31PM EDT, Antonino A. Daplas wrote: > On Sun, 2007-10-21 at 08:34 -0400, cga2000 wrote: > > > On Sat, Oct 20, 2007 at 12:06:31PM EDT, Antonino A. Daplas wrote: > > > > > > > Each has 16 entries in decimal format standing for the red > > > > (default_red), green (default_grn) and blue (default_blu) part of the > > > > color. I'll be using hexadecimal from here on, since that is easier to > > > > understand. > > > > > > > > So the first entry (index 0) is 0x00 for red, 0x00 for green and 0x00 > > > > for blue. If you combine them as RGB, you get 0x000000 (black). Index 0 > > > > (which is black by default) is the default bacground color. Entry 8 > > > > (index 7), which is RGB 0xaaaaaa (light gray) is the default foreground > > > > color. > > > > > > Yes, why on earth did they decide on decimal entries? > > It just happened :-). This is probably something you would handle with a > script, so whether it's in decimal or hex probably does not matter. Glad you got the implicit smiley. I'm used to stuff like #808080 being half way or just about between #000000 and #FFFFFF so I don't find decimal rgb representation very legible. [..] > > > But why three files and 16 entries in each file? > > > > > The 16 entries is standard since the linux console is limited to 16 > colors. As to why separate each component (R, G, B) into 3 files, it's > because that is the simplest way, otherwise, we have to add additional > code to separate each color into its components before feeding them to > the console layer. OK. So we have three files for our three fundamental colors. You have probably realized I'm a bit thick by now .. but why 16 entries to each file - iow, I would have expected one for the background, one for the foreground .. etc. I'm still a bit lost. > > > Is this documented in a man page or anything? > > > > > Not in so many words. This is a new feature, and it is described in > Documentation/kernel-parameters.txt. Well I guess this thread will eventually have all the specs. Pruning it a bit, you'd have the a linux/Documentation/fbcon_colors.txt I do appreciate your help with this. Cheers, cga |
From: Antonino A. D. <ad...@gm...> - 2007-10-22 14:20:56
|
On Sun, 2007-10-21 at 20:30 -0400, cga2000 wrote: > On Sun, Oct 21, 2007 at 07:31:31PM EDT, Antonino A. Daplas wrote: > > On Sun, 2007-10-21 at 08:34 -0400, cga2000 wrote: > > > > On Sat, Oct 20, 2007 at 12:06:31PM EDT, Antonino A. Daplas wrote: > > > > > > > > The 16 entries is standard since the linux console is limited to 16 > > colors. As to why separate each component (R, G, B) into 3 files, it's > > because that is the simplest way, otherwise, we have to add additional > > code to separate each color into its components before feeding them to > > the console layer. > > OK. > > So we have three files for our three fundamental colors. > > You have probably realized I'm a bit thick by now .. but why 16 entries > to each file - iow, I would have expected one for the background, one > for the foreground .. etc. > > I'm still a bit lost. Do you mean why not one file per attribute? ... ie, default_foreground, default_background, default_underline, etc? It is simply more complicated since we have to take into consideration how a console driver represents an attribute, ie, one driver may use blue for underline, another may use green, and in another ignored. Color though is treated the same whatever driver you use. Tony |