[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: svgatextmode -> fbset: not so smooth



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:1024x768-24@60" #this 1024x768 24bpp 60Hz
	label=Linux

That fixed it for me.
Good luck,
Steve

-- 
:wq



Reply to: