File: 3Dfx-HOWTO

package info (click to toggle)
doc-linux-it 2000.01-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 8,136 kB
  • ctags: 19
  • sloc: perl: 249; makefile: 50; sh: 42
file content (1254 lines) | stat: -rw-r--r-- 52,901 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
  The Linux 3Dfx HOWTO
  Bernd Kreimeier (bk@gamers.org)
  v1.03, 12 Luglio 1997

  Questo documento descrive il supporto del chip acceleratore grafico
  3Dfx per Linux. Elenca l'hardware supportato, descrive come configu
  rare i driver e risponde alle domande pi frequenti. Lo scopo  quello
  di portare i nuovi utenti al successo il pi velocemente possibile e
  di ridurre cos il traffico nei newsgroup e nelle mailing list Usenet.
  Documentazione tradotta da Piero Boato (pboato@dsi.unive.it).

  1.  Introduzione

  Questo  il Linux 3Dfx HOWTO. Vuole essere una rapida guida su tutto
  quello che c' da sapere per installare e configurare il supporto per
  3Dfx sotto Linux. Qui si trovano le risposte alle domande pi
  frequenti sia riguardo lo specifico supporto per 3Dfx sia riguardo la
  grafica 3D sotto Linux in generale. Inoltre ci sono alcuni riferimenti
  ad altre fonti di informazione su svariati argomenti collegati alla
  grafica 3D generata a computer da acceleratori hardware.

  Queste informazioni sono valide solo per Linux installato su
  piattaforme Intel. Alcune informazioni possono essere applicabili
  anche su altre architetture, ma non ho esperienza o informazioni
  dirette. Sono da applicare solamente su schede basate sulla tecnologia
  3Dfx, ogni altro acceleratore grafico non rientra nel contesto di
  questa documentazione.

  1.1.  Riconoscimenti

  La maggior parte delle informazioni contenute in questa documentazione
  sono state fornite dalle persone coinvolte nella trasposizione della
  Glide per Linux e nel suo processo di beta test. Daryll Strauss ha
  fatto la trasposizione, Paul J. Metzger ha modificato il driver Mesa
  Voodoo (scritto da David Bucciarelli) per Linux, Brian Paul lo ha
  integrato con la sua famosa libreria Mesa. Riguardo alla Mesa
  accelerata per Voodoo Graphics (tm) un ringrazziamento particolare va
  a Henri Fousse e Charlie Wallace. La gente alla 3Dfx, in particolar
  modo Gary Sanders e Gary McTaggart, ha fornito molto materiale, come
  ha fatto Ross Q. Smith della Quantum3D.

  Grazie al pacchetto SGML-Tools (conosciuto anche come Linuxdoc-SGML),
  questo HOWTO  disponibile in diversi formati, tutti generati dallo
  stesso file sorgente. Per informazioni sull'SGML-Tools vedi la sua
  homepage all'indirizzo web.inter.NL.net/users/C.deGroot/sgmltools/.

  3Dfx, il logo 3Dfx Interactive, Voodoo Graphics (tm), e Voodoo Rush
  (tm) sono marchi registrati dalla 3Dfx Interactive, Inc. Glide, TexUS,
  Pixelfx e Texelfx sono marchi registrati dalla 3Dfx Interactive, Inc.
  OpenGL  un marchio registrato dalla Silicon Graphics. Obsidian  un
  marchio registrato dalla Quantum3D. Gli altri nomi di prodotti sono
  marchi registrati dai rispettivi proprietari e con ci sono da
  considerarsi propriamente riconosciuti.

  1.2.  Storia delle Revisioni


     Versione 1.03
        Prima versione resa pubblica.


  1.3.  Nuove Versioni di Questa Documentazione

  Puoi trovare la versione pi aggiornata di questa documentazione
  presso www.gamers.org/dEngine/xf3D/.

  Le nuove versioni di questa documentazione verranno postate nel
  newsgroup comp.os.linux.answers. Inoltre saranno depositate in vari
  siti per l'ftp anonimo che archiviano questo tipo di informazioni come
  ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/.

  Le versioni ipertestuali di questo e di altri Linux HOWTO sono
  disponibili su molti siti World-Wide-Web, compreso
  sunsite.unc.edu/mdw/mdw.html. La maggior parte delle distribuzioni di
  Linux su CD-ROM includono gli HOWTO, spesso nella directory /usr/doc/,
  inoltre presso alcuni rivenditori si pu acquistarne una copia
  stampata.

  Se si fa una traduzione di questo documento in un'altra lingua, me lo
  si faccia sapere che accenner qui alla sua esistenza.

  1.4.  Commenti e Correzioni

  Confido in te, lettore, per far s che questo HOWTO sia utile. Se si
  hanno suggerimenti, correzioni o commenti, per piacere me li si
  spedisca (bk@gamers.org), e io cercher di inserirli nella prossima
  revisione. Per piacere si aggiunga HOWTO 3Dfx al soggetto della
  lettera, cos procmail lo scaricher nell'apposita cartella.

  Prima di mandare bug report o domande, per favore si legga per intero
  questo HOWTO e si inviino informazioni dettagliate sul problema.

  Se si publica questa documentazione in un qualche CD-ROM o in altro
  supporto fisico,  sar apprezzata una copia in omaggio. Mi si scriva
  per il mio indirizzo postale. Inoltre si consideri la possibilit di
  una donazione al Linux Documentation Project come contributo al
  mantenimento della documentazione gratuita per Linux. Per maggiori
  informazioni si contatti il coordinatore dei Linux HOWTO, Greg Hankins
  (gregh@sunsite.unc.edu).

  1.5.  Politica di Distribuzione

  Copyright (C) 1997 Bernd Kreimeier.

  Questo HOWTO  una documentazione gratuita; si pu ridistribuirlo e/o
  modificarlo secondo le specifiche della GNU General Public License
  publicata dalla Free Software Foundation; presenti nella versione 2
  della License, o (a scelta) in qualche versione seguente.

  Questa documentazione viene distribuita nella speranza che possa
  essere utile, ma senza alcuna garanzia; senza anche l'implicita
  garanzia di commerciabilit o di adeguatezza ad uno scopo particolare.
  Si veda la GNU General Public License per maggiori particolari.

  Si pu ottenere una copia della GNU General Public License scrivendo
  alla Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA
  02139, USA.


  2.  Tecnologia degli Acceleratori Grafici

  2.1.  Principi

  Questa sezione descrive molto velocemente la tecnologia degli
  acceleratori grafici per computer, in modo da aiutare a capire i
  concetti usati in seguito. Se se ne vuole sapere di pi si pu
  consultare un libro su OpenGL.

  Fondamentalmente, la grafica 3D su computer richiede spesso un gran
  numero di calcoli per ogni singolo pixel dello schermo. Questo  vero
  soprattutto per quelle applicazioni che devono rappresentare un mondo
  poligonale nei vari frame di un'animazione interattiva. Anche a basse
  risoluzioni come 320x200, ci richiede una capacit di calcolo
  superiore a quella che pu essere fornita anche dal PC pi potente.

  Per superare questo collo di bottiglia, alcune societ hanno
  progettato, costruito e venduto processori dedicati alle operazioni
  necessarie per la grafica 3D. Purtroppo praticamente nessuno dei
  produttori di schede ha finora offerto alcun supporto per Linux.
  Fortunatamente, il produttore dei chipset Voodoo Graphics (tm) e
  Voodoo Rush (tm), 3Dfx, ha deciso di supportare l'uso delle schede
  basate sul Voodoo Graphics (tm) con Linux. Ci che si prefigge questa
  documentazione  di descrivere il supporto attualmente disponibile.

  2.2.  Configurazioni Hardware (Add-on)

  Gli acceleratori grafici si trovano in formati diversi: o come schede
  PCI capaci di passare attraverso il segnale video di una scheda VGA
  (possibilmente un acceleratore 2D o video), o come schede PCI che
  generano grafica sia VGA sia 3D (rimpiazzando totalmente il vecchio
  controller VGA). Le schede 3Dfx basate sul Voodoo Graphics (tm)
  appartengono alla prima categoria. Entreremo nel merito in seguito.

  Se non ci sono conflitti hardware, qualsiasi scheda acceleratrice pu
  essere presente sotto Linux senza interferire, ma per accedere
  all'acceleratore, si deve disporre di un driver.

  2.3.  Limiti di Prestazioni

  2.3.1.  Limiti di fill rate

  La grafica accelerata dall'hardware  limitata nelle prestazioni per
  diversi motivi. Un tipico collo di bottiglia  il fill rate: il numero
  totale di pixel che l'hardware pu generare in condizioni ottimali in
  un determinato tempo - ad es. circa 40 Mpixel/secondo. Data una
  risoluzione di 640x480 e nessuna sovrascrittura, l'hardware non pu
  generare pi di 130 frame/secondo.

  Il numero di sovrascritture dipende dall'attuale profondit della
  scena (quanti poligoni interseca un raggio passante per un pixel) e
  dall'efficienza dell'algoritmo di determinazione delle superfici
  visibili usato dall'applicazione. Disegnare ogni pixel due volte
  significa 65 frame/secondo, una sovrascrittura pari a 2 (disegnare
  ogni pixel tre volte) ti porta a circa 43 frame/secondo.

  2.3.2.  Perdita di refresh

  Inoltre, probabilmente si utilizzeranno due buffer, invertendo il
  buffer in primo piano con quello nascosto non appena il frame 
  completato. Qui entra in gioco la velocit di refresh del monitor: si
  pu invertire i buffer soltanto durante il periodo di refresh. Se la
  propria applicazione salta un periodo di refresh a 60Hz ad ogni frame,
  il frame rate effettivo scender a 30Hz (un frame ogni due refresh).
  Perdere due periodi di refresh porter a 20Hz.

  2.3.3.  Limiti di primitive

  Se la propria scena non  molto dettagliata (solo pochi poligoni, ma
  molto grandi, con molte sovrascritture), l'applicazione sar
  probabilmente limitata dal fill rate -  possibile fornire altre
  primitive (linee, triangoli, poligoni) all'hardware, ma la generazione
  dei pixel non pu essere in alcun modo accelerata.

  Invece, se la propria applicazione rappresenta un infinit di piccoli
  triangoli o poligoni, probabilmente ci si ritrover limitati dalla
  generazione delle primitive. Dato una banda passante del PCI di 33MHz
  per 32bit, o 132 MB/sec, e un pacchetto di dati per triangolo di 3
  vertici (9 coordinate, ognuna a 16bit, pi 3 colori, ognuno a 24bit),
  e un frame rate di 20Hz, si potranno trasferire circa 240K
  triangoli/frame - senza contare i dati delle texture, gli accessi al
  disco e le altre operazioni.

  2.4.  Caratteristiche dell'Accelerazione Hardware

  Le operazioni di rendering solitamente supportate dagli acceleratori
  hardware che si rispettino sono:

    Texture mapping con correzione prospettica

    Alpha-blending, Nebbia

    Anti-aliasing

    Filtering bi-lineare delle texture

    Livello di dettaglio (LOD) MIP mapping

    Correzione a livello sub-pixel

    Ombreggiatura Gouraud basata sui poligoni e modulazione delle
     texture

    Double buffering

    Buffering di profondit, stencil buffer

  Solitamente, l'hardware permette un aumento della risoluzione dello
  schermo (dato che il rendering esclusivamente software  limitato a
  320x200 pixel per i frame rate interattivi), il filtraggio avanzato,
  la traslucenza reale del canale alpha, e l'uso di frame buffer a
  colori reali a 16bpp o 24bpp.

  2.5.  Cenni sull'Architettura Voodoo Graphics (tm)

  Solitamente, il maggior collo di bottiglia si riscontra nell'accesso
  alla memoria delle texture e ai buffer di profondit e dei fotogrammi.
  Per ogni pixel nello schermo, ci sono almeno uno (mappatura in
  vicinanza), quattro (bi-lineare) o otto (tri-lineare) accessi in
  lettura alla memoria delle texture, pi una lettura/scrittura al
  buffer di profondit e una lettura/scrittura al buffer dei fotogrammi.

  L'architettura Voodoo Graphics (tm) separa la memoria delle texture da
  quella dei buffer dei fotogrammi e di profondit suddividendo il
  rendering in due stadi separati, con due unit distinte (il pixelfx e
  il texelfx), ognuna con il proprio collegamento alla memoria
  corrispondente. Questo permette un fill rate superiore alla media, a
  discapito della gestione della memoria (p.es. la memoria dedicata ai
  frame non utilizzata non pu essere usata per il caching delle
  texture).

  Inoltre, un Voodoo Graphics (tm) pu usare due TMU (unit di gestione
  delle texture o texelfx), ed infine, due Voodoo Graphics (tm) possone
  essere collegati per accedere allo stesso RAMDAC con un meccanismo
  chiamato Scan-Line Interleaving (SLI). In parole povere SLI significa
  che ogni pixelfx disegna una riga di schermo ogni due, il che riduce
  l'impatto della banda passante sulla memoria destinata ai frame di
  ogni pixelfx.

  3.  Installazione

  Configurare Linux per supportare gli acceleratori 3Dfx richiede i
  seguenti passi:


  1. Installare la scheda.

  2. Installare la distribuzione Glide.

  3. Compilare, linkare e/o lanciare le applicazioni.

  Le sezioni seguenti trattano ognuno di questi passi in dettaglio.

  3.1.  Installare la Scheda

  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&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  la
  sovrapposizione di memoria con altri dispositivi.

  Dato che 3Dfx non sviluppa o vende nessuna scheda direttamente, 
  inutile contattarla per qualche problema.

  3.1.1.  Risoluzione dei problemi di installazione hardware

  Per verificare l'installazione e la mappatura della memoria, si esegua
  cat /proc/pci. L'output dovrebbe contenere qualcosa come

  ______________________________________________________________________
    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.
  ______________________________________________________________________


  per una Diamond Monster 3D affiancata ad una Diamond Stealth-64.
  Inoltre un cat /proc/cpuinfo /proc/meminfo pu essere utile per sco
  vare un conflitto e/o mandare un bug report.

  Con i kernel attuali, probabilmente si avr un avviso in fase di boot
  simile a questo

  ______________________________________________________________________
  Jun 12 12:31:52 hal kernel: Warning : Unknown PCI device (121a:1).
  Please read include/linux/pci.h
  ______________________________________________________________________


  che pu 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 /usr/include/linux/pci.h e man
  dare tutte le informazioni necessarie a linux-pcisupport@cao-
  vlsi.ibp.fr.

  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 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.

  3.1.2.  Configurare il kernel

  Non c' bisogno di alcuna configurazione del kernel, fin tanto che il
  supporto PCI  abilitato. Si pu consultare il Linux Kernel HOWTO per
  i dettagli sulla compilazione del kernel.

  3.1.3.  Configurare i device

  I driver correnti non hanno (ancora) bisogno di device speciali. Si
  differenziano cos dallo sviluppo degli altri driver (p.es. i driver
  sonori, che usano /dev/dsp e /dev/audio). Il driver usa il device
  /dev/mem che dovrebbe sempre essere disponibile. Di conseguenza, si
  deve usare setuid o i diritti di root per accedere alla scheda
  acceleratrice.

  3.2.  Disposizione dei Monitor

  Le schede add-on sono utilizzabili in due modi. Si pu 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.

  3.2.1.  Soluzione a schermo singolo

  Questa configurazione permette di controllare l'operativit di base
  della scheda acceleratrice - se il segnale video non viene trasmesso
  al monitor  possibile che ci sia un guaso hardware.

  Si ricorda che il segnale video pu deteriorarsi sensibilmente se
  passa attraverso la scheda video. Fino ad un certo punto questo 
  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.

  Ci sono altre pecche nella configurazione ad un solo schermo. Passare
  dalla modalit VGA a quella accelerata far 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  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 
  completamente invisibile quando viene usata la modalit accelerata).
  Si potrebbe usare la modalit SVGA in console invece dell'X11.

  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.

  3.2.2.  Soluzione a due schermi

  La scheda acceleratrice non ha bisogno del segnale d'ingresso VGA.
  Invece di far passare l'output video attraverso la scheda
  acceleratrice, si pu attaccare un secondo monitor alla sua uscita e
  usarli entrambi contemporaneamente. Questa soluzione  pi costosa, ma
  d risultati migliori, dato che lo schermo principale funzioner
  sempre in alta risoluzione senza la perdita di qualit del segnale che
  la soluzione passante comporta. Inoltre si pu usare X11 e
  l'accelerazione a schermo intero in parallelo, facilitando lo sviluppo
  e il debugging.

  Il problema  che la scheda accelerata non produce alcun segnale video
  quando non viene utilizzata. Di conseguenza, ogni volta che
  l'accelerazione grafica termina, pu 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

  ______________________________________________________________________
  setenv SST_DUALSCREEN 1
  ______________________________________________________________________


  per forzare un output video continuo in questa configurazione.

  3.3.  Installare la Distribuzione Glide

  Il driver e la libreria Glide sono forniti come un unico archivio
  compresso. Si usino tar e gzip 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. 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 bisogno
  dell'LD_LIBRARY_PATH.

  Se si vogliono compilare le proprie applicazioni grafiche, sar
  necessario installare gli header file in una locazione accessibile in
  fase di compilazione. Se non si vuole usare l'installazione vista
  sopra (cio si decide per un'altra locazione), ci si assicuri che ogni
  applicazione possa accedere alle librerie condivise in esecuzione o si
  otterr un risultato del tipo can't load library 'libglide.s.

  3.3.1.  Usare il programma detect

  Nella distribuzione c' il programma bin/detect (il sorgente non 
  disponibile). Si deve lanciarlo come root, ed si otterr qualcosa di
  simile

  ______________________________________________________________________
  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
  ______________________________________________________________________


  come risultato. Se non si possiedono i diritti di root, il programma
  se ne verr fuori con

  ______________________________________________________________________
  Permission denied: Failed to change I/O privilege. Are you root?
  ______________________________________________________________________


  L'output potr tornare utile per un bug report.

  3.3.2.  Usare i programmi di test

  All'interno della distribuzione Glide si pu 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 www.3dfx.com per i dettagli.


  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 alpha.3df, siano
  disponibili nella stessa cartella. Tutti i programmi di test usano una
  risoluzione di 640x480. Alcuni richiedono la pressione di pi tasti
  come input, altri chiederanno solamente Press A Key To Begin Test. Si
  faccia attenzione alla perdita del contesto di input se si sta
  eseguendo in contemporanea X11 sullo stesso schermo.

  Si consulti il README.test per una lista del programmi, e per altri
  dettagli.


  4.  Risposte Alle Domande Pi Frequenti

  Le sezioni seguenti rispondono ad alcune delle domande che sono state
  poste nei newsgroup e mailing list Usenet. Le FAQ sono state suddivise
  per comodit in pi parti, vale a dire

    FAQ: Requisiti?

    FAQ: Voodoo Graphics (tm)? 3Dfx?

    FAQ: Glide?

    FAQ: Glide e SVGA?

    FAQ: Glide e XFree86?

    FAQ: Glide vs. OpenGL/Mesa?

    FAQ: Quake?

    FAQ: Risoluzione dei problemi?

  Ogni sezione elenca alcune domande e risposte, a cui si possono
  ricondurre la maggior parte dei problemi.


  5.  FAQ: Requisiti?

  5.1.  Quali sono i requisiti di sistema?

  Un PC Linux con PCI 2.1 o seguente, un monitor con risoluzione 640x480
  o maggiore e una scheda acceleratrice 3D basata sul 3Dfx Voodoo
  Graphics (tm). Funziona su P5 o P6, con o senza MMX.

  5.2.  Funziona con Linux-Alpha?

  Attualmente non ci sono distribuzioni Linux Glide per le piattaforme
  diverse dalla i586. Dato che i sorgenti della Glide non sono
  pubblicamente disponibili, si devono aspettare i binari. Quantum3D ha
  annunciato il supporto per DEC Alpha per la seconda met del 97. Per
  piacere si contatti Daryll Strauss se si  interessati al supporto di
  questo progetto.

  5.3.  Quali chipset sono supportati?

  Attualmente sotto Linux  supportata la pi recente revisione dei
  chipset 3Dfx Voodoo Graphics (tm). I chipset Voodoo Rush (tm) non sono
  tuttora supportati.

  5.4.  Quali schede sono supportate?

  Questa sezione elenca le schede che attualmente si sanno funzionare
  sotto Linux. Non ci sono schede ufficialmente supportate, dato che
  3Dfx non vende alcuna scheda. Queste informazioni sono basate
  sull'ultimo kernel di Linux disponibile al momento di scrivere, ed
  elencano le schede che sono state testate, pi le schede che
  dovrebbero funzionare, ma che non sono state provate.

   importante sottolineare che il supporto Linux per una data scheda
  non richiede solamente un driver per la componente acceleratrice 3D.
  Se una scheda integra anche la parte VGA, allora sar necessario anche
  il supporto per Linux SVGA e per XFree86. Attualmente,  preferibile
  la soluzione con scheda add-on, dato che ti permette di scegliere una
  scheda grafica normale ben supportata da Linux. Ci sono altri aspetti
  discussi in seguito.

  Sono state testate le seguenti configurazioni:

    Diamond Monster 3D con Diamond Stealth 64 3240XL

    Orchid  Righteous 3D con una scheda grafica basata sul S3-968

    Quantum3D Obsidian 50-4220

  Queste sono le configurazioni esistenti delle schede Obsidian, la
  maggior parte delle quali non sono ancora state testate, ma comunque
  dovrebbero funzionare.

     Obsidian 50-2200
        1 pixelfx con 2MB di frame buffer memory, 1 texelfx con 2MB di
        texture memory

     Obsidian 50-2400
        1 pixelfx con 2MB di frame buffer memory, 1 texelfx con 4MB di
        texture memory

     Obsidian 50-4400
        1 pixelfx con 4MB di frame buffer memory, 1 texelfx con 4MB di
        texture memory

     Obsidian 50-2220
        1 pixelfx con 2MB di frame buffer memory, 2 texelfx con 2MB di
        texture memory ciascuno, per un totale di 4MB di texture memory

     Obsidian 50-4220
        1 pixelfx con 4MB di frame buffer memory, 2 texelfx con 2MB di
        texture memory ciascuno, per un totale di 4MB di texture memory.
        Questa configurazione era l'originale "Obsidian Pro" che era
        stata usata per il 3DS Plug-in Project (ora fatto con la
        Datapath Realistorm). Datapath era solito chiamarla "Pro VR".

     Obsidian 50-4440
        1 pixelfx con 4MB di frame buffer memory, 2 texelfx con 4MB di
        texture memory ciascuno, per un totale di 8MB di texture memory.
        Questa configurazione  il nuovo obiettivo per il 3DS Plug-in
        Project (ora fatto con la Datapath Realistorm).

     Obsidian 50-2440
        1 pixelfx con 2MB di frame buffer memory, 2 texelfx con 4MB di
        texture memory ciascuno, per un totale di 8MB di texture memory.

     Obsidian 100-2440
        aka 2440-SLI, aka XS-100, o semplicemente "SLI".


        Due schede PCI, ognuna con 1 pixelfx con 2MB di frame buffer
        memory e 2 texelfx con 4MB di texture memory ciascuno, per un
        totale di 8MB di texture memory per scheda. Le texture devono
        essere memorizzate su entrambe le schede, cos ci non equivale
        a 16MB di texture memory. L'uscita video scan line interleaved
        permette di raddoppiare il fill rate.

  Il pacchetto commerciale con software aggiuntivo per Autodesk 3DS MAX
  chiamato Obsidian 3DS, originariamente usava 50-4220 ed ora  dis
  tribuito assieme ad una scheda 50-4440.

  Le seguenti schede non sono ancora state testate:

    Deltron RealVision Flash 3D

  Con l'attuale Glide 2.4, le seguenti schede basate sul Voodoo Rush
  (tm) non dovrebbero funzionare con Linux:

    Hercules Stingray 128/3D

    Intergraph Intense 3D Rush

  Dato che il chipset Voodoo Rush (tm) supporta operazioni in finestra,
  viene usato su schede VGA accelerate, che richiedono un supporto per
  XFree86 o Linux SVGA non ancora disponibile.

  Le schede non basate sui chipset 3Dfx (e.g. prodotte da S3, Matrox,
  3Dlabs, Videologic) non funzionano con i driver 3Dfx e esulano dagli
  scopi di questa documentazione.

  5.5.   supportata la Hercules Stingray 128/3D?

  In questa scheda, l'acceleratore 2D  montato su una scheda PCI e il
  chipset Voodoo Rush (tm) su una scheda figlia. Attualmente questa
  scheda non  supportata n dalla Linux Glide, n dai server accelerati
  XFree86. Tuttavia il server SVGA XFree86 funziona secondo quanto
  riportato nella mailing list di Mesa.  Supporta gli 8, i 16 e i 32
  bpp.

  ______________________________________________________________________
  # device section settings
  Chipset "AT24"
  Videoram 4032

  # videomodes tested by Oliver Schaertel
  #  25.18  28.32  for 640 x 480   (70hz)
  #  61.60         for 1024 x 786  (60hz)
  #  120           for 1280 x 1024 (66hz)
  ______________________________________________________________________


  Attualmente non c' supporto per il Voodoo Rush (tm). Varrebbe la pena
  tentare, ma siccome il produttore non ha fornito alcuna scheda di
  prova, ci si deve arrangiare.

  Per quanto riguarda il componente VGA collegato al Voodoo Rush (tm), 
  un acceleratore della Alliance Semiconductor's ProMotion-AT3D
  multimedia. Il supporto XFree86 per l'AT3D/AT24 non sar accelerato
  prima della XFree86 4.0, che  lungi a venire.

  5.6.   supportata la Intergraph Intense 3D Rush?

  Sebbene questa scheda sia integrata in un'unica scheda, 
  sostanzialmente la stessa combinazione di chipset (AT3D, Voodoo Rush
  (tm)), cos vale lo stesso discorso fatto in precedenza per la
  Hercules Stingray. Da quanto ha detto David E. Anderson della
  Intergraph, per il momento non hanno intenzione di fornire alcun
  supporto per Linux.


  6.  FAQ: Voodoo Graphics (tm)? 3Dfx?

  6.1.  Chi  3Dfx?

  3Dfx  un industria di San Jose produttrice di acceleratori grafici 3D
  per giochi arcade, console, e schede per PC. Il loro sito ufficiale 
  www.3dfx.com. 3Dfx non vende direttamente alcuna scheda, ma hanno una
  societ associata, la Quantum3D. Si veda la loro home page al sito
  www.quantum3d.com per maggiori informazioni.

  6.2.  Che cos'e il Voodoo Graphics (tm)?

  Il Voodoo Graphics (tm)  un chipset prodotto dalla 3Dfx. Viene usato
  nelle schede acceleratrici per PC. Si veda la sezione dell'HOWTO
  sull'hardware supportato.

  C' un nuovo chipset, il Voodoo Rush (tm), che attualmente non 
  supportato sotto Linux.

  6.3.  Dove posso trovare altre informazioni sul Voodoo Graphics (tm)?

  C' una FAQ della 3Dfx, che dovrebbe essere disponibile al loro sito
  web. Si possono trovare informazioni commerciali nei seguenti siti:

    www.3dfx.com

    www.quantum3d.com

    www.orchid.com

    www.diamondmm.com

    www.deltrontech.com



  7.  FAQ: Glide? TexUS?

  7.1.  Che cos' Glide?

  Glide  un API proprietaria pi i driver per accedere
  all'accelerazione grafica 3D hardware basata sui chipset prodotti
  dalla 3Dfx. Glide  stato progettato ed implementato per DOS, Windows
  e Macintosh, ed  stato convertito per Linux da Daryll Strauss.

  7.2.  Che cos' TexUS?

  Nella distribuzione  libtexus.so, che  l'Interactive Texture Utility
  Software di 3Dfx.  una libreria di eleborazione delle immagine ed
  alcune utility per preparare le immagini per essere usate con la
  libreria Interactive Glide di 3Dfx. Tra le caratteristiche di TexUS ci
  sono la conversione dei formati dei file, la creazione di MIPmap e il
  supporto per l'Interactive Narrow Channel Compression delle texture di
  3Dfx.

  L'utility texus di TexUS legge le immagini in alcuni dei formati pi
  diffusi (TGA, PPM, RGT), genera MIPmap e scrive le immagini come file
  di texture 3Dfx Interactive (vedi a.es. alpha.3df, incluso nella
  distribuzione) o come file immagine per essere controllati. Per i
  dettagli sui parametri di texus e sulle API, si veda la documentazione
  di TexUS.

  7.3.  Glide  freeware?

  No. Glide non  n GPL n soggetta a qualche altra licenza pubblica.
  Si veda il file LICENSE nella distribuzione per i dettagli. Glide
  viene fornita solo in formato binaro e non si dovrebbe usare o
  distribuire alcun file se non quelli rilasciati pubblicamente, se non
  si ha firmato un NDA. La distribuzione Glide inclusi i sorgenti dei
  programmi di test sono sotto il copyright della 3Dfx.

  Lo stesso discorso va fatto per tutti i sorgenti presenti nella
  distribuzione Glide. Secondo le parole della 3Dfx: Questi non sono di
  pubblico dominio, ma possono essere distribuiti liberamente solo ai
  posessori di prodotti 3Dfx. Niente scheda, niente codice!

  7.4.   disponibile il sorgente della Glide?

  No. Il sorgente della Glide  reso disponibile solo in base ad uno
  speciale accordo e un NDA con 3Dfx.

  7.5.  La Linux Glide  supportata?

  Attualmente la Linux Glide non  supportata. Essenzialmente, viene
  fornita sotto le stesse restrizioni della DLL GLQuake.

  Comunque, 3Dfx vuole fornire il maggior supporto possibilie, e sta
  iniziando a muoversi in questa direzione. Per il prossimo periodo, si
  dovr far riferimento al newsgroup 3Dfx (vedere sotto).

  Inoltre, la pagina web della Quantum3D riporta che il supporto Linux
  (per la Obsidian)  previsto sia per l'architettura Intel sia per
  quella AXP nella seconda met del 97.

  7.6.  Dove posso postare le domande su Glide?

  Ci sono alcuni newsgroups attualmente disponibili sul server NNTP
  news.3dfx.com gestiti dalla 3Dfx. Questi gruppi USENET sono dedicati
  alla 3Dfx e a Glide in generale e principalmente forniscono assistenza
  per DOS, Win95 e NT. L'attuale elenco :

  ______________________________________________________________________
  3dfx.d3d.drivers
  3dfx.events
  3dfx.game.titles
  3dfx.games.glquake
  3dfx.glide
  3dfx.glide.linux
  3dfx.oem.products.diamond.monster3d
  3dfx.oem.products.hercules.stingray128-3d
  3dfx.oem.products.orchid.righteous3d
  3dfx.oem.products.quantum3d.obsidian
  3dfx.oem.products.realvision.flash3d
  3dfx.products
  3dfx.test
  ______________________________________________________________________


  Per piacere si usi news.3dfx.com/3dfx.glide.linux per tutte le domande
  relative alla Linux Glide.

  Una mailing list dedicata alla Linux Glide  in preparazione
  (probabilmente sar disponibile ad agosto inoltrato). Si spedisca una
  lettera a majordomo@gamers.org, senza alcun soggetto, e con info
  linux-3dfx come corpo del messaggio per avere informazioni sulle
  direttive di posting, l'archivio di hypermail e su come iscriversi
  alla lista o averne, quando disponibile, il compendio.

  7.7.  Dove spedire i bug report?

  Attualmente si deve fare riferimento al newsgroup (vedere sopra), che
   news.3dfx.com/3dfx.glide.linux. Non c' nessun supporto e-mail
  ufficiale attivato. Per le domande non specificatamente riguardanti la
  Linux Glide, ci si assicuri di usare un altro newsgroup.

  7.8.  Chi la sta mantenendo?

  3Dfx nominer presto un mantenitore ufficiale. Attualmente, il
  mantenitore non ufficiale della conversione per Linux della Glide 
  Daryll Strauss. Per favore si postino i bug report nel newsgroup (v.
  sopra). Se si crede di aver trovato un bug non riportato
  precedentemente, per piacere si scriva a Daryll all'indirizzo
  daryll@harlot.rb.ca.us.

  7.9.  Come posso contribuire alla Linux Glide?

  Si possono inviare dettagliati bug report. Un'altra possibilit 
  fornire programmi d'esempio da includere nella distribuzione. Un altro
  grande contributo potrebbe essere aggiungere del codice ai sorgenti
  del driver Mesa Voodoo basato sulla Glide. Si vedano la sezione sul
  Mesa Voodoo in seguito.

  7.10.  Devo usare la Glide?

  S. Dato che per il momento non ci sono altri driver Voodoo Graphics
  (tm) disponibili per Linux.

  7.11.  Dovrei programmare usando l'API della Glide?

  Dipende dall'applicazione che si ha intenzione di sviluppare. La Glide
   un API proprietaria che  in parte simile alla OpenGL o alla Mesa,
  in parte contiene funzioni disponibili come estensioni di qualche
  implementazione di OpenGL e in parte contiene funzioni non
  riscontrabili da nessuna altra parte se non nella Glide.

  Se si vuole usare l'API OpenGL, si deve usare Mesa (vedere sotto).
  Mesa, o meglio il driver Mesa Voodoo, propone una API che si rif
  all'API OpenGL, molto ben documentata e largamente usata. Comunque, il
  driver Mesa Voodoo  in versione alpha primitiva, quindi se lo si usa
  si devono accettarne le scarse prestazioni e il mancato supporto di
  alcune funzioni.

  In breve, la scelta  personale - se si cercano le massime prestazioni
  e si accettano i problemi di portabilit ad hardware non-3Dfx, La
  Glide non  una cattiva scelta. Se si tiene al mantenimento, l'OpenGL
  potrebbe essere la scelta miglior a lungo termine.

  7.12.  Qual' la versione attuale?

  La versione della Linux Glide che sar resa pubblica  la 2.4, dato
  che  la prossima release della Glide per DOS/Windows.

  Nota che questo HOWTO  stato scritto basandosi sulla Linux Glide
  2.3.1, dato che la Glide 2.4 non  ancora stata rilasciata e che la
  conversione per Linux della Glide 2.4 non  ancora stata terminata.
  Visto che l'API non cambier e visto che non ci sono variazioni
  pianificate per la distribuzione Linux Glide, questa documentazione
  ricoprir ancora la maggior parte dei problemi.

  7.13.  La Linux Glide  identica alla DOS/Windows Glide?

  La versione della Linux Glide che verr resa pubblica sar la 2.4,
  seguendo la release della DOS/Windows Glide 2.4. L'API e
  l'implementazione si suppongono essere identiche.

  La Glide 2.2  stata portata in Linux nell'Aprile 1997. La conversione
  della Glide 2.3.1  stata fatta nel Giugno 1997. Entrambe prive di una
  ottimizzazione chiave per l'impostazione dei triangoli, che sar
  inclusa nella release 2.4 della Linux Glide. Le conversioni precedenti
  non sono state rese disponibili pubblicamente e sono state usate solo
  per il beta test.

  7.14.  Dove trovo informazioni sulla Glide?

  Ci sono esaurienti informazioni disponibili da 3Dfx. Si pu scaricarle
  dalla loro home page a www.3dfx.com/software/download_glide.html. Sono
  gratuite, presumendo che tu abbia comprato una scheda basata
  sull'hardware 3Dfx. Per favore si leggano il regolamento di licenza.

  Come inizio, si pu cercare qualcosa dei seguenti testi:

    Glide Release Notes

    Glide Programming Guide

    Glide Reference Manual

    Glide Porting Guide

    TexUs Texture Utility Software

    ATB Release Notes

    Installing and Using the Obsidian

     Sono disponibili come documenti Microsoft Word, e fanno parte della
     distribuzione Glide per Windows, cio del file d'archivio
     autoscompattante. Per scaricarli separatamente dovrebbe essere
     disponibile la copia postscript a www.3dfx.com. Nota che il numero
     della release non  sempre sintonizzato con quello della Glide.

  7.15.  Dove trovare alcuni demo per Glide?

  Si possono trovare i sorgenti di demo per Glide all'interno della
  distribuzione (i programmi di test) e alla home page della 3Dfx. Il
  problema con quest'ultimi  che alcuni richiedono ATB. Per portare
  questi demo sotto Linux, dev'essere completamente riscritto la
  gestione degli eventi.

  Inotre, possono essere utili alcuni dei sorgenti delle demo per OpenGL
  che accompagnano Mesa e GLUT. Anche se l'API della Glide  diverso
  dall'API OpenGL, entrambi mirano alla stessa hardware rendering
  pipeline.


  8.  FAQ: Glide e SVGA?

  Non si dovrebbero avere problemi a lanciare le applicazioni basate
  sulla Glide utilizzando la modalit VGA sia a schermo singolo sia a
  schermo doppio. Potrebbe essere una buona idea utilizzare una
  risoluzione di 640x480 anche in modalita SVGA, se si sta utilizzando
  una configurazione a schermo singolo.

  9.  FAQ: Glide e XFree86?


  9.1.  Funziona con XFree86?

  Sostanzialmente, l'hardware Voodoo Graphics (tm) non si interessa di
  X. L'X server inoltre non noter che il segnale video generato
  dall'hardware VGA non giunge al monitor nella configurazione a schermo
  singolo. Se la propria applicazione non  stata scritta facendo
  attenzione all'X, il passaggio della Glide alla modalit a schermo
  intero pu causare dei problemi (vedi la sezione Risoluzione dei
  Problemi). Se non interessa il sovraccarico di lavoro che comporta
  scrivere un'applicazione sotto X11, si potrebbe usare la console in
  modalit SVGA.

  Riassumendo: s, funziona sotto XFree86, ma no, non  cooperante se
  non si scrivono le applicazioni accortamente.

  9.2.  Funziona solo a schermo intero?

  Vedi sopra. L'hardware Voodoo Graphics (tm) non  conscio di un
  ambiente a finestre, e nemmeno lo  la Linux Glide.

  9.3.  Cosa mi dici sulla GLX per XFree86?

  Ci sono un paio di problemi.

  L'hardware Voodoo Graphics (tm) attualmente supportato e l'attuale
  revisione della Linux Glide funzionano solamente a schermo intero, e
  non sono predisposte per condividere un framebuffer (buffer video,
  memoria video) con un ambiente a finestre. Cos GLX o qualsiasi altra
  integrazione con l'X11 non  ancora possibile.

  Il Voodoo Rush (tm) potrebbe essere capace di cooperare con XFree86
  (dato che la parte SVGA della scheda funziona con il server SVGA di
  XFree86), ma non  ancora supportato dalla Linux Glide, cos come non
   ancora supportato dai server S3 o dagli altri server XFree86.

  Inoltre GLX  legato a OpenGL o, nel caso di Linux, a Mesa. Il gruppo
  di XFree86 attualmente sta lavorando per integrare Mesa con i loro X
  server. GLX  in fase beta, XFree86 3.3 ha qualche "aggancio" per GLX.
  Si veda la pagina su GLX di Steve Parker a
  www.cs.utah.edu/~sparker/xfree86-3d/ per le informazioni pi recenti.
  Attualmente Mesa usa ancora la sua emulazione GLX con Linux.

  10.  FAQ: Glide versus OpenGL/Mesa?

  10.1.  Glide  OpenGL?

  No, Glide  un API proprietaria di 3Dfx con alcune caratteristiche
  specifiche per il Voodoo Graphics (tm) e il Voodoo Rush (tm). Una
  OpenGL per 3Dfx  in preparazione (vedi sotto). Alcune caratteristiche
  della Glide potrebbero richiedere le EXTensioni a OpenGL, alcune delle
  quali si trovano gi in altre implementazioni (a.es. le texture
  paletizzate).

  La cosa pi simile all'OpenGL accelerato dall'hardware per Linux che
  si pu attualmente trovare  Mesa di Brian Paul assieme al driver Mesa
  Voodoo di David Bucciarelli (vedi sotto).

  10.2.  Mesa funziona con 3Dfx?

  Dalla release 2.3 Beta3, Mesa funziona con la Linux Glide 2.2,
  similmente a Mesa con Glide per DOS/Windows. Ci sono patch Mesa 2.3b3
  per la Linux Glide 2.3.1. Le seguenti versioni di Mesa funzioneranno
  con la Linux Glide 2.4; fin tanto che l'API non cambier, dovrebbero
  essere sufficienti le patch Mesa 2.3b3. La distribuzione Glide non fa
  parte della distribuzione Mesa.

  Potrebbe essere necessario scaricare l'archivio della libreria Mesa da
  l sito FTP iris.ssec.wisc.edu.

  10.3.  Dove ottengo altre informazioni su OpenGL?

  Si usi la porta di accesso alle info su OpenGL di Mark Kilgard a
  reality.sgi.com/mjk_asd/opengl-links.html, e si proceda da l.

  10.4.  Dove ottengo informazioni su Mesa?

  La home page di Mesa  www.ssec.wisc.edu/~brianp/Mesa.html. C' un
  archivio della mailing list di Mesa a www.iqm.unicamp.br/mesa/. Questa
  lista non  dedicata a 3Dfx e Glide, ma se si  interessati ad usare
  l'hardware 3Dfx per accelerare Mesa,  un buon punto di partenza.

  10.5.  Dove ottengo informazioni su Mesa Voodoo?

  Per le ultime informazioni sul driver Mesa Voodoo mantenuto da David
  Bucciarelli (tech.hmw@plus.it) si veda la home page a www-
  hmw.caribel.pisa.it/fxmesa/.

  10.6.  C' una OpenGL commerciale per Linux e 3Dfx?

  3Dfx ha pubblicamente annunciato un'implementazione di OpenGL per
  Windows per quest'anno (seconda met del '97). Non si sa quando questa
  sar disponibile anche per Linux.

  Di OpenGL realizzate da terze parti, sono a conoscenza di tre
  prodotti:

    MetroLink MetroOpenGL

    XInside OpenGL

    Evans & Sutherland OpenGL

  L'ultima viene distribuita da Portable Graphics, ed  una
  trasposizione pura e semplice della OpenGL reference software
  implementation, con un kit di linkaggio per una vecchia revisione
  degli X server di XFree86. Portable Graphics non ha mai promesso un
  supporto hardware. Per quel che ne so, questo prodotto non  pi
  disponibile.

  Gli altri due hanno promesso il supporto per gli acceleratori
  hardware, ma entrambi sono legati ad una trasposizione proprietaria
  degli X server ed entrambi non supportano alcuna accelerazione 3D, per
  quel che ne so.

  10.7.  Cosa mi dici di GLUT?

  La distribuzione GLUT di Mark Kilgard  un posto molto valido per
  ottenere applicazioni d'esempio e molti utili programmi. La si trova a
  reality.sgi.com/mjk_asd/glut3/, e si pu prendererla comunque. La
  release attuale  GLUT 3.4.

  Comunque, visto che GLUT gestisce il double buffer, finestre, eventi
  ed altre operazioni intimamente legati all'hardware e al sistema
  operativo, una Voodoo-GLUT richiede alcune modifiche specifiche. C'
  una alpha release disponibile come parte della pi recente
  distribuzione Mesa (David Bucciarelli, Henri Fousse).

  11.  FAQ: Ma Quake?

  11.1.  Cosa mi dici della Quake GL?

  La DLL rilasciata da 3Dfx  disponibile solo per Windows. Supporta un
  sottoinsieme di OpenGL specifico per Quake (Vedi
  http://www.cs.unc.edu/~martin/3dfx.html per un elenco non ufficiale
  dei code path supportati. No, questa DLL non  stata portata sotto
  Linux. No, non c' alcuna versione di Quake basata sulla Glide,
  neanche per Windows. Non ho alcuna notizia su una glQuake per Linux.



  12.  FAQ: Risoluzione dei problemi

  12.1.  Questo hardware  stato testato?

  Si vedano i requisiti hardware scritti prima, c' un elenco di
  hardware che  stato provato e che funziona.

  12.2.  Failed to change I/O privilege?

  Si deve essere root, o rendere setuid la propria applicazione per
  lanciare un'applicazione basata su Glide. A causa del DMA, il driver
  accede a /dev/mem, che non  accessibile in scrittura da alcuno se non
  da root, per validi motivi. Vedi il README della distribuzione Glide
  per Linux.

  12.3.  Funziona senza i privilegi di root?

  Ci sono casi particolari in cui, ovviamente, l'uso di setuid diventa
  un problema. Attualmente ci sono soluzioni in preparazione, che
  richiedono cambiamenti all'interno della libreria stessa.

  12.4.  Le immagini sono distorte (schermo singolo)?

  Se si sta usando la configurazione analogica passante, il normale
  schermo SVGA o X11 pu apparire considerevolmente male. Si pu provare
  ad utilizzare un miglior cavo di connessione di quello fornito con la
  scheda acceleratrice (quelli venduti con la Diamond Monster 3D sono
  solitamente peggiori di quelli distribuiti assieme alla Orchid
  Righteous 3D), ma fino ad un certo punto  inevitabile che ci sia una
  perdita di segnale a causa del percorso di trasmissione aggiuntivo.

  Se l'immagine a pieno schermo 640x480 creata dalla scheda
  acceleratrice risulta distorta, ci pu indicare un problema hardware
  reale. Si deve contattare il costruttore della scheda, non 3Dfx per i
  dettagli, dato che la qualit del segnale video non ha niente a che
  fare con l'acceleratore - il costruttore della scheda sceglie il
  RAMDAC, i driver d'uscita e gli altri componenti responsabili.

  12.5.  L'ultimo frame  ancora l (schermo singolo o doppio)?

  Si  terminata la propria applicazione con Ctrl-C o non  terminata
  correttamente. La scheda acceleratrice fornir all'infinito l'attuale
  contenuto del framebuffer come segnale video finch non le verr detto
  altrimenti.

  12.6.  Si attiva il powersave (schermo doppio)?

  Quando l'applicazione termina nella configurazione a due schermi, la
  scheda acceleratrice non fornisce pi alcun segnale video. Perci il
  powersave si attiva ogni volta. Per evitarlo, si usi

  ______________________________________________________________________
  setenv SST_DUALSCREEN 1
  ______________________________________________________________________



  12.7.  La mia macchina sembra stallare (X11, schermo singolo)?

  Se stai utilizzando X quando lanci una applicazione Glide,
  probabilmente si  mosso il mouse fuori dalla finestra e gli input
  della tastiera non raggiungono pi l'applicazione.

  Se l'applicazione  progettata per funzionare concorrentemente con
  X11, si potrebbe o ingrandire la finestra a pieno schermo o usare le
  funzioni XGrabPointer e XGrabServer per reindirizzare tutti gli input
  all'applicazione mentre l'X server non pu accedere al monitor. Si
  noti che il catturare tutti gli input con XGrabPointer e XGrabServer
  non qualifica l'applicazione come well-behaved (ovvero che si comporta
  bene con X), e che il tuo programma pu bloccare l'intero sistema.

  Se si ha questo problema senza utilizzare X, ci si assicuri che non ci
  siano conflitti hardware (vedi sotto).

  12.8.  La mia macchina stalla (schermo singolo o doppio)?

  Se il sistema non risponde ad alcun input (si stanno usando due
  monitor e ci si accorge della perdita di fuoco (focus), si potrebbe
  essere in presenza di un conflitto hardware pi o meno subdolo. Si
  veda la sezione Risoluzione dei problemi all'installazione per i
  dettagli.

  Se non c' alcun ovvio conflitto di indirizzi, ci possono essere
  ancora altri problemi (v. sotto). Se si sta scrivendo del proprio
  codice, la ragione pi comune di stallo  che non si  fatto lo snap
  dei vertici.  Vedi la sezione sullo snapping nella documentazione
  della Glide.

  12.9.  La mia macchina stalla (uso una scheda VGA S3)?

   possibile che ci sia un problema di sovrapposizione di regioni di
  memoria tipico delle S3. Ci sono alcune informazioni ed una patch al
  problema nominato S3 nel sito web della 3Dfx, ma queste si applicano
  solo a Windows. Da come l'ho capito, la causa del problema  che certe
  schede S3 (le pi vecchie revisioni della Diamond Stealth S3 968)
  riservano piu spazio di memoria di quello che effettivamente usano,
  cos la Voodoo Graphics (tm) deve essere mappata in una differente
  locazione. Comunque, questo non  stato riportato come un probblema
  sotto Linux, e pu essere specifico di Windows.

  12.10.  Nessun conflitto di indirizzi, ma stalla comunque?

  Se si sta usando una scheda madre con un supporto PCI non-standard o
  incompleto, si pu provare a mischiare un po' le schede. Sto usando un
  ASUS TP4XE che ha il fatidico "Media Slot" modificato, a.es lo slot4
  PCI ha un connettore addizionale per le schede composite SCSI/Sound
  prodotte dalla ASUS, ed ho avuto grossi problemi quando ho installato
  una Diamond Monster 3D in quello slot. Il sistema ha funzionato senza
  problemi quando ho messo la scheda in uno degli slot regolari.

  12.11.  Compile/link error: grSstWinOpen()?

  (Errore di compilazione/linkaggio: grSstWinOpen()?)

  Dato che la Linux Glide sar la versione 2.4, questo errore non
  dovrebbe verificarsi. Questa funzione non era disponibile nella Glide
  e quindi anche nella Linux Glide 2.2; le successive non sono mai state
  rese pubbliche.


  12.12.  Compile/link error: grSstOpen()?

  (Errore di compilazione/linkaggio: grSstOpen()?)

  Il sorgente della propria applicazione  basato sulla Glide 2.2 e
  questa funzione  stata eliminata nella Glide 2.3. Non essendo pi
  disponibile non pu essere usata con la Linux Glide 2.4. Al suo posto
  si usi la funzione grSstWinOpen.

  Dato che l'integrazione della Linux Glide con Mesa era basata
  originariamente sulla Glide 2.2, le versioni precedenti di Mesa
  possono produrre errori in fase di compilazione. La release Mesa-2.3b3
   stata aggiornata per essere usata con la Linux Glide 2.3.1; ci si
  assicuri di avere sia la distribuzione che l'aggiornamento, o
  preferibilmente una nuova revisione di Mesa.


  12.13.  Cannot open shared object file?

  (Impossibile aprire il file oggetto condiviso?)


  ______________________________________________________________________
  test25: error in loading shared libraries
  libglide2x.so: cannot open shared object file: No such file or directory
  ______________________________________________________________________


  Se, per una qualche ragione, si ha ancora un file binario compilato
  per una versione differente della Linux Glide o se c' un'inconsis
  tenza nell'impostazione del proprio ldconfig, il programma non trover
  la libreria condivisa. Si controlli il nome (a.es. libglide2x.so) ed
  ci si assicuri di usare le opzioni corrette quando si compila e linka
  - a.es. -lglide potrebbe non funzionare con l'installazione di
  default.

  Si noti che il nome delle revisioni della Linux Glide segue la
  convenzione usata nella distribuzione 3Dfx Windows, non la convenzione
  classica di Linux.


  12.14.  Problemi di compilazione con Mesa

  Ci si assicuri di settare USE_GLIDE_FULLSCREEN in fxmesa.h. Si
  controlli che le opzioni del linker (a.es. -lglide) corrispondano al
  nome della libreria Linux Glide installata (a.es. -lglide2x invece).
  Ci si assicuri di usare gli aggiornamenti alla release Mesa-2.3b3 o
  seguenti, dato che tutte le release Mesa fino alla 2.3b3 sono basate
  sulla Linux Glide 2.2. Vedi sopra.


  12.15.  Mesa funziona, ma non accede alla scheda?

  Ci si assicuri di aver ricompilato tutte le librerie (compresi i
  toolkit che i programmi dimostrativi usano - si ricorda che GLUT non
  supporta ancora il Voodoo Graphics (tm)) e di aver rimosso le vecchie
  librerie, si lanci ldconfig e/o si imposti il proprio LD_LIBRARY_PATH
  correttamente. Mesa supporta pi driver in parallelo (puoi usare X11
  SHM, off screen rendering e Mesa Voodoo in contemporanea), e si
  potrebbe dover creare e cambiare contesto esplicitamente (si veda la
  funzione MakeCurrent) se il Voodoo Graphics (tm) non  la scelta
  predefinita.