Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 9

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>The Linux 3Dfx HOWTO: Installazione</TITLE>
<LINK HREF="3Dfx-HOWTO-4.html" REL=next>
<LINK HREF="3Dfx-HOWTO-2.html" REL=previous>
<LINK HREF="3Dfx-HOWTO.html#toc3" REL=contents>
</HEAD>
<BODY>
<A HREF="3Dfx-HOWTO-4.html">Avanti</A>
<A HREF="3Dfx-HOWTO-2.html">Indietro</A>
<A HREF="3Dfx-HOWTO.html#toc3">Indice</A>
<HR>
<H2><A NAME="s3">3. Installazione</A></H2>

<P>Configurare Linux per supportare gli acceleratori 3Dfx richiede i seguenti
passi:
<OL>
<LI>Installare la scheda.</LI>
<LI>Installare la distribuzione Glide.</LI>
<LI>Compilare, linkare e/o lanciare le applicazioni.</LI>
</OL>
<P>Le sezioni seguenti trattano ognuno di questi passi in dettaglio.
<H2><A NAME="ss3.1">3.1 Installare la Scheda</A>
</H2>

<P>Per installare l'hardware si seguano le istruzioni del produttore o o
lo si lasci fare al rivenditore. Non dovrebbe essere necessario modificare le impostazioni
degli IRQ o del canale DMA, dato che il Plug&amp;Pray (tm) o quelle predefinite
dalla fabbrica dovrebbero funzionare. Le schede add-on qui descritte sono
dispositivi mappati in memoria e non usano IRQ. L'unico tipo di conflitto da
evitare &egrave; la sovrapposizione di memoria con altri dispositivi.
<P>Dato che 3Dfx non sviluppa o vende nessuna scheda direttamente, &egrave; inutile
contattarla per qualche problema.
<H3>Risoluzione dei problemi di installazione hardware</H3>

<P>Per verificare l'installazione e la mappatura della memoria, si esegua
<CODE>cat /proc/pci</CODE>. L'output dovrebbe contenere qualcosa come
<HR>
<PRE>
  Bus  0, device  12, function  0:
    VGA compatible controller: S3 Inc. Vision 968 (rev 0).
      Medium devsel.  IRQ 11.
      Non-prefetchable 32 bit memory at 0xf4000000.

  Bus  0, device   9, function  0:
    Multimedia video controller: Unknown vendor Unknown device (rev 2).
      Vendor id=121a. Device id=1.
      Fast devsel.  Fast back-to-back capable.
      Prefetchable 32 bit memory at 0xfb000000.
</PRE>
<HR>

per una Diamond Monster 3D affiancata ad una Diamond Stealth-64. Inoltre un
<CODE>cat /proc/cpuinfo /proc/meminfo</CODE> pu&ograve; essere utile per scovare un
conflitto e/o mandare un bug report.
<P>Con i kernel attuali, probabilmente si avr&agrave; un avviso in fase di boot
simile a questo 
<HR>
<PRE>
Jun 12 12:31:52 hal kernel: Warning : Unknown PCI device (121a:1).
Please read include/linux/pci.h
</PRE>
<HR>

che pu&ograve; essere tranquillamente ignorato. Se si ha una scheda non molto comune o
si incappati in una nuova revisione, si dovrebbe prendersi l'onere di
seguire le avvertenze  in <CODE>/usr/include/linux/pci.h</CODE> e mandare
tutte le informazioni 
necessarie a 
<A HREF="mailto:linux-pcisupport@cao-vlsi.ibp.fr">linux-pcisupport@cao-vlsi.ibp.fr</A>.
<P>Se si incontra un qualche problema con la scheda, si dovrebe provare a verificare se
il supporto DOS e/o Win95 o NT funziona. Probabilmante non si ricever&agrave;
alcuna 
risposta utile da un fabbricante di schede per un bug report o una richiesta
riguardanti Linux. Anzi, avendo avuto a che fare con il sistema di supporto
e-mail di Diamond, non mi aspetto nessuna risposta utile anche per gli altri
sistemi operativi.
<H3>Configurare il kernel</H3>

<P>Non c'&egrave; bisogno di alcuna configurazione del kernel, fin tanto che il
supporto PCI &egrave; abilitato. Si pu&ograve; consultare il 
<A HREF="http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html">Linux Kernel HOWTO</A> per i dettagli sulla compilazione del kernel.
<H3>Configurare i device</H3>

<P>I driver correnti non hanno (ancora) bisogno di device speciali. Si
differenziano cos&igrave; dallo sviluppo degli altri driver (p.es. i driver sonori,
che usano <CODE>/dev/dsp</CODE> e <CODE>/dev/audio</CODE>). Il driver usa il device
<CODE>/dev/mem</CODE> che dovrebbe sempre essere disponibile. Di
conseguenza, si deve usare <CODE>setuid</CODE> o i diritti di root per
accedere alla scheda acceleratrice.
<H2><A NAME="ss3.2">3.2 Disposizione dei Monitor</A>
</H2>

<P>Le schede add-on sono utilizzabili in due modi. Si pu&ograve; sia far passare il
segnale video dalla propria scheda VGA attraverso la scheda accelerata
e poi allo schermo, sia usare due schermi contemporaneamente. Si
faccia riferimento al manuale fornito dal costruttore della scheda per
i dettagli. Entrambe le configurazioni 
sono state provate con la scheda Monster 3D.
<H3>Soluzione a schermo singolo</H3>

<P>Questa configurazione permette di controllare l'operativit&agrave; di base della
scheda acceleratrice - se il segnale video non viene trasmesso al monitor
&egrave; possibile che ci sia un guaso hardware.
<P>Si ricorda che il segnale video pu&ograve; deteriorarsi sensibilmente se passa
attraverso la scheda video. Fino ad un certo punto questo &egrave;
inevitabile. Comunque, in alcune recensioni si sono lamentati della scarsa
efficenza dei cavi forniti a.es. con la Monster 3D e a giudicare da quello
che ho testato, non ci sono stati cambiamenti.
<P>Ci sono altre pecche nella configurazione ad un solo schermo. Passare dalla
modalit&agrave; VGA a quella accelerata far&agrave; cambiare la risoluzione e la frequenza
di aggiornamento, anche se si usa una risoluzione di 640x480 p.es. con
X11. Inoltre, se si sta usanto X11, la propria applicazione &egrave;
responsabile della 
gestione di tutti gli eventi della tastiera e del mouse, quindi si
potrebbe rimanere bloccato a causa di un cambio di contesto o
esposizione sullo schermo dell'X11 (che &egrave; completamente invisibile
quando viene usata la modalit&agrave; accelerata). Si potrebbe usare la
modalit&agrave; SVGA in console invece dell'X11. 
<P>Se si usa la configurazione ad un solo monitor e si cambia spesso modo,
ci si ricordi che il proprio monitor potrebbe non gradire questo tipo
di utilizzo. 
<H3>Soluzione a due schermi</H3>

<P>La scheda acceleratrice non ha bisogno del segnale d'ingresso VGA. Invece
di far passare l'output video attraverso la scheda acceleratrice, si pu&ograve;
attaccare un secondo monitor alla sua uscita e usarli entrambi
contemporaneamente. Questa soluzione &egrave; pi&ugrave; costosa, ma d&agrave; risultati
migliori, dato che lo schermo principale funzioner&agrave; sempre in alta
risoluzione senza la perdita di qualit&agrave; del segnale che la soluzione
passante comporta. Inoltre si pu&ograve; usare X11 e l'accelerazione a schermo
intero in parallelo, facilitando lo sviluppo e il debugging.
<P>Il problema &egrave; che la scheda accelerata non produce alcun segnale video
quando non viene utilizzata. Di conseguenza, ogni volta che l'accelerazione
grafica termina, pu&ograve; attivarsi lo screensave/powersave hardware del monitor,
se esiste. Anche in questo caso, il proprio hardware potrebbe non
gradire di essere trattato in questo modo. Si dovrebbe usare
<HR>
<PRE>
setenv SST_DUALSCREEN 1
</PRE>
<HR>

per forzare un output video continuo in questa configurazione.
<H2><A NAME="ss3.3">3.3 Installare la Distribuzione Glide</A>
</H2>

<P>Il driver e la libreria Glide sono forniti come un unico archivio
compresso. Si usino <CODE>tar</CODE> e <CODE>gzip</CODE> per scompattarlo e si
seguano le istruzioni nel README e nell'INSTALL che accompagnano la
distribuzione. Si legga ed esegua lo script di installazione. L'installazione copia tutto in
/usr/local/glide/include,lib,bin e imposta l'ld.conf a cercare l&agrave;. Dove
installare la distribuzione e impostare l'ld.conf sono due azioni
indipendenti. Se non si esegue l'impostazione dell'ld.conf allora si
avr&agrave; bisogno dell'LD_LIBRARY_PATH.
<P>Se si vogliono compilare le proprie applicazioni grafiche, sar&agrave;
necessario installare gli header file in una locazione accessibile in
fase di compilazione. Se non si vuole usare l'installazione vista
sopra (cio&egrave; si decide per un'altra locazione), ci si 
assicuri che ogni applicazione possa accedere alle librerie condivise in
esecuzione o si otterr&agrave; un risultato del tipo <CODE>can't load
library 'libglide.s&ograve;</CODE>.
<H3>Usare il programma detect</H3>

<P>Nella distribuzione c'&egrave; il programma <CODE>bin/detect</CODE> (il sorgente non &egrave;
disponibile). Si deve lanciarlo come root, ed si otterr&agrave; qualcosa di simile
<HR>
<PRE>
slot  vendorId   devId   baseAddr0  command  description
----  --------  ------  ----------  -------  -----------
  00    0x8086  0x122d  0x00000000   0x0006  Intel:430FX (Triton)
  07    0x8086  0x122e  0x00000000   0x0007  Intel:ISA bridge
  09    0x121a  0x0001  0xfb000008   0x0002  3Dfx:video multimedia adapter
  10    0x1000  0x0001  0x0000e401   0x0007  ???:SCSI bus controller
  11    0x9004  0x8178  0x0000e001   0x0017  Adaptec:SCSI bus controller
  12    0x5333  0x88f0  0xf4000000   0x0083  S3:VGA-compatible display co
</PRE>
<HR>

come risultato. Se non si possiedono i diritti di root, il programma
se ne verr&agrave; fuori con
<HR>
<PRE>
Permission denied: Failed to change I/O privilege. Are you root?
</PRE>
<HR>

L'output potr&agrave; tornare utile per un bug report.
<H3>Usare i programmi di test</H3>

<P>All'interno della distribuzione Glide si pu&ograve; trovare una directory con i
programmi di test. Si noti che questi programmi sono sotto il
copyright della 3Dfx e sono legalmente usabili solo se hai comprato
una scheda con chipset 
3Dfx. Si veda il file LICENSE nella distribuzione o il loro sito web
<A HREF="http://www.3dfx.com/">www.3dfx.com</A> per i dettagli.
<P>Si raccomanda di compilare e linkare i programmi di test anche se nella
distribuzione ci sono i binari. Nota che alcuni programmi richiedono che
altri file della distribuzione, come <CODE>alpha.3df</CODE>, siano disponibili
nella stessa cartella. Tutti i programmi di test usano una risoluzione di
640x480. Alcuni richiedono la pressione di pi&ugrave; tasti come input, altri
chiederanno solamente <CODE>Press A Key To Begin Test</CODE>. Si faccia
attenzione alla perdita del contesto di input se si sta eseguendo in
contemporanea X11 sullo stesso schermo. 
<P>Si consulti il README.test per una lista del programmi, e per altri
dettagli. 

<HR>
<A HREF="3Dfx-HOWTO-4.html">Avanti</A>
<A HREF="3Dfx-HOWTO-2.html">Indietro</A>
<A HREF="3Dfx-HOWTO.html#toc3">Indice</A>
</BODY>
</HTML>