Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Mini How-to use framebuffer in your console (penguin logo!)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
asph
l33t
l33t


Joined: 25 Aug 2003
Posts: 738
Location: Barcelona, Spain

PostPosted: Thu Sep 04, 2003 2:43 pm    Post subject: Mini How-to use framebuffer in your console (penguin logo!) Reply with quote

Quote:
A framebuffer device is an abstraction for the graphic hardware. It represents the frame buffer of some video hardware, and allows application software to access the graphic hardware through a well-defined interface, so that the software doesn't need to know anything about the low-level interface stuff
[Taken from Geert Uytterhoeven's framebuffer.txt in the linux kernel sources]

To use it you will have to know how to compile a kernel, so maybe you should get some information on how to do that before continuing with this howto, as i will assume you already have the know-how.

Let's see what do you have to compile in the kernel to be able to use the fb device:

Code:
Code maturity level options  --->
    [*] Prompt for development and/or incomplete code/drivers
Processor type and features  --->
    [*] MTRR (Memory Type Range Register) support
Console Drivers ->
    [*] VGA text console
    [*] Video mode selection support
Frame-buffer support ->
    [*] Support for frame buffer devices
    [*] VESA VGA graphics console
    [*] Advanced low level driver options
       <*> 8 bpp packed pixels support
       <*> 16 bpp packed pixels support
       <*> 24 bpp packed pixels support
       <*> 32 bpp packed pixels support
       <*> VGA characters/attributes support
    [*] Select compiled-in fonts
      [*]   VGA 8x8 font
      [*]   VGA 8x16 font


I would recommend this settings, they are the most compatible i can think of. In the "Frame-buffer support, don't select any other card but VESA. If you don't have a vesa compatible card, get more info here.

Ok, now you have to recompile your kernel, and install it in the system.

LILO USERS:

Just add this parameter below the kernel image:

Code:
image=/boot/bzImage
    label = Linux
    vga=791


Save the changes, run lilo and reboot :)

GRUB USERS:

Just add this parameter after the passing the root path:

Code:

kernel  /boot/vmlinuz root=/dev/hda5 read-only vga=791


I used 791 in the examples, it's a code for 1024x768, here you have some of the modes you can use:

Quote:

# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769


There is a tool named "fbset" which will allow you to change the resolution on the fly. Just 'emerge fbset':

You can change the resolution by typing:
Code:
fbset -fb /dev/fb0 1024x768-60


You have a list of the modes you can use at: /etc/fb.modes

Well, with this you should be seing the small penguin in your screen ;)
I plan to make this howto bigger, explaining how to use it with more cards, on X, multi-headed and so other things you can do. Anyway, I tought this could be useful for new linux users how want to get a bigger resolution in the consoles.
_________________
gentoo sex is updatedb; locate; talk; date; cd; strip; look; touch; finger; unzip; uptime; gawk; head; emerge --oneshot condom; mount; fsck; gasp; more; yes; yes; yes; more; umount; emerge -C condom; make clean; sleep
Back to top
View user's profile Send private message
blue.sca
l33t
l33t


Joined: 28 Aug 2003
Posts: 680
Location: Mainz, Germany

PostPosted: Thu Sep 04, 2003 4:15 pm    Post subject: Reply with quote

nice how-to, doing this later.

one question: is framebuffer able to use 1600x1200? and what are the requirements on cpu and gfx? (k 2 questions, dont bother me :))
Back to top
View user's profile Send private message
asph
l33t
l33t


Joined: 25 Aug 2003
Posts: 738
Location: Barcelona, Spain

PostPosted: Fri Sep 05, 2003 7:53 am    Post subject: Reply with quote

You can check the /etc/fb.modes to see if there's a 1600x1200 mode.

For 1600x1200, you try using vga=0x31F (24 bits)

Or configure fb.modes the resolution you would like to use:

mode "1600x1200 60Hz 16bit"
# D: 156.00 MHz, H: 76.200 kHz, V: 60.00 Hz
geometry 1600 1200 1600 1200 16
timings 6411 256 32 52 10 160 8
endmode

The VESA 2.0 only coberts up to 1600x1200, it will just go slow if your card sux, or you will not see the fill screen (virtual > physical). Just play with them till you find a good resolution. I find 1024x768 is a good choice, you will have to get a magnifying glass to read something ;)
_________________
gentoo sex is updatedb; locate; talk; date; cd; strip; look; touch; finger; unzip; uptime; gawk; head; emerge --oneshot condom; mount; fsck; gasp; more; yes; yes; yes; more; umount; emerge -C condom; make clean; sleep
Back to top
View user's profile Send private message
Narada
Guru
Guru


Joined: 12 Dec 2002
Posts: 300
Location: London, UK

PostPosted: Fri Sep 05, 2003 12:47 pm    Post subject: Reply with quote

In case this was missed The Gentoo Framebuffer, Bootsplash & Grubsplash How-To is also available for reference on this topic.
_________________
http://dhruba.name/
Back to top
View user's profile Send private message
asph
l33t
l33t


Joined: 25 Aug 2003
Posts: 738
Location: Barcelona, Spain

PostPosted: Fri Sep 05, 2003 1:53 pm    Post subject: Reply with quote

wow, great work there.. now i realise my little "howto" is too little ;)

thanks for the link
_________________
gentoo sex is updatedb; locate; talk; date; cd; strip; look; touch; finger; unzip; uptime; gawk; head; emerge --oneshot condom; mount; fsck; gasp; more; yes; yes; yes; more; umount; emerge -C condom; make clean; sleep
Back to top
View user's profile Send private message
raven.sorrow
n00b
n00b


Joined: 10 Oct 2005
Posts: 20

PostPosted: Tue Oct 11, 2005 3:16 am    Post subject: Reply with quote

I did follow this howto as closely as I could given my system. I can't get my screen to change it's resolution. FrameBuffer Support is compilied into the kernel already and I have the fbset utility. My /etc/db.modes is empty though? How would I fill it will the available modes of my monitor? A MAG 720v2? According to MAG's Website all they have a 702v2?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum