Avanti Indietro Indice

6. Utilizzare i device framebuffer su piattaforme Atari m68k

Questa sezione descrive le opzioni framebuffer sulle piattaforme Atari m68k.

6.1 Che modalità sono disponibili sulle piattaforme Atari m68k?

Colori  320x200 320x480 640x200 640x400 640x480 896x608 1280x960
-------+---------------------------------------------------------
 1 bit |                         sthigh   vga2    falh2   tthigh
 2 bit |                 stmid            vga4
 4 bit | stlow                         ttmid/vga16 falh16
 8 bit |         ttlow                   vga256

ttlow, ttmid e tthigh sono usati solo dalla TT, whilst vga2, vga4, vga15, vga256, falh3 e falh16 sono usati solo dalla Falcon.

Quando usate con l'opzione del kernel video=xxx, senza sub-opzioni, il kernel effettuerà il rivelamento delle modalità nel seguente ordine, finché non troverà una modalità che è possibile con l'hardware stabilito.

Puoi specificare la modalità specifica che intendi usare, se non desideri d'effettuare l'autorivelamento per le modalità che preferisci. Per esempio, video=vga16 ottiene uno schermo 640x480 a 4 bit.

6.2 Sub-opzioni addizionali sulle piattaforme Atari m68k

Ci sono un po' di sub-opzioni disponibili col parametro video=xxx:

6.3 Utilizzare la sub-opzione "internal" sulle piattaforme Atari m68k

Sintassi: internal:(xres);(yres)[;(xres_max);(yres_max);(offset)]

Questa opzione specifica le capacità interne estese di alcuni hardware video, ad esempio le modalità OverScan. (xres) e (yres) danno le dimensioni estese dello schermo.

Se la tua modalità OverScan necessita di un bordo nero, dovrai scrivere gli ultimi tre argomenti della sub-opzione internal:. (xres_max) è la lunghezza massima delle righe che l'hardware permette, (yres_max) è il massimo numero di righe e (offset) è lo spazio in bytes tra la parte visibile della memoria video ed il suo inizio fisico.

Spesso, le capacità interne estese del video hardware devono essere attivate, per far questo si deve utilizzare l'opzione "switches=*". [Nota: l'Autore desidererebbe informazioni aggiuntive su questo punto, per favero. La documentazione sul m68k nel kernel non è abbastanza chiara su questo punto e lui non possiede un Atari! Anche esempi possono essere utili]

6.4 Utilizzare la sub-opzione "external" sulle piattaforme Atari m68k

Sintassi: external:(xres);(yres);(depth);(org);(scrmem)[;(scrlen)[;(vgabase)[;(colw)[;(coltype)[;(xres_virtual)]]]]]

Ciò è piuttosto complicato, quindi il presente documento tenterà di spiegarlo nel modo più chiaro possibile, ma l'Autore apprezzerà molto se qualcuno potrà darci una controllata per vedere se s'è dimenticato di fsckare qualcosa! :o)

Questa sub-opzione specifica che hai un hardware video esterno (molto probabilmente una scheda grafica) e come utilizzarlo con Linux. Il kernel è fondamentalmente limitato a ciò che conosce dell'hardware video interno, pertanto gli si dovrà fornire i parametri necessari affinché sia in grado d'utilizzare l'hardware video esterno. Ci son due limitazioni: devi passare a questa modalità prima dell'avvio del sistema e, una volta avviato, non potrai più cambiare modalità.

I primi tre parametri sono evidenti: danno le dimensioni in pixel dello schermo in altezza, larghezza e profondità. La profondità fornita dovrebbe essere il numero di colori definiti come 2^n il numero di piani richiesto. Per esempio, se desideri usare una visualizzazione a 256 colori, dovrai indicare 8 come la profondità. Ciò dipende dall'hardware grafico esterno, per cui sarai limitato da quel che l'hardware può fare.

Conseguentemente a questo, dovrai pure informare il kernel su come la memoria video è organizzata - fornendo una lettera come parametro (org).

Comunque, per modalità monocromatiche, il parametro (org) ha un significato differente

Il prossimo punto importante a proposito dell'hardware video è l'indirizzo di base della memoria video. Questo è dato dal parametro (scrmem) come numero esadecimale con un prefisso 0x. Lo dovrai recuperare dalla documentazione in allegato al tuo hardware video esterno.

Il successivo parametro, (scrlen), informa il kernel delle dimensioni della memoria video. Se manca, viene calcolato dai parametri (xres), (yres) e (depth). Non è comunque più utile scrivere un valore per questo parametro. Per lasciarlo vuoto, scrivi due punti e virgola consecutivi se devi indicare il parametro (vgabase), altrimenti ignoralo semplicemente.

Il parametro (vgabase) è opzionale. Se non è dato, il kernel non può leggere/scrivere alcun registro dei colori per l'hardware video e di conseguenza dovrai impostare gli appropriati colori prima dell'avvio di Linux. Ma se la tua scheda è compatibile VGA puoi dare al kernel l'indirizzo dove può trovare il registro VGA in modo che possa modificare la tavola di confronto dei colori. Questa informazione può essere rintracciata nella documentazione del tuo hardware video esterno. Per chiarire, (vgabase) è l'indirizzo di base, ad esempio un indirizzo allineato a 4k. Per leggere/scrivere i registri dei colori, il kernel utilizza l'intervallo d'indirizzo compreso tra (vgabase) + 0x3c7 e (vgabase) + 0x3c9. Questo parametro è dato in esadecimale e dev'avere un prefisso 0x, proprio come (scrmem).

(colw) è significativo solo se il parametro (vgabase) viene specificato. Avvisa il kernel su quanto grande sia ogni registro dei colori, ad esempio il numero di bit per ogni singolo colore (rosso/verde/blu). Il valore preimpostato è di solito 6 bit, ma è pure comune specificare 8 bit.

(coltype) è usato col parametro (vgabase) ed informa il kernel sul modello del registro dei colori della tua scheda grafica. Attualmente le tipologie supportate sono vga e mv300. vga è quella preimpostata.

(xres_virtual) è richiesto solo per le schede ProMST/ET4000 in cui la lunghezza fisica delle righe è diversa da quella visibile. Con la ProMST dovrai indicare 2048, mentre per la ET4000 dipende dall'inizializzazione della scheda.


Avanti Indietro Indice