View previous topic :: View next topic |
Author |
Message |
asph l33t
Joined: 25 Aug 2003 Posts: 741 Location: Barcelona, Spain
|
Posted: Thu Sep 04, 2003 2:43 pm Post subject: Mini How-to use framebuffer in your console (penguin logo!) |
|
|
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 |
|
|
blue.sca l33t
Joined: 28 Aug 2003 Posts: 680 Location: Mainz, Germany
|
Posted: Thu Sep 04, 2003 4:15 pm Post subject: |
|
|
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 |
|
|
asph l33t
Joined: 25 Aug 2003 Posts: 741 Location: Barcelona, Spain
|
Posted: Fri Sep 05, 2003 7:53 am Post subject: |
|
|
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 |
|
|
Narada Guru
Joined: 12 Dec 2002 Posts: 300 Location: London, UK
|
|
Back to top |
|
|
asph l33t
Joined: 25 Aug 2003 Posts: 741 Location: Barcelona, Spain
|
Posted: Fri Sep 05, 2003 1:53 pm Post subject: |
|
|
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 |
|
|
raven.sorrow n00b
Joined: 10 Oct 2005 Posts: 20
|
Posted: Tue Oct 11, 2005 3:16 am Post subject: |
|
|
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 |
|
|
|
|
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
|
|