Framebuffer VESA in console

Da Wiki di NetBSD Italia.

Questa brevissima guida illustrerà come impostare il framebuffer sul nostro OS preferito.

L'unico prerequisito necessario è saper compilare il kernel, si può quindi leggere: Come compilare il kernel.


Indice

Introduzione

Lo scorso febbraio 2006 Jared D. McNeill su tech-kern ha annunciato le varie migliorie al supporto per il framebuffer vesa.

Con la 4.0 il framebuffer vesa (vesafb) è stato importanto anche nella versione -stable.

Uno svantaggio di vesafb è che attualmente gira solo sul port i386.

Perché abilitare il supporto per il framebuffer vesa?

Ci sono vari motivi per abilitare vesafb comunque non nascondo che vesafb non è indispensabile, quindi si può benissimo farne a meno.

Comunque vesafb presenta varie caratteristiche interessanti:

  • impostare la risoluzione video
  • impostare la profondità dei colori
  • avere un terminale più grande
  • godere dello splashscreen

Come abilitarlo

Il procedimento è semplicissimo, mentre stiamo ad editare il file di configurazione del kernel dobbiamo controllare di non avere commentato le seguenti righe:

[...]
# enable splash screen support; requires hw driver support (lo splashscreen)
options         SPLASHSCREEN
options         SPLASHSCREEN_PROGRESS
[...]
# VESA framebuffer console (il framebuffer vero e proprio)
options 	KVM86			# required for vesabios
vesabios*	at vesabiosbus?
vesafb* 	at vesabios?
options 	VESAFB_WIDTH=800
options 	VESAFB_HEIGHT=600
options 	VESAFB_DEPTH=8
options 	VESAFB_PM		# power management support
wsdisplay*	at vesafb? console ?
[...]

Se si ha una scheda video che supporta VIA Unichrome:

[...]
# VIA Unichrome framebuffer console
unichromefb* 	at pci? dev ? function ?
wsdisplay* 	at unichromefb?
[...]

NOTA: In alcuni elaboratori l'opzione VESAFB_PM può provocare un impossibilità dell'avvio del sistema, commentare quindi se non si è interessati.

Analizziamo brevemente le varie opzioni:

  • VESAFB_WIDTH larghezza: serve per impostare la larghezza dello schermo (es.: 1024)
  • VESAFB_HEIGHT altezza: serve per impostare l'altezza dello schermo (es.: 768)
  • VESAFB_DEPHT profondità: serve per impostare la profondità del colore (es.: 16)
  • VESAFB_PM: serve per manipolare lo stato del monitor, ad esempio spegnerlo o mandarlo in standby (premendo due volte il tasto Bloc Scorr il monitor si spegne o si accende)

Conclusioni

In questa breve guida si è illustrato come abilitare il supporto per il framebuffer, caratteristiche quali SPLASHSCREEN per esempio possono rendere l'ambiente molto più elegante e carino.

Buon divertimento con vesafb

Strumenti personali