svgatextmode - fbset: not so smooth

2001-09-20 Thread Ian Zimmerman

Hello everyone.  I just switched to a more modern graphics board with
VESA 2.0 support.  This board is not supported by svgatextmode, and
won't be as there's no development of svgatextmode anymore.  So I have
to use the framebuffer console, instead of svgatextmode, to provide
high-resolution text display (which is quite important to me).

The modes I can select for the framebuffer at boot are limited to the
VESA modes, for example to get 128x48 characters I need vga=0x305
which is 1024x768 pixels at 60Hz refresh rate.  But the hardware can
do much better: in X I can have this resolution with 95Hz!  Now it
seems I should be able to set the desired mode with fbset after
booting, just like I did with svgatextmode. 

Unfortunately, there's a catch: fbset only changes the mode _for the
current virtual terminal_.  As soon as I switch to another vt, I am
back to the default mode from boot.  So I tried something like this

#! /bin/sh

for i in 1 2 3 4 5 6 7 8 ; do
chvt $i ; fbset 1024x768-95
done

chvt 1


but not even this seems to work!  The mode is changed - for vt1 only,
just as before.  Somehow the kernel seems to tightly associate the
framebuffer settings with vt1 until I switch to another vt
_interactively_.  So the only way to change the mode for all vts is to
log in on each one and run fbset manually.  On top of that fbset can
only be run as root, so this must be done with su/sudo :-(

All this almost makes me regret the upgrade.  Is there a way around
this difficulty?

Thanks,

-- 
Ian Zimmerman, Oakland, California, U.S.A.
The easiest way to win an argument: ridicule your opponent's basic
assumptions by stating their negation and postfixing it with , right?
GPG pub key: 433BA087 9C0F 194F 203A 63F7 B1B8 6E5A 8CA3 27DB 433B A087



Re: svgatextmode - fbset: not so smooth

2001-09-20 Thread Stephen Gran
Thus spake Ian Zimmerman:
 
 Hello everyone.  I just switched to a more modern graphics board with
 VESA 2.0 support.  This board is not supported by svgatextmode, and
 won't be as there's no development of svgatextmode anymore.  So I have
 to use the framebuffer console, instead of svgatextmode, to provide
 high-resolution text display (which is quite important to me).
 
 The modes I can select for the framebuffer at boot are limited to the
 VESA modes, for example to get 128x48 characters I need vga=0x305
 which is 1024x768 pixels at 60Hz refresh rate.  But the hardware can
 do much better: in X I can have this resolution with 95Hz!  Now it
 seems I should be able to set the desired mode with fbset after
 booting, just like I did with svgatextmode. 
 
 Unfortunately, there's a catch: fbset only changes the mode _for the
 current virtual terminal_.  As soon as I switch to another vt, I am
 back to the default mode from boot.  So I tried something like this
 
 #! /bin/sh
 
 for i in 1 2 3 4 5 6 7 8 ; do
 chvt $i ; fbset 1024x768-95
 done
 
 chvt 1
 
 
 but not even this seems to work!  The mode is changed - for vt1 only,
 just as before.  Somehow the kernel seems to tightly associate the
 framebuffer settings with vt1 until I switch to another vt
 _interactively_.  So the only way to change the mode for all vts is to
 log in on each one and run fbset manually.  On top of that fbset can
 only be run as root, so this must be done with su/sudo :-(
 
 All this almost makes me regret the upgrade.  Is there a way around
 this difficulty?

Just resolved this problem myself last night - in /etc/lilo.conf, put in
a line like this:

image=/vmlinuz  #(or whatever your boot image is)
append=video=vesafb:[EMAIL PROTECTED] #this 1024x768 24bpp 60Hz
label=Linux

That fixed it for me.
Good luck,
Steve

-- 
:wq