Linux PCI-HOWTO
 di Michael Will, [email protected]
 versione 0.6d, Luglio 1996

 Informazioni su come far funzionare Linux con schede e motherboards
 PCI

 1.  Introduzione


 A molta gente, me incluso, piacerebbe far funzionare Linux su una
 macchina PCI.  Siccome non e' ovvio quali motherboards e quali schede
 PCI possono funzionare con Linux, ho condotto una ricerca e ho speso
 qualche ora per mettere insieme le informazioni contenute qui di
 seguito.

 Se avete qualche cosa da aggiungere per favore mandatemi un mail (in
 inglese :) (N.d.T.)). Se avete domande sentitevi liberi di chiedere.

 Aiuto sul mio stile, sulla mia grammatica e sul linguaggio e'
 benvenuto anch'esso.  Non sono un madrelingua inglese e aspettatevi
 che io faccia qualche errore (ovviamente questo vale anche per la
 traduzione (N.d.T.))

 Nota: "on-board chip" si riferisce a un chip SCSI integrato sulla
 motherboard e non a una scheda di espansione PCI.

 Inoltre citazioni qua e la' possono essere leggermente modificate.

  nota del traduttore: quanto trovate in questo articolo e' la
 TRADUZIONE di quanto scritto dall'Autore nell' HOWTO originale in
 inglese e pertanto non necessariamente rappresenta il mio pensiero;
 inoltre declino ogni responsabilita' derivante dal suo utilizzo.
 Nessuna garanzia e' accordata o sottintesa. E fine delle beghe legali
 :)

  Nota bene: qua e la' ci sono dei prezzi in dollari, non aspettatevi
 che qui in Italia si trovino le stesse cose agli stessi prezzi ;-)


 2.  Perche' PCI ?



 2.1.  Panoramica generale

 L'architettura dei PC ha diverse possibilita' di scelta se si parla
 del BUS da usare:

    ISA
       16 od 8 bit, economico, lento (di solito 8Mhz), standard, molte
       schede disponibili>

    EISA
       32 bit, caro, veloce, poche schede disponibili, sta scomparendo>

    MCA
       32 o 16 bit, ex-proprietario-IBM, veloce, sta diventando raro>

    VESA-Local-Bus
       32 bit, basato sull'architettura 486, economico, veloce, molte
       scheda disponibili>

    PCI-Local-Bus
       32 bit (i 64 stanno arrivando), economico, veloce, molte schede
       disponibili, lo standard odierno>
 L'architettura MCA funzionava bene, ma non ha mai avuto molto mercato,
 essendo usata solo su alcune tra le prime macchine IBM PS/2. C'erano
 veramente poche schede disponibili.

 EISA era affidabile ma piuttosto caro e inteso piu' per utenti evoluti
 e per i servers che per l'utente medio. E' quello che ha meno schede
 disponibili tra questi bus dopo l'MCA.

 ISA/VESA-Local-Bus ha avuto qualche problema con elevate velocita' del
 bus e non e' stato sempre affidabile ma, principalmente a causa del
 suo basso prezzo e delle sue prestazioni, se comparato con l'ISA, ha
 venduto molto. La maggioranza delle motherboards VESA dovrebbe essere
 stabile adesso. All'inizio del 1996 molte motherboards 486 supportano
 ancora questo standard ma PCI sta crescendo. I bus VESA sono legati
 alla velocita' del bus della memoria per i 486 e alla meta' di essa
 per i Pentium


 PCI ora e' in vantaggio. Come l'EISA non e' propietario. E' piu'
 veloce di EISA ed MCA ed e' meno costoso. La stragrande maggioranza
 delle motherboards Pentium attualmente disponibili usa il bus PCI; il
 VESA sta scomparendo.  Praticamente tutte le motherboards e le schede
 vendute all'inizio del 1996 sono a 32 bit e viaggiano a frequenze da 0
 a 33MHz.

 Oggigiorno la maggioranza delle motherboards Pentium fanno andare il
 bus PCI a una frequenza pari alla meta' di quella impiegata per il bus
 della memoria (i.e.: 33MHz dai 66MHz del bus della memoria per i P66,
 P100, P133, P166 e P200; 30MHz dai 60MHz del bus della memoria per i
 P60, P90, P120, P150 e P180; 25MHz dai 50MHz del bus della memoria per
 i P75). Questo dovrebbe valere anche per le motherboards Cyrix 6x86.
 L'implementazione del NexGen 5x86 non e' conosciuta.  Le specifiche
 PCI permettono alla frequenza del bus di essere slegata da quella del
 processore ( ad ex. 33MHz con un P75) ma questo tipo di soluzione non
 e' ancora molto comune.

 E' stato definito lo standard PCI 2.1 che permette i 64bit e frequenze
 da 0 a 66MHz ma per ora nessun chipset x86 lo supporta ( che io
 sappia, invece, molte motherboards Alpha lo supportano pienamente.
 N.d.T.). il PCI a 64bit probabilmente apparira' per primo in slot
 32/64bit cosi' da preservare la compatibilita' con le schede esistenti
 a 32bit. Probabilmente per i 66MHz ci sara' da aspettare di piu' dato
 che l'implementazione e' piuttosto complicata: infatti non dovrebbe
 supportare piu' di due slots per bridge e puo' anche darsi che non
 riesca a lavorare bene con le schede a 33MHz

 Lo standard PCI non e' dipendente dalla famiglia del processore:
 questo significa che posso benissimo usare la stessa scheda video PCI
 sia su un Alpha/PCI che su un 486/PCI (ovviamente entrambi con un
 appropriati BIOS e drivers ). Oltre ad Intel ed Alpha, anche alcune
 motherboards PowerPC impiegano il bus PCI.

 State attenti ad alcune piccole variazioni sul tema: alcune
 implementazioni (tipicamente le motherboards piu' decenti N.d.T.)
 supportano il Bus Mastering su tutti gli slot PCI, altre solo su uno e
 altre ancora su nessuno; alcune supportano il bridging sulle schede e
 altre no.


 2.2.  Prestazioni

 preso dalla prima propaganda a favore di PCI di Craig Sutphin


      Al contrario di alcuni bus che sono mirati solo alla velo�
      cizzazione della grafica, il local bus PCI e' una soluzione
 per tutto il sistema, una soluzione che provvede maggiori
 prestazioni per le reti, per i dischi, per il video full-
 motion e per tutta la gamma di periferiche ad alte
 prestazioni.  A 33MHz il bus PCI sincrono trasferisce 32bit
 di dati che equivalgono a una frequenza massima di
 132MBytes/sec. Una estensione trasparente a 64bit dei bus
 dati e indirizzi puo' raddoppiare la larghezza di banda del
 bus stesso (264MBytes/sec) e offrire compatibilita' verso le
 periferiche sia a 32bit che a 64bit. A causa del fatto che
 e' indipendente dal processore, il bus PCI e' ottimizzato
 per le funzioni di I/O, permettendo che il local bus operi
 concorrentemente al sottosistema processore/memoria.  Peri
 gli utenti di PC di alta gamma, il PCI porta alta affid�
 abilita', alte prestazioni e facilita' di uso con costi ora
 piu' bassi di quanto non lo siano mai stati prima; questo
 non e' sicuramente un compito semplice con delle frequenze
 di clock sul bus di 33MHz. Modalita' di accesso lineare a
 lunghezza variabile o di accesso burst per entrambe le oper�
 azioni di lettura e scrittura migliora le prestazioni di
 sistemi grafici dipendenti dalla velocita' di scrittura.
 Grazie all'integrazione dei requisiti di caricamento e di
 frequenza del local bus a livello di componenti i buffers e
 la glue logic sono eliminati.


 Vedetevi il capitolo sui Benchmarks per qualche numero ( forse senza
 significato ) sulle mainboards ASUS PCI con 486 e 586


 2.3.  Il chip SCSI-II NCR53c810on board

 Una caratteristica molto piacevole di alcune motherboards PCI e' il
 chip SCSI-II NCR53c810 on board che si dice che sia veloce come l'EISA
 Adaptec-1742, ma molto piu' economico. I drivers per DOS e OS2 sono
 disponibili.  Drew Eckard ha rilasciato la sua versione del driver per
 NCR53c810 che e' contenuta direttamente nel kernel dalla versione 1.2.

 E funziona cosi' bene che ho venduto la mia scheda adaptec-1542B-ISA
 appena ho comprato la motherboard ASUS SP3 (chipset Saturn): infatti
 il suo controller SCSI integrato NCR e' molto piu' veloce.

 Il chip NCR53c810 e' on board su qualche motherboard PCI.  Sono
 disponibili anche delle schede aggiuntive per circa US$ 70.00.

 C'e' solo una cosa che non funzionava con i drivers per l'NCR quando
 li ho provati: Disconnect/Reconnect ( e' una funzione che dovrebbe
 servire a 'sconnettere' un device dal bus SCSI in caso di lunghe
 operazioni, cosi' da poterlo usare per qualche cosa d'altro: e' vitale
 se avete dei tapeDAT che dir si voglia, altrimenti ogni volta che
 chiedete un riavvolgimento vi si blocca tutto... N.d.T.)/ non
 funzionava e quindi usare una unita' a nastro SCSI poteva essere
 frustrante: usando comandi del tipo "mt erase" si verificava un
 bloccaggio della catena SCSI fino a quanto l'operazione veniva
 completata.  Dato che questa situazione era molto insoddisfacente per
 me, ho comprato uno dei costosi controllers della DPT e non ho avuto
 piu' problemi da allora.

 Comunque mi e' stato riferito the questo problema e' stato risolto.

 FreeBSD supporta il NCR53c810 da molto tempo ormai; questo supporto
 include le Tagged Command Queues, FAST, WIDE e il Disconnect per gli
 NCR53c810, 815, 825.  Drew ha detto che dovrebbe essere possibile
 adattare il driver per Linux. Da quanche parte ho visto delle patches
 per fare esattamente questo, qualcuno mi sa dire dove ? (se non vado
 errato nei kernel 2.0.x si puo' scegliere se usare appunto il driver
 BSD o quello standard. Personalmente io uso il driver BSD e non ho
 ancora avuto problemi. N.d.T.)

 Io personalmente ho l'impressione che ci sia stata scoperta piu' volte
 la stessa acqua calda a causa delle differenti evoluzioni di FreeBSD e
 di Linux. Un po' piu' di cooperazione potrebbe fare del bene a
 entrambi i sistemi...


 2.4.  Drew Eckhardt sul PCI-SCSI:


 Drew ha detto queste cose alla fine del marzo 95 a proposito dello
 SCSI sul PCI: (leggermente modificate per aumentare la chiarezza nel
 presente contesto)

 Le schede Adaptec 2940, Buslogic BT946, BT946W, DPT PCI boards, Future
 Domain 3260, NCR53c810, NCR53c815, NCR53c820, e NCR53c825 funzionano
 tutte per qualche definizione della parola "funzionano"


 �  L'Adaptec 2940 soffre della stessa sensibilita' ai cavi che
    affligge tutte le schede recenti ma per il resto funziona bene.

 �  Le schede Future Domain non sono busmasters e i drivers non
    supportano comandi multipli simultanei. Se (per il momento) non vi
    serve questa funzionalita' compratevi una scheda NCR che costa meno
    e in piu' e' busmastering. Se vi serve invece compratevi una
    Buslogic.

 �  La Buslogic BT956W puo' fare lo SCSI-WIDE con i drivers per linux (
    anche se non si possono usare i target 8-15), l' Adaptec 2940W (
    con una patch di una riga al driver della 2940) non lo fa come pure
    le NCR53c820 e NCR53c825.

 �  Le schede NCR sono estremamente economiche ($ 70 US), di solito
    sono veloci, ma il driver non supporta i comandi multipli
    simultanei. Ci sono in giro delle versioni pubbliche Alfa di un
    nuovo driver che fa il disconnect/reconnect e altre belle cose come
    i trasferimenti sincroni. Leggete piu' avanti.

 �  Emulux, Forex, e altri coltrollers SCSI per il PCI non
    funzioneranno.


 2.5.  Nuove versioni Alfa del driver NCR


 Versioni Alfa (pre-pre-release (N.d.T.)) del driver che fanno il
 disconnect/reconnect e altre belle cose come i trasferimenti sincroni
 sono ora disponibili al pubblico. Chiunque sia interessato a
 sperimentare con queste ultime dovrebbe:

 �  Aggiungersi alla mailing list NCR mandando un mail a
    [email protected] con subscribe ncr53c810 nel corpo del
    messaggio.

 �  Prendere tutti i readme e gli ultimi file diffs da
    ftp://tsx-11.mit.edu/pub/ALPHA/linux/SCSI/ncr53c810


 2.6.  Il driver EATA-DMA e i controllers SCSI per PCI della DPT


 Il driver scsi EATA-DMA e' stato sottoposto a grandi cambiamenti e ora
 supporta anche controllers SCSI PCI, controllers multipli e tutti i
 canali SCSI sulle schede multicanake SmartCache/Raid in tutte le
 combinazioni di WIDE, FAST-20 (ULTRA) e DIFFERENZIALE

 Il driver ora supporta tutti i controllers SCSI che rispettano il
 protocollo EATA-DMA ( documento CAM CAM/89-004 rev. 2.0c) ed e' stato
 testato con molti di questi controllers in varie combinazioni.


 Essi sono:             (ISA)  (EISA)  (PCI)
       DPT Smartcache: PM2011  PM2012B
                               PM2012B
       Smartcache III: PM2021  PM2022  PM2024
                               PM2122  PM2124
                               PM2322
       Smartcache IV:  PM2041  PM2042  PM2044
                               PM2142  PM2144
                               PM2322
       SmartRAID:      PM3021  PM3122
                               PM3222  PM3224
                                       PM3334
       e qualche controller della NEC, AT & T, SNI, AST, Olivetti e Alphatronix.



 Su una scheda DPT in configurazione base ( niente caching o moduli
 RAID ), un MC680x0 controlla i(l) chip bus mastering e il chip
 controller SCSI.  La scheda SCSI DPT lavora piu' o meno come un
 coprocessore SCSI.

 La scheda DPT puo' anche emulare un binomio drive/controller IDE (
 interfaccia ST506), la qual cosa vi permette di usarlo con tutti i
 sistemi operativi anche se non avete dei drivers EATA.

 Su una scheda con il modulo cache, il 680x0 mantiene e controlla la
 cache on board.  La scheda DPT supporta fino a 64MB RAM di cache per i
 dischi.

 Su una scheda con il modulo RAID il 680x0 e' impegnato anche nel
 controllo del RAID: facendo il mirroring nel RAID-1, facendo lo
 stripping e la generazione di informazioni ECC nel RAID-5 ecc. ecc.

 La scheda entry level usa un Motorola 68000, quelle di classe piu'
 elevata, piu' specifiche per il RAID, usano dei processori Motorola
 68020, 68030 o 68040/40MHz.

 I prezzi di listino variano da $ 265 a $ 1645 ( 18 Gennaio 1996)

 Dato che mi e' stato chiesto piu' volte dove si possono comprare
 queste schede ho chiesto alla DPT di mandarmi una lista dei loro
 distributori ufficiali Europei.  Eccone una piccola parte:


 Austria: Macrotron GmbH             Tel:+43 1 408 15430   Fax:+43 1 408 1545
 Denmark: Tallgrass Technologies A/S Tel:+45 86 14 7000    Fax:+45 86 14 7333
 Finland: Computer 2000 Finnland OY  Tel:+35 80 887 331    Fax:+35 80 887 333 43
 France : Chip Technologies          Tel:+33 1 49 60 1011  Fax:+33 1 49 599350
 Germany: Akro Datensysteme GmbH     Tel:+49 (0)89 3178701 Fax:+49 (0)89 31787299
 Russia : Soft-tronik                Tel:+7 812 315 92 76  Fax:+7 812 311 01 08
 U.K.   : Ambar Systems Ltd.         Tel:+44 1296 311 300  Fax:+44 296 479 461



 "Secondo me le DPT sono le schede SCSI meglio disegnate disponibili
 per il PC.  E io ho scritto codice per  piu' o meno qualsiasi tipo di
 scheda SCSI per PC.  (anche se, ripensandoci, non so perche' ) ;-)"
 Jon R. Taylor ([email protected]) Presidente, Visionix, Inc.

 L'ultima versione del driver EATA-DMA e un bootdisk Slackware sono
 disponibili su ftp.i-connect.net:/pub/Local/EATA

 Dalla versione 1.1.81 il driver e' incluso nella distribuzione
 standard del kernel.

 L'autore puo' essere contattato a questi indirizzi: [email protected]
 mainz.de o [email protected]


 2.7.  Il BT-964C e' supportato pienamente dai kernel 1.3.x e oltre


 C'e' un driver nei kernel 1.3.x ( disponibile come patch per chi usa
 l' 1.2.13 ), scritto da una persona connessa alla Buslogic, che
 supporta pienamente il 964C e TUTTE le sue functioni incluse (le
 lascio in inglese ovviamente... N.d.T.) strict round robin, tagged
 queueing, multiple scatter-gather, multiple mailboxes, IRQ sharing, e
 15 devices su FastWide. Non e' piu' necessario usare la minima
 emulazione ISA con il driver ( ad ex. niente canale DMA, niente
 indirizzo ISA ), e il driver e' /veloce/ e /stabile/ ( non e' piu'
 BETA ed e' stata rilasciata la sua versione definitiva).

 Il driver e' disponibile su ftp.dandelion.com ( la nuova versione si
 puo' sempre avere facendo "get BusLogic*" (credo solo se usate ncftp,
 altrimenti fate una dir... N.d.T.) ).  Supporta TUTTI i controller
 BusLogic con l'eccezione del FlashPoint LT che usa una diversa
 interfaccia. Il driver e' incluso nei kernel 1.3.x come driver
 standard per i prodotti BusLogic.


 2.8.  Future Domain TMC-3260 PCI SCSI


 Rik Faith ([email protected]) mi ha informato mercoledi' 1 Feb 1995 che
 la scheda PCI Future Domain TMC-3260 SCSI e' supportata dal driver
 SCSI Future Domain 16x0. Informazioni piu' aggiornate possono essere
 contenute nello SCSI-HOWTO.


 �  Il riconoscimento della scheda non e' fatto bene e non usa i metodi
    standard di riconoscimento del BIOS PCI ( sarebbe necessario che
    qualcuno che ha una scheda PCI mi mandi delle patches per risolvere
    il problema).  Pertanto potreste dover trusciare con la routine di
    detect nel kernel per ottenerne il riconoscimento.

 �  Il driver continua a non supportare comandi multipli simultanei e
    quindi il vostro sistema si blocchera' mentre il nastro si
    riavvolge.

 �  Il driver non supporta i modi migliorati con trasferimento
    pseudo-32bit dei nuovi chips Future Domain cosicche' non
    sperimenterete delle velocita' di trasferimento dati cosi' alte
    come in DOS.

 �  Il driver supporta solo il protocollo SCSI-I cosi' i vostri
    velocissimi dischi rigidi non saranno sfruttati al massimo delle
    loro possibilita'.  ( soluzioni ai presenti problemi sono sempre
    gradite -- nessuno ci sta lavorando al momento.)



 2.9.  altre notizie sullo scsi



 James Soutter ([email protected]) mi ha chiesto di aggiungere le
 seguenti informazioni sullo SCSI-2 Fast Wide:


      Lo SCSI-2 Fast Wide e' talvolta chiamato scorrettamente
      SCSI-3. Esso differisce dallo SCSI-2 Fast ( come l'Adaptec
      15428? ) perche' usa un bus dati di 16 bit invece dei soliti
      8. Questo migliora la massima velocita' di trasferimento
      dati da 10MB/s a 20MB/s ma richiede l'utilizzo di speciali
      dischi SCSI-2 Fast Wide.

      Le migliori prestazioni dello SCSI-2 Fast Wide non
      necessariamente renderanno il vostro sistema piu' veloce. La
      stragrande maggioranza dei dischi rigidi hanno una velocita'
      di trasferimento dati massima di meno di 10MB/s e pertanto
      un disco usato da solo non puo' sovraccaricare un bus SCSI-2
      Fast.

      Nella ricerca di mercato della Seagate fatta nell'Ottobre
      1993 solo un disco SCSI-2 Fast Wide ha mostrato una
      velocita' di trasferimento dati di piu' di 10MB/s ( lo
      ST12450W ). La maggior parte ha viaggiato a un massimo di
      6MB/s o meno anche se lo ST12450 non e' la sola eccezione.
      In conclusione lo SCSI-2 Fast Wide e' stato progettato per
      il mercato dei file servers e non necessariamente portera'
      benefici ai sistemi singolo utente.

      Invece di comprare un sistema PCI con una interfaccia SCSI
      sulla motherboard o aspettare un driver per l'NCR, potreste
      comprare una scheda separata PCI SCSI. Secondo Drew l'unica
      possibilita' che ha una chance di funzionare e' la Buslogic
      946. Essa intende essere compatibile con l'Adaptec 1540 come
      le schede EISA/VESA/ISA nella serie.

      Drew ha anche commentato che e' improbabile che altri
      controllers SCSI PCI siano supportati sotto Linux o BSD
      perche' quelli basati sull'NCR sono piu' economici e
      diffusi.


 Secondo [email protected] (Bradley Broom):

      La scheda Buslogic BT-946C PCI SCSI funziona se disabilitate
      l'opzione "enable Disconnection" con il programma DOS
      AUTOSCSI che e' fornito con la scheda stessa.



 Ernst Kloecker ([email protected]) ha detto: (modificato)

      La Talus Corporation ha completato un driver NS/FIP per le
      schede PCI con la SCSI NCR. Sara' distribuito molto presto e
      puo' anche darsi che sia gratis perche' una terza parte
      potrebbe pagare per il lavoro e donare il driver alla NeXT.


 Non tutte le motherboards PCI hanno il chip. Le vecchie ASUS lo hanno
 come pure una delle J-Bond. (La maggior parte delle schede oggigiorno
 (6/95) si aspettano che voi compriate l'NCR53c810 a parte.) Alcuni
 rivenditori rendono disponibile un'alternativa come potere leggere
 nell'articolo di Drew...

 Il chip NCR e' abbastanza intelligente da lavorare con dischi fissi
 formattati da altri controllers e non dovrebbe causarvi problemi.


 3.  Motherboards ASUS

 3.1.  ASUS e il NMI (Parita') -- impatto sulla Gravis-Ultrasound

 Le piu' recenti motherboards PCI Triton del 1995 non sembravano piu'
 supportare le SIMM con parita'. Dato che io di solito ho comprato
 quelle senza (che costano meno) non pensavo che questo fosse un
 problema fino a quando non ho inserito la Gravis Ultrasound nel mio
 computer.Sotto DOS il driver SBOS e la utility di setup si lamentano
 che la "nmi procedure disabled on this p.c." (la procedura nmi e'
 disabilitata su questo pc, sarebbe il Non Maskable Interrupt che DI
 SOLITO viene attivato da un Parity Error ma non solo come potete
 leggere qui N.d.T.)). Il manuale dice che dovrei comprarmi una
 motherboard migliore e non e' che questo sia di molto aiuto.

 La gravis-ultrasound funzionava senza problemi sulle ASUS-SP3 e ASUS-
 SP4 nonostante questo problema ma la gravis ultrasound max che ho qua
 mi causa un kernel panic su entrambe le motherboard e talvolta, mentre
 ascolto files .au attraverso /dev/audio, fa strane cose, come ad
 esempio suonare il resto di un vecchio campione suonato prima di
 quello corrente. Il sound driver raccomanda un buffer di 65536 sulla
 GUS Max invece di quello piccolo raccomandato con la GUS e non
 chiedetemi il perche'.  Comunque non ho piu' di questi problemi sulla
 piu' recente ASUS TP4XE.  Entrambe sono equipaggiate con 1 MB di Ram.
 Questi problemi potrebbero non essere dovuti al nmi, potrebbe forse
 essere colpa del driver audio ?

 Ho sentito che non solo la ASUS ma la maggior parte delle nuove
 motherboards PCI non hanno il supporto per la parita'/NMI.

 Stranamente l'ASUS-TP4 (chipset Triton) funziona con la GUS Max e
 carica l'SBOS, lo devo ammettere, sono confuso anch'io.


 3.2.  Vari tipi dimotherboards ASUS



 3.2.1.  ASUS SP3 con chipset saturn I (rev. 2) per 486,


 �  2 x rs232 con 16550

 �  NCR53c810 onboard,

 �  chipset saturn I leggermente bacato (rev. 2)


 3.2.2.  ASUS SP3G con chipset saturn II (rev. 4) per 486,

 come la SP3, ma chipset saturn meno bacato


 3.2.3.  ASUS SP3-SiS chipset, per 486

 come la AP4, ma con : un nuovo chipset SiS, funzioni 'green' ,
 controller EIDE, seriali 16550 e parallela onboard. Ha solo due slot
 per le SIMM. Sembra funzionare con gli AMD486DX4/120 ma non e' stata
 molto affidabile con l'NCR53c810 e vari sistemi operativi (Win-NT,
 Windows95, OS2); dopo essere passati a una ASUS SP4 Pentium tutti i
 problemi sono scomparsi e pertanto si pensa che la loro causa fosse
 proprio da ricercarsi nella mainboard. Sembra comunque funzionare bene
 con linux.



 3.2.4.  ASUS AP4, per 486, con PCI/ISA/VesaLocalbus

 funzioni 'green' , 1VL, 3 ISA, 4 PCI slots, solo EIDE onboard, no
 controller floppy, no rs232/centronics. Molto piccola.

 riconosce l' AMD486DX2/66 solo come DX4/100. Questo puo' essere
 corretto con la saldatura di un pin (quale?) a terra ma non
 raccomanderei comunque una motherboard di questo tipo.

 Quella che ho provato io non andava ne' con OS/2 ne' con Linux ma
 alcuni dicono di usarla con entrambi.

 Lo slot VESALB dovrebbe essere piu' lento di quelli delle motherboards
 vesa-lb a causa del 'ponte' PCI-VL ma non ci dovrebbero essere
 penalizzazioni nella sezione PCI.


 3.2.5.  ASUS SP4-SiS, per Pentium90, PCI/ISA

 come la SP3-SiS, ma per Pentium90/100.


 3.2.6.  ASUS TP4 con chipset Triton e supporto EDORAM

 ha il chipset Triton per migliorare le prestazioni e supporta le
 normali SIMM PS/2 in aggiunta al modo Fast-Page e i moduli EDO.


 3.2.7.  ASUS TP4XE con chipset Triton e supporto SRAM/EDORAM aggiun�
 tivo

 supporta le nuove EDORAM e le future SRAM. Si dice che per lo meno la
 SRAM dovrebbe aumentare considerevolmente le prestazioni. Per qualche
 oscura ragione non ha accettato le SIMM da 8MB che funzionavano
 benissimo sulla ASUS SP4; dopo averli cambiati con degli altri che
 sembravano piu' grossi ( 16 chips invece di 8 se mi ricordo bene ) ha
 funzionato bene. E' stata testata con un P90 e un P100.


 3.3.  Benchmarks sulleMotherboards ASUS

 Ho tentato di confrontare le velocita' delle CPU in due motherboard
 ASUS: per il 486 ho testato la SP3 SiS (quella con uno slot VesaLB ) e
 per il 586 ho usato la ASUS TP4/XE: ognuna aveva 16MB RAM, per il
 resto e' stato usato un sistema identico.

 Devo ammettere che non ho ancora letto la FAQ dei benchmarks e
 pertanto questa sezione potrebbe cambiare notevolmente presto. Se
 avete qualche commento da fare per piacere scrivetemi.

 Sono specialmente confuso dal fatto che l'AMD486DX4/100 e' stato piu'
 veloce del 120 sui dhrystones (?!). Non ho notato di queste
 incongruenze comparando il P90 e il P100.

 Probabilmente il problema era questo: quando ho messo dentro l'AMD
 DX4-100 avevo la motherboard settata per un DX2/66. Anche se il BIOS
 lo riportava come un DX4-100 la motherboard avrebbe potuto usare una
 frequenza di clock errata...  comunque, dato che il DX2-66 usa 33MHz *
 2 e il DX4-100 usa 33MHz * 3 non capisco perche' non sia corretto.

 La motherboard che usa il DX4-120 e' settata come 40MHz * 3 = 120MHz.

 Un'altra cosa che mi chiedo e' perche i risultati dei wheatstones su
 alcune macchine danno dei numeri cosi' puliti...


 3.3.1.  ASUS SP3 with amd486DX4-100


 �  Dhrystone time per 500000 passi = 7 per 63559 dhrystones/secondo

 �  Whetstone time per 1000 passi = 5 per 200.0000 Whetstones/secondo


 3.3.2.  ASUS SP3 with amd486DX4-120


 �  Dhrystone time per 500000 passi = 8 per 56074 dhrystones/secondo

 �  Whetstone time per 1000 passi =  4 per 250.0000 Whetstones/secondo


 3.3.3.  ASUS SP3 with intel486DX2-66


 �  Dhrystone time per 500000 passi = 9 per 50761 dhrystones/secondo

 �  Whetstone time per 1000 passi = 7 per 142.8571 Whetstones/secondo


 3.3.4.  ASUS TP4/XE with intel586-90


 �  Dhrystone time per 500000 passes = 4 per 101010 dhrystones/secondo

 �  Whetstone time per 1000 passes = 3 per 333.3333 Whetstones/secondo


 3.3.5.  ASUS TP4/XE with intel586-100


 �  Dhrystone time per 500000 passi = 4 per 102040 dhrystones/secondo

 �  Whetstone time per 1000 passi = 2  per 500.0000 Whetstones/secondo


 3.4.  Informazioni dettagliate sulle vecchie ASUS PCI-I-SP3 con
 chipset saturn da [email protected]:



 �  3 PCI, 4 ISA Slots (3x16, 1x8 Bit)

 �  ZIF Socket for the CPU

 �  posto per 4 72pin-SIMMs (max. 128M)

 �  Award BIOS su Flash-Eprom

 �  Onboard: NCR-SCSI, 1par, 2ser (con FIFO), AT-Bus, Floppy

 La motherboard si comporta come la maggior parte di quelle nella sua
 classe: cache write-through senza possibilita' di write-back. Non
 dovrebbe comunque essere importante, al massimo un 3% di prestazioni.

 Il BIOS supporta dischi rigidi SCSI sotto DOS/Windows senza drivers
 aggiuntivi ma con la motherboard ci sono doi drivers aggiuntivi che
 dovrebbero migliorare le prestazioni sotto DOS/Windows(ASPI), OS2,
 Windows-NT, SCO-Unix, Netware (3.11 e 4, se ho capito bene.)

 Gert Doering ([email protected]) ha detto che il driver per SCO-Unix
 del chip SCSI on board non funzionava correttamente. Dopo due o tre
 comandi del tipo "time dd if=/dev/rhd20 of=/dev/null bs=100k
 count=500" c'e' stato un kernel panic...

 I guai che hanno passato alcune persone con questa motherboard
 potrebbero essere causati dall'utilizzo di un Controller Adaptec SCSI
 esterno con la "sync negotiation" abilitata. (Questo e' successo prima
 dell'uscita dei drivers NCR, ecco il perche' dell'uso dell'Adaptec.)
 Per favore controllate nel setup del BIOS dell' Adaptec-1542C se lo
 usate anche voi e avete problemi con occasionali blocaggi del
 computer.

 C'e' una nuova versione della motherboard ASUS che dovrebbe
 sicuramente avere meno problemi. E' chiamata ASUS-PCI-I/SP3G, la G e'
 importante. Ha il nuovo chipset Saturn rev. 4 e i bugs dovrebbero
 essere spariti. Essi usano la variante Saturn-ZX e la nuova SP3G ha
 interrupt pienamente conformati PCI ( cioe' level triggered ( i.e.
 condivisibili ) e configurabili da BIOS). Ha una porta mouse PS/2
 onboard, ha modi power-saving EPA e supporto DX4. Ha delle eccellenti
 prestazioni. Se potete trovare la rivista tedesca di computer C't di
 Luglio (?) troverete una prova in cui si dice che la motherboard ASUS
 e' la migliore in circolazione.

 Ultima informazione sulla ASUS-SP3-G: potreste sperimentare dei crash
 di sistema se usate il PCI-to-memory-posting. Se lo disabilitate tutto
 funziona perfettamente.  [email protected] dice di
 credere che questo sia un problema del corrente kernel di Linux
 perche' parte del sistema continua a funzionare anche dopo che il
 resto si e' piantato, come se ci fosse un deadlock nello swapper, e
 perche' OS2/DOS e WINDOWS non hanno problemi.


 4.  Pat Dowler ([email protected]) con ASUS SP3G



 �  ASUS SP3G mainboard (e' rev.4 == saturn II)

 �  AMD DX4-100 CPU (bisogna settare il jumper 36 a 1&2 invece di 2&3,
    e' l'unica differenza con gli altri chip 486DXn)

 �  256K cache (arriva con cache da 15ns :-)

 �  16meg RAM (2x8meg)

 �  scheda video ET4000 ISA

 �  disco rigido quantum IDE

 �  scheda ethernet SMC Elitel16 combo

 Nonostante alcuni altri pareri trovo che il puntatore del mouse si
 muove molto fluidamente sotto X ( come pure sul vecchio '386) in ogni
 caso e' saltellante sotto alcuni, ma non tutti, giochi per DOS...

 Le prestazioni sono entusiasmanti!! Ho eseguito qualche grosso test in
 floating point e ho trovato che la prestazione in 3x33 ( 100MHz ) e'
 circa 1.5 volte quella in 2x ( 66MHz ) ( grosso per me e' una matrice
 500x500 di double, 4 mega piu' o meno)... ero un po' dubbioso sulla
 triplicazione del clock ma sembra che ne stia traendo pieno beneficio
 :-)

 L'altamente configurabile roba non funziona con i chip AMD DX4
 disponibili ora - vi serve un chip SL

 Mi servono veramente un disco SCSI e una scheda video PCI :-)

 (L'altro giorno ho ricevuto una telefonata di una persona che aveva lo
 stesso problema con dei chip FIFO SMC bacati, dopo aver usato X si
 piantavano).


 5.  confusione sui chipset saturn


 Pat Duffy ([email protected]) ha detto:


 Saturn I:  queste sono le revisioni 1 e 2 del chipset Saturn.
 Saturn II:  Questa e' anche chiamata la rev. 4 del chipset Saturn.

 Per quanto ne so io la rev. 3 non e' mai stata distribuita e (da alcune
 persone che ce l'hanno) la SP3G ora ha la rev. 4 ( o Saturn II) in essa.

 Confusi? Bene, l'unica risposta definitiva e' prendervi la <sf/motherboard/
 ed eseguire lo script di debug dei chipset PCI su di essa. Per quanto ne so io
 comunque le SP3G hanno proprio la rev. 4 ( Saturn II).




 6.  Schede Video

 La gente con Linux ha usato con successo le schede video # 9 XGE Level
 12, ELSA Winner 1000, e la S3-928. XFree86(tm)-3.1.1 supporta le
 schede video con chipset tseng et4000/w32
  ( la mia, N.d.T.) in modalita' accelerata come pure le S3 Vision 864
 e 964 includendo schede come la  ELSA Winner 1000Pro e 2000Pro, le
 Number Nine GXE64 e GXE64Pro e la Miro Crystal 20SV). Il supporto per
 il clock chipe Chrontel8391 e' stato aggiunto nel server S3.

 Le schede S3 Trio32 e Trio64 come le SPEA V7 Mirage P64 PCI e la MIRO
 Crystal 40SV, sono supportate, le Mach32 e Mach64 sono anche loro
 supportate in modalita' accelerata.

 Il driver SVGA

 Supporto per il modo a 16bpp (65K colori invece dei soliti 256) per le
 schede Mach32 come pure per il 32bpp per alcune schede S3 e per la
 P9000 e' stato aggiunto.


 [email protected] riporta:


 �  Diamond Stealth W32 (et4000/W32) -- Il modo testo funziona, X11
    soffriva di "pixel dust", insopportabile, mai ruscito a farla
    funzionare e restituita.

 �  # 9GXE L12 -- Funziona, le virtual consoles so corrompono quando si
    passa tra di esse, questo si puo' evitare disabilitando il "fast
    dram mode" nel mio BIOS. Non si riesce comunque ad avere un dot
    clock sopra 85.

 La Genoa Phantom 8900PCI sembra funzionare bene, la Genoa Phantom/W32
 2MB non funziona in una motherboard ASUS.  Il chipset Tseng 3000/W32i
 chipset sembra funzionare bene, la Spea-v7 mercury-lite funziona
 perfettamente da XFree86(tm)-2.1.

 La Spea V7 Mirage P64 PCI 2M with Trio64 funziona bene da
 XFree86(tm)-3.1.1


 L' ATI Graphics Ultra Pro per PCI con 2MB VRAM e un ATI68875C DAC
 funziona bene come [email protected] ci dice: "Sta rombando
 proprio ora a 1280x1024 con 256 colori @74Hz non-interlacciati. E'
 fantastica."

 La Paradise WD90C33 PCI si piantava sullo screensaver/X - questo e'
 stato risolto nelle nuove versioni del kernel.
 [email protected] (John Edward Bauer)

 La miroChrystal 8S/PCI (1MB) S3 - no problem.

 Stephen Tweedie ha detto che la sua scheda PCI Cirrus Logics 5434
 funziona bene.  E' a 64bit con 2MB e funziona perfettamente con il
 driver SVGA nei modi a 8, 16 e 32 bit per pixel.


 7.  Schede Ethernet

 Ovviamente le schede ethernet per ISA continuano a funzionare ma la
 gente richiede delle versioni PCI. L'autore di molti ( se non della
 maggior parte ) dei drivers ethernet ha detto quanto segue un po' di
 tempo fa (sfortunatamente non sono ancora riuscito a contattarlo per
 informaizoni aggiornate):


      From: Donald Becker ([email protected])

      Subject: schede PCI ethernet supportate?

      Il codice LANCE e' stato esteso per essere in grado di
      gestire delle versioni PCI. Spero di riuscire a mettere il
      codice di probing PCI ( all'incirca una dozzina di linee
      extra nel driver LANCE ) nella prossima versione del kernel.
      Sto lavorando sul codice per il modo a 32bit.  Non ho ancora
      iniziato il codice per il 21040.

      Scrivero' drivers per il modo PCnet32 e per il DEC 21040.
      Questo coprira' la maggior parte del mercato delle schede
      ethernet PCI.

      file://cesdis.gsfc.nasa.gov/pub/people/becker/whoiam.html


 Nei nuovi testkernels da 1.1.50 in su, gli adattatori ethernet AMD a
 chip singolo sono supportati. Con un pentium dovrebbero vedere oltre
 900K ftps/sec.  (assumendo un controller PCI NCR scsi ) con un carico
 CPU di circa il 20%.  (AMD Lance).

 Qualsiasi cosa basata sul chip AMD PCnet/PCI dovrebbe funzionare gia'
 adesso. Negli stati uniti la scheda Boca costa meno di US$ 70.

 Geoffry Coram ha scritto nelle news che e' riuscito a far funzionare
 la sua 3com 590 TPO.  Ha dovuto prendersi i drivers Alfa da
 http://cesdis.gsfc.nasa.gov/linux/drivers.  Ci dovrebbero essere anche
 degli altri driver, guardate.  Notate anche
 http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html

 Donald Holmgren ha detto di aver attaccato con successo la sua scheda
 DEC DE435 (PCI) alla rete locale su cavo coassiale sottile (BNC). Il
 driver DE435 prima testa la connessione sul doppino (twisted pair) e
 poi si mette a usare la porta alternativa ( settabile come AUI o BNC )
 se quella 10BaseT non e' in funzione.

 Jim Cusick usa la scheda Boca BEN 1PI su una rete in BNC.  Funziona
 proprio bene. Potreste voler dare un'occhiata a:
 http://cesdis.gsfc.nasa.gov/linux/misc/boca-failure.html per dei
 dettagli sui problemi di gioventu' di questa scheda.  La mia seconda,
 dopo averne rimadata indietro una per la sostituzionem era marcata "PM
 4186". La vecchia, che non funzionava, invece aveva un marchio "PM
 4185". Chiedete questo nuovo modello quando ordinate dal vostro
 rivenditore. A $ 70 e' un buon affare.

 Dave Platt raccomanda di stare alla larga dalla Boca BEN1PI a tutti i
 costi.  Sembra essere inaffidabile a causa di errori di progetto e la
 Boca sembra proprio non essere in grado di metterla a posto veramente.
 La scheda PCI "Vortex" 3Com 3c590 e' disponibile in una versione
 combinata (10BaseT, BNC e AUI). Il driver Linux per questa scheda non
 e' ancora parte ufficiale del kernel ma si puo' trovare a
 http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html e puo' essere
 messo nei kernel piu' recenti ( ovvero 1.2.x e 1.3.x) senza grandi
 difficolta'. Il driver Linux non supporta l'autodetect di questa
 scheda - dovrete usare l'utility dos per configurare la scheda per
 l'interfaccia che intendete usare (BNC in questo caso). Una volta
 fatto questo il driver Linux funzionera' correttamente.

 Ha usato una 3c590 per varie settimane e sta funzionando bene.

 Dave Kennedy ha detto di essersi preso due delle schede Boca di cui
 sopra e funzionano bene sotto un carico basso, ma falliscono
 miseramente in caso di richieste pesanti ( come ad esempio un doppio
 ftp da 16Mega in entrambe le direzioni). Egli le ha rispedite alla
 Boca per un intervento hardware, dopo qualche modifica a base di
 diodi/resistori (saldati sulle schede) esse hanno funzionato senza
 problemi in tutte le condizioni. Le schede stanno funzionando da sei
 mesi 7 giorni su 7 e 24 ore su 24  in due sistemi P90 senza problemi
 da 6 mesi ad oggi.

 Craig non le raccomanda dato che la Boca non sembra seguire le
 specifiche AMD ma le ha usate per due mesi senza problemi. Ha testato
 le sui prestazioni NFS e ha mosso grandi file da e verso il server
 (16M, 8M). Ha anche provato a lavorare in locale usando i files di
 dati montati da NFS sulla sua scheda ISA NE2000. (nota dell'editore:
 probabilmente dovrebbe essere la ISA SMC Elite Ultra).


 7.1.  3com-3c590-tpo


 Qualcuno sulle USENET News ha detto di usare le 3Com-3C590-TPO
 (EtherLink III - PCI). Ha dovuto prendere il file "3c59x.c" del driver
 e applicargli la patch "vortex.patch" per farlo funzionare sul suo
 kernel 1.2.8.


 7.2.  DEC435 PCI NIC


 Si dice che la DEC435 PCI NIC funzioni perfettamente con i drivers
 inclusi nella distribuzione Slackware - questo dovrebbe stare a
 significare che gli stessi siano inclusi nei nuovi kernels.


 8.  Motherboards

 La gente che ha risposto usa le seguenti motherboards:


 8.1.  ASUS


 �  [email protected] - con successo.

 �  [email protected] - cosi' cosi', funziona, ma...

 �  [email protected] (Ulrich Teichert), - con successo.

 �  [email protected] - con successo

 �  [email protected] -  con successo

 �  [email protected] -  con successo - ma problemi con la porta seriale

 �  [email protected] and his friend - con successo dopo aver
    risolto un problema IDE

 �  Lars Heinemann ([email protected])  con successo

 �  Michael Will ([email protected]) - con successo


 8.2.  Micronics P54i-90


 [email protected] con successo

 [email protected] con successo

 [email protected] con successo



 8.3.  SA486P AIO-II


 [email protected] con successo



 8.4.  Sirius SPACE


 [email protected] - con successo


 8.5.  Gateway-2000

 [email protected] - nessun problema a parte con la scheda audio quando si
 usa lo swapping [email protected] - con successo,
 ma...  robert logan ([email protected]) - senza problemi.  James D.
 Levine ([email protected]) - sena problemi.


 8.6.  Intel-Premiere

 [email protected] - con successo [email protected] - con successo
 [email protected] - con successo (Premier-II)


 8.7.  [email protected] - con successo DELL Poweredge SP4100

 8.8.  [email protected] - funziona se si disattiva il
 Plug'n'Play DELL OptiPlex Gl+ 575

 8.9.  Comtrade Best Buy PCI / PCI48X MB Rev 1.0

 [email protected] - "Funziona, credo che abbia un chipset Saturn
 bacato.  Vorrei anche aggiungere: non comprate dalla Contrade. Il loro
 servizio e' orribile.
 8.10.  IDeal PCI / PCI48X MB Rev 1.0

 [email protected] - "Non ha funzionato con la motherboard PCI48X"


 8.11.  CMD Tech. PCI IDE / CSA-6400C

 [email protected] - "Funziona"


 8.12.  GA-486iS (Gigabyte)

 [email protected] - con successo e problemi.


 8.13.  GA-586-ID (Gigabyte) 90 Mhz Pentium PCI/EISA Board

 [email protected] - con successo


 8.14.  ESCOM 486dx2/66 - which board?

 Funziona perfettamente a parte lo streamer ftape (archivio)


 8.15.  J-Bond with i486dx2/66

 Drew Eckhardt ([email protected]) usa una Diamond Stealth
 64 VRAM con 4M of memory (basata sul chipset 964 ). Funziona
 benissimo, di solito la usa in 1024x768 a 72hz con 32bpp; 16bpp e 8bpp
 funzionano anche loro comunque. Gli e' servito prendere il server
 X311u2S3.tgz da ftp.xfree86.org; la gente con delle schede Diamond
 basate sul 968 dovrebbero sicuramente darli un'occhiata.


 8.16.  super micro 011895 03:50 SUPER P54CI-PCI rev 1.3 (Opti)

 Manuel de Vega Barreiro

 �  board    super micro 011895 03:50 SUPER P54CI-PCI rev 1.3

 �  chipset Opti : 82c557,82c556,82c558,82c621.

 �  4 PCI, 4 ISA Slots (4x16 Bit)

 �  ZIF Socket per CPU (120,100,90,75 mHz)

 �  4 72 pin-SIMMs (max 128Mb)

 �  cache 256,512,1024 Kb L2-cache

 �  Ami WinBIOS in Flash-Eprom (101094-VIPER-P)

 �  onboard: EIDE per 4 drives

 �  Pentium with 90Mhz, 8M (ora 16M) RAM e 256K L2-cache.

 �  1 maxtor 540 Mb, 1 st3122A 1Gb

 �  Number Nine 9GXE64pro con 2Mb

 �  Sound blaster 16 + cdrom Matsushita

 �  17" microscan 5ep ADI monitor

    Io uso il linux 1.1.57 ( ora 1.2.1) senza problemi.  il dosemu0.53
    funziona bene (software di comunicazione come kermit e xtalk)
    XFree86 3.1 alla risoluzione di 1024x768




 9.  Gente che ha avuto successo



 9.1.  California Graphics - Sunray II Pro


 Guido Trentalancia ([email protected]) ha detto che la sua C.G.
 Sunray II Pro con il chipset Triton funziona bene con un Pentium 100,
 H.D. Conner cfs420a, e che sta macinando numeri a 147492
 dhrystones/sec.


 9.2.  Micronics P54i-90 ([email protected])


 Pentium a 90MHz, 32MB RAM e 512K cache di secondo livello. Funziona
 estremamente bene ( una compilazione del kernel prende 10 minuti :-).


 La motherboard contiene :

 �  UART - due 16550A high speed UARTS

 �  ECP - ona enhanced parallel port

 �  Onboard controller IDE

 �  Onboard controller floppy

 Pro: Ora come ora la sto usando con un Adaptec 1542CF e un drive da 1
 giga della Seagate senza problemi. La scheda video e' una ATI Graphics
 Pro Turbo (PCI).  Molto veloce. Le porte seriali riescono a stare al
 passo con un modem TeleBit T3000 (38400) senza perdere caratteri per
 la strada. La cache funziona anche sulla memoria al di sopra dei 16
 mega. Ci sono tre banchi di slot SIMM ( due SIMM per bancata con una
 capacita' per ogni bancata di 64MB (2 x 32MB SIMM da 72pin). Ogni
 bancata deve essere completamente riempita per poter funzionare ( io
 sto usando solo il banco 0 con due SIMM da 16 Mega). Lo zoccolo per la
 CPU e' uno ZIF. Il BIOS e' un Phoenix di tipo FLASH.

 Contro: la RAM e' espandibile a 192MB ma la cache di secondo livello
 ha un massimo a 512KB. Anche se la scheda grafica e' molto veloce
 attualmente non c'e' un server XF86 per la Mach64 ( beh, attualmente
 c'e', ma non usa nessuna accelerazione, e' solo un server SVGA ). Non
 so se il controller IDE on board funziona; ho dei pregiudizi su uno
 standard che non permette che le mie periferiche operino su diverse
 piattaforme, cosi' non ho comprato un disco IDE; ho invece preso un
 Seagate 31200N e un NEC 3Xi.

 Mitch


 9.3.  Angelo Haritsis ([email protected]) sulla SA486P AIO-II:

 La motherboard che ho alla fine comprato (in GBR) e' una che supporta
 i chip 486 SX/DX/DX2/DX4. Si chiama SA486P AIO-II. Le caratteristiche
 includono:


 �  chipset Intel Saturn v2

 �  Phoenix BIOS (flash eprom in opzione)

 �  NCR scsi BIOS v 3.04.00

 �  256K 15ns cache (max 512) write back e write through

 �  4 72-pin SIMM slots in 2 banchi

 �  3 PCI slots, 4 ISA

 �  On-board controller NCR 53c810 scsi

 �  On-board IDE / floppy / 2 x 16550A uarts / enhanced parallel

 L'ho comprata da una compagnia (GBR) chiamata ICS, (notate che io non
 ho nessun interesse in essa, sono solo un felice acquirente). Io uso
 una CPU 486/DX2-66.

 Prima ho avuto una motherboard VLB con un controller buslogic BT-445S
 in prestito. Io ho due periferiche scsi: un disco rigido barracuda
 ST12550N da 2.1GB e uno streamer Wangtek 5525ES.  Mi aspettavo un
 sacco di problemi dopo il cambio di motherboard, specialmente dopo
 aver sentito tutte le voci che giravano in rete. Con mia grande
 sorpresa tutto ha funzionato perfettamente dal primo boot! (1.1.50).
 Ed sta facendo lo stesso da circa un mese ormai. Non ho neanche dovuto
 ripartizionare il disco: apparentemente la traduzione della geometria
 del disco e' la stessa in entrambi i controller.  Linux non ha avuto
 problemi. Lo SCSI e' anch'esso visibilmente piu' veloce ( mi spiace ma
 non ho fatto dei test).

 Gli unici problemi (collegati al driver scsi ncr53c7,810 di Drew -
 grazie per il buon lavoro a proposito!) sono:

 �  i trasferimenti sincroni non sono ancora supportati => calo di
    prestazioni

 �  il disconnect/reconnect e' disabilitato => le operazioni sul disco
    scsi talvolta si bloccano durante alcune operazioni lente
    dell'altra periferica scsi ( ad esempio il riavvolgimento del
    nastro )

 �  il tagged queuing non c'e' (?) => calo di prestazioni

 Se Windows si lamenta per dei problemi col driver a 32-bit vi basta
 disabilitare l'accesso a 32-bit dal pannello di controllo. Questo non
 dovrebbe abbassare le prestazioni ( Io invece ho rimosso il driver
 WDCTRL dal mio SYSTEM.INI )

 Tutto il resto e' OK. Ho provato le porte seriali con qualche
 programma dos/windows e hanno funzionato. Il controller IDE/Floppy
 funziona anch'esso. Non ho provato ancora la porta parallela. La
 motherboard e' molto veloce e fin'ora sono molto compiaciuto
 dall'upgrade. Non ho ancora provato una scheda video PCI. Lo faro' in
 futuro. Sto usando una vecchia ISA S3 che per il momento mi basta.


 9.4.  [email protected] about his Micronics M5Pi

 Motherboard Micronics M5Pi con Pentium 60 MHz , bus PCI e le seguenti
 cose:




 16Mb RAM/512k cache
 <sf/onboard/ IDE, parallela, 16550A UARTS
 2 X 340MB Maxtor IDE H.D.
 Soundblaster 16 SCSI-II
 Toshiba 3401B SCSI CD-ROM
 Streamer Archive Viper 525MB SCSI
 Monitor Viewsonic 17
 Scheda video Cardex Challenger PCI (ET4000/W32P)
 Mouse seriale A4-Tech



 Tutto funziona alla grande, l'installazione della Slackware e' stata
 molto facile, posso far girare Quicken 7 per DOS sotto il DOSEMU. Io
 lavoro in X con una risoluzione di 1024x768 a 67Hz.


 9.5.  Simon Karpen ([email protected]) con la Micronics
 M54pi

 Non ho avuto problemi con la motherboard di cui sopra, il controller
 IDE PCI on board (spero presto di avere anche lo SCSI) e una ATI
 Mach32 (GUP) con 2MB di VRAM.


 9.6.  Goerg von Below ([email protected]) sul DELL Poweredge



 - Intel 486DX4/100
 - 16 MB RAM
 - DELL SCSI array (DSA) con Firmware A07, DSA-Manager 1.7
 - 1 GB SCSI HD DIGITAL
 - NEC SCSI CD-ROM
 - streamer interno da 2 GB SCSI
 - scheda ethernet 3-Com C579 EISA
 - Sottosistema VGA ATI 6800AX PCI con 1MB RAM

 ATTENTI! Il controller DELL SCSI Array (DSA) funziona solo con il firmware Rev. A07 !
 A06 e' bacata, e' impossibile fare il reboot !
 Per prenderla: ftp dell.com , il file e' /dellbbs/dsa/dsaman17.zip



 A parte questo problema dovuto al firmware non ci sono state grane per
 gli scorsi due mesi, usando il linux 1.1.42 come nameserver primario e
 news e www server sull'internet.


 9.7.  [email protected] sul Gateway2000 P-66

 Sistema Gateway2000 P5-66 con motherboard Intel PCI 5 slots ISA e 3
 PCI.  L'unica scheda PCI che sto usando e' la scheda # 9 GXe level 12
 PCI (2 MB VRAM e 1 MB DRAM). Questa scheda e' stata acquistata dalla
 Dell. Sotto Linux sto usando la grafica solo in 80x25 ( sto aspettando
 alcuni raffinamenti di XFree86 prima di usarla in 1280x1024), ma sotto
 DOS/Windows ho usato la scheda in 1280x1024x256 senza problemi. Ho
 inoltre una scheda Ethernet Etherlink 3C509, un'interfaccia sul bus
 della Mitsumi, un'interfaccia SCSI Adaptec 1542C e una scheda con
 delle seriali e parallele aggiuntive (che in totale diventano 3 ( le
 seriali)).

 Ho un totale di 32MB RAM (riconosciuti e usati sia da Linux e DOS).
 C'e' anche un bus mouse (un Microsoft in modalita' PS2).


 Nessun problema fino ad ora.


 9.8.  James D. Levine ([email protected]) con la Gateway2000

 Gateway 2000 P5-60 con una motherboard Intel Mercury , AMI-Flash-BIOS,
 (1.00.03.AF1, (c)'92) 16M RAM, IDE controller on-board e una scheda
 video PCI ATI AX0 (Mach32 Ultra XLR). Non ha avuto problemi con
 l'hardware fino ad ora ma non ha neanche provato delle cose
 particolari come ad esempio drivers accelerati per l'IDE o il supporto
 SCSI.


 9.9.  [email protected] con SPACE

 SPACE-motherboard, 8MB RAM, S3 805 1MB DRAM PCI 260MB Seagate IDE-hard
 disk a causa della mancanza del driver NCR53c810, 0.99pl15d, sembra
 funzionare bene.


 9.10.  [email protected] con INTEL

 17 macchine con un P60 sulla motherboard Intel-Premier-PCI


 9.11.  Jermoe Meyers ([email protected]) con Intel Premiere


 Motherboard Intel Premiere Plato-babyAT 90mhz, Buslogic bt946c con
 mcode 4.86 firmware autoSCSI 4.22, (nota, la mia ha l'mcode 4.80 e
 l'autoSCSI firmware 4.17. (i pin di interrupt A,B,C corrispondono ai
 rispettivi slot PCI!), ATI Xpression (Mach64) - sto usando i driver da
 sunsite con un monitor AcerView 56L.

 La motherboard ha 4 dischi IDE, Linux ( Slackware 2.0) vede i primi
 due e tutto quello che c'e' attaccato alla Buslogic come se emulasse
 un'adaptec 1542. Ah, gia', il Dos li vede tutti.  La Buslogic e' MOLTO
 gentile nello spedire chips upgradati ( dovete sapere come cambiare
 chips PLCC ( plastic leaded chip carrier (mai visti, se qualcuno sa
 come sono fatti... (N.d.T.)) e ne dovete cambiare 3. Non lasciatevi
 comunque scoraggiare, prendetevi un attrezzo per la rimozione dei PLCC
 senza spenderci molto e siete pronti.  Potreste anche voler fare
 l'upgrade della flash-rom del vostro bios di sistema dalla BBS IPAN
 della Intel, una cosa semplicissima. Cosa ancora piu' interessante e'
 che ho anche una Sound Blaster SCSI-2 che fa funzionare un drive CDROM
 attaccato al suo controller onboard adaptec 1522. Questo vuol dire 4
 drives IDE ( 2 sotto Linux) e 2 controllers SCSI-2.

 Spero che questo faccia si' che altri che stanno combattendo con la
 tecnologia PCI usino Linux !  Jerry ([email protected])


 9.12.  Timothy Demarest ([email protected]) Intel Plato Premiere II

 Il mio sistema e' configurato come segue: 16Mb 60ns RAM, scheda
 ethernet 3Com Etherlink-III 53C809 (usando il 10base2), ATI Mach 64
 2Mb VRAM, CDROM SCSI Toshiba 2x, controller SCSI NCR 53c810 PCI, Drive
 Syquest 3270 270Mb, monitor Viewsonic 17 , Pentium-90 (senza bug
 FDIV). Sto usando la Slackware 2.1.0e il Kernel 1.2.0 con varie
 patches e upgrades.

 Tutto sta funzionando alla perfezione. Non consiglio i dischi Syquest.
 Ho usato sia i 3105 che i 3270 e sono entrambi molto, molto, molto
 fragili. In piu' le cartucce si possono danneggiare facilmente e ho
 avuto spesso problemi con esse. Sto cercando un sistema di
 immagazzinaggio rimovibile alternativo al momento (MO, Zip, Minidisc,
 etc).

 Alcune informazioni che vi potrebbero servire:


 9.12.1.  upgrades del Flash Bios

 Gli upgrades per il Flash Bios possono essere presi con ftp da
 wuarchive.wustl.edu:/pub/MSDOS_UPLOADS/plato. La versione corrente e'
 la 1.00.12.AX1.  Gli upgrades BIOS *devono* essere fatti in ordine. Da
 1.00.03.AZ1 a 1.00.06.AX1 a 1.00.08.AX1 a 1.00.10.AX1 a 1.00.12.AX1.
 Gli upgrades del Flash BIOS possono anche essere presi dalla BBS
 Intel. Non ho il numero sottomano comunque.


 9.12.2.  NCR 53c810 BIOSless (i.e. senza bios) PCI SCSI

 Se state usando una scheda PCI BIOSless SCSI NCR53c810 nella Plato
 potreste avere problemi nel vederla riconosciuta. Io ho dovuto
 cambiare un jumper sulla scheda NCR: il jumper che controlla se ci
 sono 1 o 2 schede SCSI NCR nel vostro sistema deve essere settato su
 "2". Non so perche' ma questo e' il modo in cui sono riuscito a farlo
 funzionare.  L'altro jumper controlla il settaggio dell' INT
 (A,B,C,D). Io ho lasciato il mio su A ( il default).


 9.12.3.  eccetto questo - "plug and play!"

 Non ci sono settaggi nel BIOS della motherboard per usare l'NCR
 53c810.  Non preoccupatevi - una volta che il jumper sulla scheda e' a
 posto tutto funzionera' perfettamente! Grazie al Plug-n-Play PCI!


 9.13.  [email protected] con l'ASUS

 ASUS-PCI-Board (SP3) con:



 �  -- Asus PCI-Board con AMD 486/dx2-66 e 16M RAM

 �  -- Fujitsu 2196ESA 1G SCSI-II

 �  -- Controller Future Domain 850MEX (controller scsi economico,
    all'incirca un clone del Seagate ST01... vorrei usare l'NCR 53c810
    non appena il driver verra' rilasciato

 �  -- ATI Graphics Ultra (la vecchia con il chip Mach-8 Chip, ISA-Bus)

 �  -- Slackware 1.1.1

 Egli ha appena scambiato le motherboards, ha messo dentro le schede,
 connesso i cavi e tutto ha funzionato perfettamente. Non usa comunque
 delle schede PCI per ora.


 9.14.  [email protected] con l'ASUS

 ASUS-PCI-Board con 486DX66/2, miro-crystal 8s PCI guidata dai drivers
 S3 di XFree86-2.0, usando il chip SCSI onboard. Nessun problema di
 compatibilita' in assoluto.





 9.15.  Lars Heinemann ([email protected]) con l'ASUS

 ASUS PCI/I-486SP3 Motherboard con 486DX2/66 e 16M RAM (2x8),
 miroChrystal 8S/PCI (1MB) S3, Soundblaster PRO, controller SCSI
 Adaptec 1542b (3.20 ROM) con due dischi rigidi (Fujitsu M2694ESA u.
 Quantum LPS52) e uno stramer QIC-150.  Nessun problema!


 9.16.  [email protected] con l'ASUS


 ASUS PCI/I-486SP3 / i486DX2-66 / 8 MB PS/2 70 ns
 BIOS: Award v 4.50
 CPU TO DRAM write buffer: enabled
 CPU TO PCI write buffer: enabled
 PCI TO DRAM write buffer: disabled, non si puo' cambiare
 CPU TO PCI burst write:  enabled
 Miro Crystal 8s PCI - S3 P86C805 - 1MB DRAM
 Quantum LPS 540S SCSI-Harddisk con un controller NCR53c810.




 9.17.  robert logan ([email protected] con GW/2000)


 Gateway 2000 4DX2-66P 16 Megs RAM, PCI ATI AX0 2MB DRAM (ATI GUP).  WD
 2540 Hard Disk (528 Megs) CrystalScan 1776LE 17pollici. (Va fino al
 1280x1024) Slackware 1.1.2 (0.99pl15f)

 Non gli sta dando problemi. Egli usa lo SLIP per la connessione in
 rete e una Orchid-Soundwave-32 per i giochini, aspettando il driver
 NCR.  L'unico problema e' che il disco IDE potrebbe essere molto piu'
 veloce sul PCI-IDE. E' uno dei nuovi dischi rigidi veloci Western
 Digital e in DOS viaggia veramente tanto - su Linux invece e' lento
 come un buon disco IDE


 9.18.  [email protected] e un suo amico usano l'ASUS

 Archie e il suo amico hanno delle configurazioni piuttosto simili:


 �  ASUS PCI-SP3 motherboard (4 ISA, 3 PCI)

 �  Intel 486DX2/66

 �  Scheda video Genoa Phantom 8900PCI  (l'amico: Tseng 3000/W32i)

 �  H.D. Maxtor 345 MB IDE

 �  modem interno Supra 14.4

 �  monitor ViewSonic 6e (Archie)

 �  NEC Multisync 4fge (l'amico)

 �  Slackware 1.2.0

 La SCSI onboard e' disabilitata. Sulle prime ci sono stati dei
 problemi con il drive IDE: ``sulla mainboard c'e' un jumper che
 sceglie se l'IRQ 14 deve arrivare dal bus ISA o da quello PCI. Sul
 manuale c'e' un esempio dove si mostra la sua connessione all'INT A
 del PCI. Bene, noi abbiamo fatto proprio come si vede nell'esempio...
 ma piu' tardi il nostro disco IDE non funzionava (il controller IDE on
 board). Abbiamo dovuto riportarlo indietro. La gente all'NCA era
 perplessa sulle prime poi ha rintracciato il problema che era proprio
 nel jumper. Io mi immagino che che il controller IDE usi l'IRQ 14 o
 simili... Questo non e' documentato da nessuna parte sui manuali. A
 parte quello ora sta proprio andando alla grande. Sta eseguendo X,
 usando il modem, etc. (per la Supra dovete dire esplicitamente al
 kernel che la porta COM ha una 16550A usando setserial (nella
 Slackware /etc/rc.d/rc.serial))''.


 9.19.  Michael Will con l' ASUS-SP3 486 (il vecchio modello)


 ha usato le seguenti cose:


 �  ASUS PCI-SP3-Board con un 486dx2/66 e 16M RAM

 �  NCR53c810-SCSI-II chip con un disco 1GB-Seagate-SCSI-II e un nastro
    Wangtec

 �  scheda video ATI-GUP PCI Mach32 con 2M VRAM che va alla perfezione
    con XFree86(tm)-3.1 8bpp e 16bpp

 �  Linux kernel 1.1.69

 Funziona perfettamente e io sono soddisfatto dalla velocita', l' ATI-
 GUP-PCI(Mach32) non da' dei benchmarks cosi' buoni come mi sarei
 potuto aspettare comunque. Dato che adesso ho dei soldi mi sono preso
 una ASUS-SP4 con un P90 che mi da' delle prestazioni migliori sulla
 mia Mach32-PCI...  Se avessi avuto ancora piu' soldi mi sarei preso
 altri 16MB di RAM e una Mach64-PCI con 4M RAM, in ogni caso...
 Continuo a sognare :-)


 9.20.  Mike Frisch ([email protected]) Giga-Byte 486IM



 �  Motherboard: Giga-Byte 486IM

 �  Configurazione: 4 ISA slots (2 doppi VLB) & 4 slots PCI

 �  CPU: Intel 486DX/33

 �  BIOS: Award 4.50G

 �  controller dischi PCI EIDE : Giga-Byte GA-107 (CMD 640x PCI Multi-
    I/O)

 �  scheda video PCI : ATI Graphics eXpression PCI 2MB DRAM

 �  Linux Kernel: 1.2.9

 �  Distribuzione Linux: Slackware 2.2.0 altamente modificata

 Ho fatto andare questa scheda 24 ore su 24 per gli scorsi 5-6 mesi.
 Ha funzionato senza problemi sotto DOS/Windows, OS/2 Warp e Linux (con
 Linux che di solito ha girato 24 ore al giorno).



 9.21.  Karl Keyte ([email protected]) Gigabyte GA586 Pentium


 �  Mainboard PCI/EISA Gigabyte GA586-ID 90MHz Pentium (dual processor,
    ne ho solo uno)
 �  32M RAM

 �  SCSI - no scsi-NCR-chip on-board, usando un Adaptec 1542C,

 �  PCI ATI GUP 2M VRAM

 �  Controller SCSI Adaptec 1742 EISA

 �  Soundblaster 16

 �  solito I/O


 Tutto sotto DOS E Linux funziona alla perfezione. Nessun problema in
 assoluto.  Una macchina VERAMENTE veloce! I benchmarks di BYTE per
 Unix la piazzano all'incirca allo stesso livello di una Sun
 SuperSPARC-20 con Solaris 2.3. Il PC e' piu' veloce nell'aritmetica
 intera e nel processing ( inclusi i context switching). La SPARC e'
 piu' veloce sul floating point e in uno dei benchmarks del disco.


 9.22.  [email protected] con G/W 2000

 Egli usa un Gateway 2000 senza problemi eccetto per la scheda audio
 (quale?). Sta cercando di cambiarla con una Soundblaster originale
 sperando che questo li risolva.


 9.23.  Joerg Wedeck ([email protected]) / ESCOM

 All'inizio ha comprato un 486 DX2/66 dalla ESCOM (che mainboard?) con
 IDE onboard e senza (!) chip NCR SCSI onboard.  Invece usa un
 controller scsi ISA-adaptec 1542cf, una spea v7 mercury lite (s3, PCI,
 1MB), ISA-Soundblaster-16, mitsumi-cdrom (il piu' lento).  Tutto a
 parte lo streamer funziona senza problemi.  La spea-v7 funziona
 perfettamente da XFree86(tm)-2.1

 Egli ha poi abbandonato la mainboard Intel a favore di una ASUS-SP3-g
 e ha qualche problema col burstmode PCI-to-Memory che si pianta solo
 su linux, " sembra un deadlock nello swapper". Se avete qualche
 informazione su questo per favore mandate una email al curatore di
 questo HOWTO.

 Dopo aver tolto l'opzione PCI-to-Memory tutto e' perfetto.

 Invece di mandargli della mail per favore leggete la sua home page a
 "http://wsiserv.informatik.uni-tuebingen.de/ jw" dove tiene anche
 delle informazioni sul suo sistema PCI.


 9.24.  Ulrich Teichert / ASUS


 ASUS-PCI mainboard con un AMD486dx40 (ma attualmente va a 33Mhz?!)  La
 sua ISA-ET3000 Optima 1024A funziona bene. Nessun problema con il
 disco rigido Quantum540S SCSI attaccato al chip NCR53c810 onboard.


 10.  Insuccessi e/o problemi



 10.1.  Sistemi Compaq PCI, specialmente Presario



 Patrick Yaner ([email protected]) mi ha riportato una "specialita'"
 Compaq.  Pare che essi stiano mappando l'area del BIOS PCI in una
 oscura zona di memoria: una zona inaccessibile sia da Linux che da
 OS/2. I due sistemi la trovano, ma non riescono ad accederci e danno
 un messaggio del tipo "pcibios_init: entry in high memory area, unable
 to access" quando li si accende. Anche se questo e' un comportamento
 perfettamente accettabile per lo schermo (che e' sul bus PCI) e per il
 controller IDE (anche lui ), questo significa che un qualsiasi
 dispositivo PCI aggiuntivo ( come ad ex. una scheda Ethernet ) non
 puo' essere riconosciuto da Linux.

 Compaq offre un driver per DOS a
 ftp://ftp.compaq.com/pub/softpaq/Drivers/SP1116.ZIP

 Il problema di usare questa soluzione con Linux e' di dover usare
 loadlin per far partire Linux da DOS invece di usare il LILO. Notate
 che occasionalmente Compaq rilascia delle nuove versioni del suddetto
 file quindi ftp://ftp.compaq.com/pub/softpaq/allfiles.html ( oppure
 allfiles.txt ) vi puo' essere utile per controllare se non sia
 cambiato qualcosa.

 Stranamente queste informazioni si possono trovare nello SCSI HOWTO
 anche se i Presario sono equipaggiati con IDE di default.


 10.2.  VLSI Wildcat PCI chipset like in Zeos P120 box


 Paul Bame ([email protected]) ha riportato:

 Il mio cdrom ATAPI e la mia scheda Ethernet 3c509 non sono state
 riconosciute fino a quando non ho disabilitato il Plug-and-Play come
 riportato dall' Ethernet HOWTO


 10.3.  [email protected] con SCSI-PCI-SC200


 Egli riporta che dopo aver messo quella scheda nella sua mainboard
 Pentium Linux non parte piu'. La mia prima idea e' che non e'
 supportata.


 10.4.  [email protected] G/W 2000


 Gateway 2000 G/W 2000 4DX2/66 PCI ATI-Graphics-Ultra-Pro IDE di non si
 sa quale marca

 Funziona bene - l'unico problema e' che la scheda IDE funziona in
 modalita' compatibile ISA e va un bel po' piu' velocemente quando
 viene messa in modalita' PCI da un programma DOS... cosi' non e' poi
 cosi' veloce in Linux e una patch farebbe piacere.


 10.5.  [email protected] (Frank Hofmann) / ASUS


 Egli usa la sua motherboard ASUS con 16MB RAM, usa S3 928 ISA e il
 controller IDE onboard con un disco rigido Seagate ST4550A.  Non ha
 avuto problemi con i recenti kernel linux.

 Il suo problema:

      usando X il mio mouse non risponde piu' come prima. Talvolta e' dietro
      a dove dovrebbe essere e saltella se lo muovo troppo velocemente.
 Credo che questo sia stato discusso in un newsgroup Linux qualche
 tempo fa (non so quale) e dovrebbe essere causato dai chip seriali
 16550 che ci sono sulle interfacce seriali onboard. Dopo due settimane
 mi ci sono abituato :-)


 Ridurre la soglia (treshold) della 16550 dovrebbe aiutare. Dovrebbe
 esserci una patch per il setserial da qualche parte ma non so dove.



 10.6.  [email protected] (Axel Mahler) / ASUS


 ASUS PCI/I-486SP3 Motherboard (Award BIOS 4.50), 16 MB RAM il chip NCR
 on-Board NCR e' disabilitato, aveva una Genoa Phantom/W32 2MB per PCI
 e un Adaptec AHA-1542CF (BIOS v2.01) connesso a:

 �  un disco rigido IBM 1.05 GB

 �  un CDROM Toshiba XM4101-B

 �  uno streamer DAT HP (2GB)

 Quando si creava il filesystem, 'mke2fs' (0.4, v. 1.11.93) si bloccava
 e l'installazione era impossibile. Dopo aver rimpiazzato la Genoa
 Phantom/W32 2MB PCI con una ELSA Winner 1000 2MB PCI ha funzionato
 alla perfezione.  L'ha testato anche con una vecchia scheda VGA Eizo
 ISA e ha funzionato anche con quella cosi' probabilmente il problema
 era nella Genoa.


 10.7.  Frank Strauss ([email protected]) / ASUS

 ASUS SP3 Mainboard i486DX2/66 NCR53c810 disabilitato Adaptec 1542B in
 uno slot ISA con 2 dischi rigidi (200MB Maxtor, 420MB Fujitsu),
 SyQuest 88MB e uno streamer Tandberg ELSA Winner 1000 PCI, 1MB-VRAM
 Soundblaster Pro in uno slot ISA con IRQ 5 Onboard IDE disabilitato
 Onboard seriali, parallela, e controller Floppy abilitati

 Dopo un reset la macchina talvolta si blocca ( e' lo stesso resettare
 software e hardware) - questo probabilmente non e' causato
 dall'adaptec e dalla scheda audio perche' anche senza questo il
 sistema talvolta non parte. Se va comunque, (e se appare il messaggio
 della ELSA-WINNER-1000-PCI) va bene.

 Le due porte seriali sono giustamente identificate come 16550 ma
 durante alcune sessioni c'e' stata una grande perdita di dati col
 V42bis... Il problema sembra essere nell'hardware...


 CPU>-PCI-Burst sembra funzionare bene con DOS/MS-Windows

 CPU->PCI-Burst non funziona bene con linux0.99p15, Il computer si
 incasina quando cambio virtual console e si pianta completamente
 quando si eseguono programmi grandi come ghostview e xdvi lasciando
 pero' acceso il led SCSI (!)

 (Sospetto che queste applicazioni usino molto il CPU->PCI-burst a
 causa delle grandi quantita' di dati da trasmettere alla PCI-
 Winner-1000)


 Dopo aver disabilitato il CPU->PCI-Burst, funziona bene, la
 Winner-1000 a 1152x846 (not molta font cache con 1MB) fa 93k xstones.
 OpaqueMove con il twm e' piu' che sopportabile :-)
 Egli ha un SATURN.EXE che carica sotto DOS prima di far partire Linux,
 cosi' da usare il burst senza piantamenti...

 Alcuni hanno detto che questi problemi potrebbero sparire se si toglie
 la "sync negotiation" sull'Adaptec - Non so se questo sia possibile
 con anche l' adaptec1542B ma credo di si'.

 Con CPU->PCI-Burst la macchina tira fuori 95k xstones, cosi' egli
 considera che non sia poi un cosi' gran problema non usarlo. La sua
 unica grana e' che vorrebbe far andare la sua Winner-1000 a 1152x900,
 cosa, purtroppo, non fattibile dato che pare che qualsiasi risoluzione
 sopra i 1024 pixels viene portata a 1280 sprecando cosi' un sacco di
 spazio ma questo probabilmente non e' un problema connesso al PCI e
 dovrebbe essere scomparso con XFree86(tm)-2.1


 10.8.  [email protected] / ASUS



 �  MAINBOARD ASUS PCI/I-486 SP3 RAM: 16MB (4x4M-SIMM)

 �  CPU            486DX33 CPU


 �  BIOS           Ver. 4.50 (12/30/93)

 �  Floppy         Two floppy drives (1.2 and 1.44), usando il
    controller floppy onboard

 �  provati due controller SCSI, il WD7000 e l'Adaptec 1542CF: entrambi
    hanno funzionato

 �  Due dischi rigidi SCSI 320M

 �  CDROM SCSI NEC84

 �  Streamer SCSI QIC150

 �  Video - Tseng ET4000 ISA

 �  Scheda audio PAS16

 �  Stampante attaccata alla parallela onboard.

 Per ora non ha niente negli slots PCI ma vorrebbe una scheda video
 PCI; attualmente sta usando un controller SCSI WD7000 ma si mettera' a
 usare il chip NCR onboard non appena uscira' il driver.

 Tutto ha funzionato perfettamente - la porta seriale numero uno, che
 ha attaccato un modem 14.4K, occasionalmente si blocca quando ci si
 riconnette con il modem dopo averlo usato in precedenza.  Egli dice
 che non e' una cosa collegata alla ASUS ma piuttosto un bug nel device
 SCM-LSI con la sua UART16550. Il mouse logitech seriale lavora bene
 sulla seconda porta. Poter abbassare il threshold sulla porta mouse
 aiuterebbe non poco, pare che uno debba avere un setserial modificato
 per poterlo fare. Non ho ancora le informazioni per questo, se ne
 sapete di piu' per favore contattatemi!


 10.9.  [email protected] / GigaByte


 �  Mainboard - GA-486iS dalla Gigabyte con 256Kb L2-Cache, i486-DX2


 �  Bios - AMI, 93/8

 �  SCSI - niente chip scsi NCR on-board, sto usandol' Adaptec 1542C,

 �  Video - ELSA Winner 1000

 �  Linux 0.99pl14 + SCSI-Clustering-Patches / Slackware 1.1.1


 Tutto sembra funzionare bene ma non ha provato ne' la stampa, ne' la
 rete e neanche uno streamer fin'ora. Prima di applicare le patches per
 il clustering aveva qualche problema: la macchina si bloccava talvolta
 dopo il comando "find" ma ormai non succede piu' - forse era qualche
 bug del vecchio kernel.

 La ELSA-Winner-1000 talvolta si blocca con strani arabeschi sul video
 che se ne vanno solo resettando... Il venditore pretende che sia un
 bug nella scheda video ELSA ma il produttore pretende di aver risolto
 il problema. Il bug non si puo' riprodurre sempre e pertanto non pensa
 di farci niente per ora.

 Nonostante tutto la macchina sembra lavorare bene sotto pesanti
 applicazioni di elaborazione testi (emacs, LaTeX, xfig, ghostview).
 L'interazione e' sorprendentemente fluida e veloce, pochissima
 differenza con la 3 o 4 volte piu' cara workstation Sun su cui
 lavora...

 Il CPU->PCI-Burst e' disabilitato perche' il bios non supporta ancora
 bene le schede PCI ?

 E' venuto fuori un problema con il suo nuovo modem (v32 turbo): perde
 caratteri.  Specialmente quando si usa lo SLIP si lamenta molto a
 causa di errori di TX e RX.  Non appena parte X diventa
 inutilizzabile. Egli dice che ha attivato il FIFO e l'RTS/CTS con stty
 ma senza apprezzabili cambiamenti...



 10.10.  Steve Durst ([email protected]) with UMC 8500 mainboard

 Usando Linux 1.2.12 su una motherboard UMC9500-100MHz con il temuto
 controller EIDE CMD PCIO640B egli nota delle ondulazioni dello schermo
 per alcuni secondi dopo l'accensione del computer.  E' come se la sua
 scheda video Diamond Stealth 64 (S3 864) si dovesse riscaldare un po'
 prima di funzionare bene. Comunque sia dice di poter sopravvivere a
 questo difetto.


 10.11.  Tom Drabenstott ([email protected]) con il Comtrade /
 PCI48IX


 PCI48IX Motherboard Rev. 1.0. Documentazione non si sa di chi con
 copyright della "exrc". Il BIOS non dice molto sul PCI.

 Il suo controller ISA E-315E Super IDE UMC (863+865) ha proprio dei
 problemi ( e' una scheda controller multifunzione).  Sembra funzionare
 bene con DOS/OS2 ma non con Linux.


 11.  Suggerimenti generali per leMotherboard PCI + Linux NCR PCI SCSI


 Questo e' stato compilato da Angelo Haritsis ([email protected]) grazie
 ai post di molta gente:

 11.1.  DA NON FARE:


 NON cercatevi delle motherboard che hanno sia slot PCI che VLB. Di
 solito hanno un sacco di problemi. Prendetevi una normalissima
 versione solo PCI (con ovviamente gli slots ISA).  Un sacco di brutte
 voci girano sulle motherboard PCI col chipset OPTi.  Qualcuno
 consiglia: "Evitate le motherboards basate sul chipset OPTi
 (82C596/82C597/82C822) come la TMC PCI54PV".

 ( Io conosco almeno una persona che non ha avuto problemi con la sua
 TMC-PCI54PV. Ha dovuto soltanto mettere la sua scheda aggiuntiva
 NCR53c810 nello slot A che sembra sia l'unico a supportare il
 busmastering).

 Si dice che le motherboards col chipset Intel PCI abbiano dei problemi
 con piu' di una scheda PCI busmastering. Questa non l'ho verificata
 sulla mia e non ho niente da consigliare. Ho anche sentito che il
 chipset Saturn II ha dei problemi ma questo e' quello che uso io ed e'
 perfetto! Consiglio: tentate di negoziare un accordo con il vostro
 negoziante cosi' che se avete dei problemi vi ritiri la merce e vi
 restituisca i soldi (un po' dura la restituzione da noi per motivi
 fiscali, io consiglierei di pagargliela DOPO averla provata per almeno
 una settimana...(N.d.T.))


 11.2.  banchi SIMM


 Prendetevi delle motherboard con solo slot per SIMM a 72pin per la
 velocita': la maggior parte (tutte?) di quelle che accettano quelle da
 30 pin usano un metodo di accesso alla memoria a 32 bit che e'
 sensibilmente piu' lento di quello interlacciato a 64 bit delle
 motherboard della Intel. Tenetevelo a mente.


 11.3.  Motherboard PCI Pentium che hanno ricevuto lodi

 La motherboard Intel P90 con il chipset Premiere II (i.e. Plato).
 Prendetevi il BIOS piu' recente che ha il BIOS NCR scsi 3.04.00.
 Altrimenti il DOS non riuscira' a vedere i vostri dischi scsi se usate
 un controller BIOS-less 53c810. Il BIOS NCR SCSI esiste nell'AMI BIOS
 della Plato dopo la versione 1.00.08 ( o forse 1.00.06 ). Questo BIOS
 e' upgradabile (su flash rom) cosi' dovreste essere in grado di
 ricevere l'upgrade su un dischetto dal vostro rivenditore. La versione
 corrente e' la 1.00.10 in cui sono stati rimossi tutti i problemi di
 gioventu'.

 (I files del Bios dovrebbero essere disponibili a
 ftp.demon.co.uk:/pub/ibmpc/intel, ma non l'ho controllato
 personalmente. (N.d.A))


 11.4.  Linee di irq


 I valori nel registro di configurazione PCI per la linea di interrupt
 e' di solito modificabile manualmente (per compatibilita' con le
 motherboards ISA legacy) nello schermo dell' Extended CMOS Setup su
 una base sia per slot che per dispositivo. Le piu' vecchie
 motherboards PCI vi obbligheranno anche a mettere dei jumper per ogni
 slot PCI in cui scegliere come gli INTA e forse B/C/D del PCI sono
 mappati sulla linea di IRQ dell'8529. Ovviamente, se questi jumpers
 esistono sulla vostra motherboard dovrete metterli concordemente a
 quanto avete specificato nel setup CMOS.  Notate anche che in alcune
 motherboards, come ad esempio nella Viglens, i manuali e le serigrafie
 dicono cose diverse a proposito delle posizioni in cui mettere i
 jumper e pertanto qualche esperimento potrebbe rendersi necessario.


 11.5.  Informazioni sulle differenti famiglie dei chip scsi NCR 8xx :


 Tutti gli NCR 8XX sono dei chip connessi direttamente al bus PCI che
 usano il busmastering e pertanto non comportano differenze di
 prestazioni siano essi sulla motherboard o su una scheda di
 espansione. Tutti i dispositivi rispettano le specifiche PCI 2.0 e
 possono inviare dati alla piena velocita' di 33MHz (133MBytes/sec)


 11.5.1.  53C810

 53C810 = 8 bit Fast SCSI-2 (10 MB/Sec) soltanto Single ended Richiede
 un BIOS integrato sulla motherboard e viene in un 100 pin Quad Flat
 Pack (PQFP) Primo chip a livello mondiale per SCSI PCI, le quantita'
 prodotte lo rendono il meno caro.


 11.5.2.  53C815

 53C815 = 8 bit Fast SCSI-2 (10 MB/Sec) soltanto Single Ended Supporta
 l'interfacciamento con ROM BIOS il che lo rende ideale per le schede
 di espansione aggiuntive. 128 Pin QFP


 11.5.3.  53C825

 53C825 = 8 bit Fast SCSI-2, sia Single ended che Differential 16 bit
 Fast SCSI-2 (20 MB/Sec), Single ended o Differential Ha anche il
 supporto per le Rom esterne che lo rende un buon candidato per le
 schede di espansione. 160Pin QFP. Non ancora supportato da Linux. (
 vedetevi il capitolo seguente per le notizie sull'825). Devono esserci
 connesse periferiche wide e/o differential per poter usare queste
 caratteristiche.


 11.6.  Il futuro dei 53c8xx

 Ci sono quattro nuovi dispositivi il cui annuncio e' programmato verso
 la fine di quest'anno e l'inizio del prossimo. La loro 'impronta'
 (i.e. li potete mettere in uno 'zoccolo' precedente ( sono, credo,
 SMD) senza riprogettarlo (N.d.T.)) e' compatibile con quella dell'810
 e dell'825 con alcune nuove caratteristiche.

 Tutti i chips necessitano di un BIOS nelle applicazioni DOS-Intel.
 L'810 e' l'unico chip che deve essere messo direttamente sulla
 motherboard.  L'ultima versione del BIOS SCSI NCR e' la 3.04.00 e
 supporta dischi piu' grandi di 1GB ( fino a 8GB ) sotto DOS.


 11.7.  Prestazioni del 53c810

 I benchmark DOS della rivista C't hanno mostrato che e'
 significativamente piu' veloce del Buslogic BT-946, un utente ha
 notato un incremento di prestazioni di circa il 10%-15% rispetto a un
 Adaptec 2940 e, con un disco veloce, puo' essere anche 2 volte e mezzo
 piu' performante di un Adaptec 1540.





 12.  Notizie sul supporto dell' NCR53c825

 Funziona. fine del discorso.


 12.1.  Frederic POTTER ([email protected]) sul problema
 della striscia su Pentium+NCR

 Su alcune motherboard Intel Plato il bios NCR non riesce a riconoscere
 la scheda perche' gli servirebbe vederla come un controller SCSI
 secondario ma sulla maggior parte delle schede SCSI il jumper per
 scegliere tra primario e secondario e' stato saldato su primario (
 probabilmente per risparmiare due lire).

 Soluzione:

 Vicino al chip NCR ci sono tre via (tipo buchi) con una striscia messa cosi'


                 O--O  O

 questo vuol dire che primario e' il settaggio predefinito. Per la <sf/mainboard/
 Intel Plato invece dovrebbe essere messo cosi'

                 O  O--O

 La soluzione migliore e' liberarsi della striscia e metterci invece un jumper a
 due posizioni.




 12.2.  PCIprobe negli ultimi kernel Linux Kernels di Frederic Potter


 Frederic Potter ha aggiunto una PCI-Probe nei kernel piu' recenti. Se
 provate a fare un "cat /proc/pci" dovreste vedere listate tutte le
 vostre schede. Se ne avete che non vengono riconosciute per piacere
 contattatelo via mail a which are not properly recogniced, please
 contact him via mail as "[email protected]".

 Date un'occhiata ad arch/i386/kernel/bios32.c e ad include/linux/pci.h
 nel sorgente del kernel per maggiori informazioni sul PCI-Probe.


 12.3.  Altre componenti PCI


 Quali altre componenti PCI sono supportate ? A parte varie schede
 grafiche, mi piacerebbe avere notizie di altre schede, come Ethernet,
 FrameGrabbers o le schede della TSET che la Cyclades ha in Beta
 Testing al momento.


 12.3.1.  Cyclades: una scheda a 16 porte PCI basata su un microproces�
 sore RISC.


 Il prodotto si chiama Cyclom-Ye e ha le seguenti caratteristiche:


 �  Scheda PCI basata sul chipset PLX. Questa scheda supporta da 8 a 32
    porte seriali, usando dei box esterni da 8 o 16 porte.

 �  Cavo SCSI II.

 �  Box esterni da 8 o 16 porte con dei connettori RJ45 o DB25 ( a
    scelta vostra). Potete iniziare con otto porte ed espanderla in
    seguito a 32 con la sola aggiunta di uno o piu' box. Ognuno di essi
    contiene due o quattro controllers seriali RISC CD-1400 (ognuno di
    essi controlla 4 porte).

 �  Fino a quattro schede possono essere installate in un PC cosi' da
    supportare un massimo di 128 porte contemporaneamente.

 Il prodotto e' attualmente nella fase di Beta Test (26 Luglio 1995) e
 dovrebbe essere disponibile nei dintorni di ottobre. Se siete
 interessati mandate loro un mail a [email protected].


 13.  Conclusione


 Se avete un po' di soldi da mettere nella vostra macchina dovreste
 essere a posto con una ASUS-SP4 e un Pentium a 90MHz, che e' quello
 che sto usando io al momento. Se potete permetterveli, 32MB di RAM
 sono decisamente meglio di 16.

 Tra pochissimo tempo lo standard sara' dato dal chipset Triton con il
 supporto per delle speciali SIMM che si chiamano EDORAM ed SRAM.
 Entrambe saranno piu' care della RAM PS2; al momento in cui scrivo
 questo (28 Giugno 1995) le SRAM non sono ancora disponibili. Anche se
 le EDORAM  sono piu' care, non lo sono sicuramente per i costi di
 produzione che si dice siano gli stessi. ( e i costi di progetto dove
 li mettiamo ? doranno pure ammortizzarli... (N.d.T.))

 Dato che tutto questo e' abbastanza nuovo ed evolvera' moltissimo, per
 una macchina ad alte prestazioni io sceglierei l' ASUS-TP4XE che
 supporta le EDORAM/SRAM ma se non vi serve proprio adesso io
 aspetterei...  ((N.d.T.) Per quello che ne so io conviene una
 motherboard che supporti le EDORAM-SRAM pero' se vi comprate una
 motherboard di questo tipo e investite soldi nelle SIMM normali non ne
 vale manco la pena ERGO io aspetterei per lo meno dicembre gennaio
 affinche' queste nuove RAM si conoscano meglio, oggi come oggi (
 27-07-95 ) le EDORAM sono a 45ns e ci si aspetta che le SRAM vadano
 ancora meglio quindi la differenza tra i 256 e i 512 kappa di cache
 non si dovrebbe sentire in modo cosi' determinante ( anche se una
 buona cache e' pur sempre sui 15ns ).(N.d.T.))

 Per le schede video direi che la migliore scheda economica adatta a un
 buon monitor multisync da 15 pollici tipo il Samsung SyncMaster 15Gli
 ( io ho il SONY CPD 15sf che , per me, e' il migliore 15 pollici sul
 mercato...(N.d.T.)) e' la SPEA V7 Mirage P64 con Chipset Trio64 e 2MB
 DRAM.  Per monitor piu' sofisticati come lo Iiyama-IDEK 8617A-T credo
 che la PCI Mach64 ATI-GUP-Turbo (non la piu' economica GUP-Turbo-
 Windows) sia un'ottima scelta, con 4MB VRAM potete avere il truecolor
 anche nelle risoluzioni piu' alte.  E' ben supportata in
 XFree86(tm)-3.1.1 e ci sono dei server X commerciali tra i quali io
 raccomanderei Accelerated/X della Roell, che supporta la Mach64 molto
 bene e con grandi prestazioni velocistiche.



 Per lo SCSI io prenderei la DPT al posto della (estremamente piu'
 economica e velocissima) NCR53c810 se prevedete di usare molto degli
 streamer SCSI.  Come gia' detto prima, il driver per la NCR di Linux
 non supporta il disconnect/reconnect bloccando quindi il bus SCSI su
 operazioni del tipo "mt rewind", "mt fsf" etc. Comporta una penalita'
 nelle prestazioni sulle operazioni di tar.  Date comunque un'occhiata
 ai nuovi drivers prima di prendere una decisione, puo' darsi che
 risolvano il problema...

 Per costruire un server la DPT sarebbe ugualmente il controller di
 riferimento a causa di tutta la sua bella cache hardware ( che ha un
 discreto algoritmo di sort cosi' che la cache non e' una cosa campata
 per aria anche con un ambiente di tipo Linux dove e' il sistema
 operativo a gestirla di solito) e del supporto RAID fino al livello 5.

 Se non volete spendere cosi' tanti soldi in materiale per computer
 (i.e. avete anche una vita oltre al computer) potreste prendere una
 una ASUS-SP3-SiS con un AMD-DX2/66 o DX4/100. La SPEA V7 Mirage P64
 PCI con 2M DRAM dovrebbe essere una buona scelta dato che usa il
 chipset Trio64 S3 che e' ben supportato da XFree86(tm)-3.1.1, e' anche
 molto economica e veloce.

 Un'altra bella scheda video dall'XFree86(tm)-3.1 e' la veloce e poco
 costosa et4000/w32 PCI.


 14.  Ringraziamenti.

 Vorrei ringraziare le seguenti persone per aver supportato il seguente
 documento:

 �  David Lesher ([email protected]) per estensivi aiuti con l'inglese.

 �  Nathanael MAKAREVITCH ([email protected]) per la traduzione in
    francese

 �  Jun Morimoto ([email protected]) per la traduzione in
    giapponese

 �  Marco Melgazzi ([email protected]) per la traduzione in italiano

 �  Donald Becker ([email protected]) per informazioni
    sull'ethernet

 �  Drew Eckhardt ([email protected]) per informazioni
    sullo SCSI

 �  Zhahai Stewart ([email protected]) per l'aiuto nella sezione
    introduttiva

 e molte piu' persone che hanno dato informazioni per la maggior parte
 via email e articoli usenet, alcuni di essi verranno nominati qui:























 [email protected],
 [email protected],
 [email protected] (Working at the PCI-NCR53c810-Driver),
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected] (iX-Magazine),
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 [email protected],
 Ulrich Teichert, [email protected],
 [email protected],
 [email protected]
 [email protected],
 [email protected],
 Gert Doering ([email protected]),
 James D. Levine ([email protected]),
 Georg von Below ([email protected]),
 Jerome Meyers ([email protected]),
 Angelo Haritsis ([email protected]),
 [email protected] and his friend [email protected].




 15.  copyright/informazioni legali

 (c)opyright 1993,94 di Michael Will - la GPL (Gnu Public License) vale
 per questo documento. Date un'occhiata all'ultima sezione per essa.

 Se vendete questo HOWTO su un CD o su un libro mi piacerebbe veramente
 tanto poterne ricevere una copia per riferimento.


 ([email protected])

 Conttatemi o via eMail or chiamate +49-7071-969063.

 I marchi registrati sono proprieta' dei rispettivi propietari. Non ci
 sono garanzie sulle informazioni contenute in questo documento.

 Per gli utenti tedeschi offro macchine PCI
 testate/preinstallate/preconfigurate con Linux (con supporto tecnico).
 Chiamatemi allo 07071-969063.

  se invece volete contattare me, il vostro beneamato traduttore in
 Italiano, potete scrivere a [email protected]: quanto ha detto l'Autore
 a proposito delle copie di riferimento vale anche per me comunque :^)


 16.  Elenco dei termini inglesi non tradotti nel testo

 Se ci sono altri termini che non capite mandatemi un mail e li
 mettero' nella prossima versione:


 �  bus mastering e' il modo in cui una scheda puo' prendere il
    controllo del bus per aumentare le proprie prestazioni.

 �  motherboard e' la piastra madre, ovvero dove risiede la CPU e dove
    ci sono gli slot PCI

 �  on-board e' qualcosa integrato direttamente sulla piastra madre

 �  probe e' un pezzo di codice che cerca di capire il tipo di
    periferica attaccata, sia essa un CD-ROM, un disco rigido, una
    scheda PCI etc. etc.

 �  patch e' una correzione a un programma che, in ambito Linux, di
    solito e' distribuita come un file a se' stante da applicare con un
    comando del tipo  patch - p0 < patch_file. Conviene comunque
    attenersi alle istruzioni di chi ha creato il programma in
    questione :-)


 17.  La GPL - Gnu Public License


 Se qualcuno con esperienze legali ha voglia di tradursela mi contatti
 pure, per ora lascero' la versione originale inglese. In soldoni il
 software distribuito sotto questa licenza DEVE contenere il codice
 sorgente: il copyright resta a chi lo scrive ma, se viene dato
 credito, esso puo' essere usato come base per altri progetti SOTTO LA
 STESSA LICENZA. Da quello che ho capito, comunque, e' anche possibile
 uno sfruttamento commerciale da parte di terzi del prodotto: se
 qualche frequentatore del newsgroup GPL mi puo' dare un aiuto gli-le
 sarei grato!



































                     GNU GENERAL PUBLIC LICENSE
                        Version 2, June 1991

  Copyright (C) 1989, 1991 Free Software Foundation, Inc.
                           675 Mass Ave, Cambridge, MA 02139, USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.

                             Preamble

   The licenses for most software are designed to take away your
 freedom to share and change it.  By contrast, the GNU General Public
 License is intended to guarantee your freedom to share and change free
 software--to make sure the software is free for all its users.  This
 General Public License applies to most of the Free Software
 Foundation's software and to any other program whose authors commit to
 using it.  (Some other Free Software Foundation software is covered by
 the GNU Library General Public License instead.)  You can apply it to
 your programs, too.

   When we speak of free software, we are referring to freedom, not
 price.  Our General Public Licenses are designed to make sure that you
 have the freedom to distribute copies of free software (and charge for
 this service if you wish), that you receive source code or can get it
 if you want it, that you can change the software or use pieces of it
 in new free programs; and that you know you can do these things.

   To protect your rights, we need to make restrictions that forbid
 anyone to deny you these rights or to ask you to surrender the rights.
 These restrictions translate to certain responsibilities for you if you
 distribute copies of the software, or if you modify it.

   For example, if you distribute copies of such a program, whether
 gratis or for a fee, you must give the recipients all the rights that
 you have.  You must make sure that they, too, receive or can get the
 source code.  And you must show them these terms so they know their
 rights.

   We protect your rights with two steps: (1) copyright the software, and
 (2) offer you this license which gives you legal permission to copy,
 distribute and/or modify the software.

   Also, for each author's protection and ours, we want to make certain
 that everyone understands that there is no warranty for this free
 software.  If the software is modified by someone else and passed on, we
 want its recipients to know that what they have is not the original, so
 that any problems introduced by others will not reflect on the original
 authors' reputations.

   Finally, any free program is threatened constantly by software
 patents.  We wish to avoid the danger that redistributors of a free
 program will individually obtain patent licenses, in effect making the
 program proprietary.  To prevent this, we have made it clear that any
 patent must be licensed for everyone's free use or not licensed at all.

   The precise terms and conditions for copying, distribution and
 modification follow.

                     GNU GENERAL PUBLIC LICENSE
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

   0. This License applies to any program or other work which contains
 a notice placed by the copyright holder saying it may be distributed
 under the terms of this General Public License.  The "Program", below,
 refers to any such program or work, and a "work based on the Program"
 means either the Program or any derivative work under copyright law:
 that is to say, a work containing the Program or a portion of it,
 either verbatim or with modifications and/or translated into another
 language.  (Hereinafter, translation is included without limitation in
 the term "modification".)  Each licensee is addressed as "you".

 Activities other than copying, distribution and modification are not
 covered by this License; they are outside its scope.  The act of
 running the Program is not restricted, and the output from the Program
 is covered only if its contents constitute a work based on the
 Program (independent of having been made by running the Program).
 Whether that is true depends on what the Program does.

   1. You may copy and distribute verbatim copies of the Program's
 source code as you receive it, in any medium, provided that you
 conspicuously and appropriately publish on each copy an appropriate
 copyright notice and disclaimer of warranty; keep intact all the
 notices that refer to this License and to the absence of any warranty;
 and give any other recipients of the Program a copy of this License
 along with the Program.

 You may charge a fee for the physical act of transferring a copy, and
 you may at your option offer warranty protection in exchange for a fee.

   2. You may modify your copy or copies of the Program or any portion
 of it, thus forming a work based on the Program, and copy and
 distribute such modifications or work under the terms of Section 1
 above, provided that you also meet all of these conditions:

     a) You must cause the modified files to carry prominent notices
     stating that you changed the files and the date of any change.

     b) You must cause any work that you distribute or publish, that in
     whole or in part contains or is derived from the Program or any
     part thereof, to be licensed as a whole at no charge to all third
     parties under the terms of this License.

     c) If the modified program normally reads commands interactively
     when run, you must cause it, when started running for such
     interactive use in the most ordinary way, to print or display an
     announcement including an appropriate copyright notice and a
     notice that there is no warranty (or else, saying that you provide
     a warranty) and that users may redistribute the program under
     these conditions, and telling the user how to view a copy of this
     License.  (Exception: if the Program itself is interactive but
     does not normally print such an announcement, your work based on
     the Program is not required to print an announcement.)

 These requirements apply to the modified work as a whole.  If
 identifiable sections of that work are not derived from the Program,
 and can be reasonably considered independent and separate works in
 themselves, then this License, and its terms, do not apply to those
 sections when you distribute them as separate works.  But when you
 distribute the same sections as part of a whole which is a work based
 on the Program, the distribution of the whole must be on the terms of
 this License, whose permissions for other licensees extend to the
 entire whole, and thus to each and every part regardless of who wrote it.

 Thus, it is not the intent of this section to claim rights or contest
 your rights to work written entirely by you; rather, the intent is to
 exercise the right to control the distribution of derivative or
 collective works based on the Program.

 In addition, mere aggregation of another work not based on the Program
 with the Program (or with a work based on the Program) on a volume of
 a storage or distribution medium does not bring the other work under
 the scope of this License.
   3. You may copy and distribute the Program (or a work based on it,
 under Section 2) in object code or executable form under the terms of
 Sections 1 and 2 above provided that you also do one of the following:

     a) Accompany it with the complete corresponding machine-readable
     source code, which must be distributed under the terms of Sections
     1 and 2 above on a medium customarily used for software interchange; or,

     b) Accompany it with a written offer, valid for at least three
     years, to give any third party, for a charge no more than your
     cost of physically performing source distribution, a complete
     machine-readable copy of the corresponding source code, to be
     distributed under the terms of Sections 1 and 2 above on a medium
     customarily used for software interchange; or,

     c) Accompany it with the information you received as to the offer
     to distribute corresponding source code.  (This alternative is
     allowed only for noncommercial distribution and only if you
     received the program in object code or executable form with such
     an offer, in accord with Subsection b above.)

 The source code for a work means the preferred form of the work for
 making modifications to it.  For an executable work, complete source
 code means all the source code for all modules it contains, plus any
 associated interface definition files, plus the scripts used to
 control compilation and installation of the executable.  However, as a
 special exception, the source code distributed need not include
 anything that is normally distributed (in either source or binary
 form) with the major components (compiler, kernel, and so on) of the
 operating system on which the executable runs, unless that component
 itself accompanies the executable.

 If distribution of executable or object code is made by offering
 access to copy from a designated place, then offering equivalent
 access to copy the source code from the same place counts as
 distribution of the source code, even though third parties are not
 compelled to copy the source along with the object code.

   4. You may not copy, modify, sublicense, or distribute the Program
 except as expressly provided under this License.  Any attempt
 otherwise to copy, modify, sublicense or distribute the Program is
 void, and will automatically terminate your rights under this License.
 However, parties who have received copies, or rights, from you under
 this License will not have their licenses terminated so long as such
 parties remain in full compliance.

   5. You are not required to accept this License, since you have not
 signed it.  However, nothing else grants you permission to modify or
 distribute the Program or its derivative works.  These actions are
 prohibited by law if you do not accept this License.  Therefore, by
 modifying or distributing the Program (or any work based on the
 Program), you indicate your acceptance of this License to do so, and
 all its terms and conditions for copying, distributing or modifying
 the Program or works based on it.

   6. Each time you redistribute the Program (or any work based on the
 Program), the recipient automatically receives a license from the
 original licensor to copy, distribute or modify the Program subject to
 these terms and conditions.  You may not impose any further
 restrictions on the recipients' exercise of the rights granted herein.
 You are not responsible for enforcing compliance by third parties to
 this License.

   7. If, as a consequence of a court judgment or allegation of patent
 infringement or for any other reason (not limited to patent issues),
 conditions are imposed on you (whether by court order, agreement or
 otherwise) that contradict the conditions of this License, they do not
 excuse you from the conditions of this License.  If you cannot
 distribute so as to satisfy simultaneously your obligations under this
 License and any other pertinent obligations, then as a consequence you
 may not distribute the Program at all.  For example, if a patent
 license would not permit royalty-free redistribution of the Program by
 all those who receive copies directly or indirectly through you, then
 the only way you could satisfy both it and this License would be to
 refrain entirely from distribution of the Program.

 If any portion of this section is held invalid or unenforceable under
 any particular circumstance, the balance of the section is intended to
 apply and the section as a whole is intended to apply in other
 circumstances.

 It is not the purpose of this section to induce you to infringe any
 patents or other property right claims or to contest validity of any
 such claims; this section has the sole purpose of protecting the
 integrity of the free software distribution system, which is
 implemented by public license practices.  Many people have made
 generous contributions to the wide range of software distributed
 through that system in reliance on consistent application of that
 system; it is up to the author/donor to decide if he or she is willing
 to distribute software through any other system and a licensee cannot
 impose that choice.

 This section is intended to make thoroughly clear what is believed to
 be a consequence of the rest of this License.

   8. If the distribution and/or use of the Program is restricted in
 certain countries either by patents or by copyrighted interfaces, the
 original copyright holder who places the Program under this License
 may add an explicit geographical distribution limitation excluding
 those countries, so that distribution is permitted only in or among
 countries not thus excluded.  In such case, this License incorporates
 the limitation as if written in the body of this License.

   9. The Free Software Foundation may publish revised and/or new versions
 of the General Public License from time to time.  Such new versions will
 be similar in spirit to the present version, but may differ in detail to
 address new problems or concerns.

 Each version is given a distinguishing version number.  If the Program
 specifies a version number of this License which applies to it and "any
 later version", you have the option of following the terms and conditions
 either of that version or of any later version published by the Free
 Software Foundation.  If the Program does not specify a version number of
 this License, you may choose any version ever published by the Free Software
 Foundation.

   10. If you wish to incorporate parts of the Program into other free
 programs whose distribution conditions are different, write to the author
 to ask for permission.  For software which is copyrighted by the Free
 Software Foundation, write to the Free Software Foundation; we sometimes
 make exceptions for this.  Our decision will be guided by the two goals
 of preserving the free status of all derivatives of our free software and
 of promoting the sharing and reuse of software generally.

                             NO WARRANTY

   11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
 PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
 REPAIR OR CORRECTION.

   12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 POSSIBILITY OF SUCH DAMAGES.

                      END OF TERMS AND CONDITIONS

         Appendix: How to Apply These Terms to Your New Programs

   If you develop a new program, and you want it to be of the greatest
 possible use to the public, the best way to achieve this is to make it
 free software which everyone can redistribute and change under these terms.

   To do so, attach the following notices to the program.  It is safest
 to attach them to the start of each source file to most effectively
 convey the exclusion of warranty; and each file should have at least
 the "copyright" line and a pointer to where the full notice is found.

     <one line to give the program's name and a brief idea of what it does.>
     Copyright (C) 19yy  (name of author)

     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation; either version 2 of the License, or
     (at your option) any later version.

     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.

     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

 Also add information on how to contact you by electronic and paper mail.

 If the program is interactive, make it output a short notice like this
 when it starts in an interactive mode:

     Gnomovision version 69, Copyright (C) 19yy name of author
     Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
     This is free software, and you are welcome to redistribute it
     under certain conditions; type `show c' for details.

 The hypothetical commands `show w' and `show c' should show the appropriate
 parts of the General Public License.  Of course, the commands you use may
 be called something other than `show w' and `show c'; they could even be
 mouse-clicks or menu items--whatever suits your program.

 You should also get your employer (if you work as a programmer) or your
 school, if any, to sign a "copyright disclaimer" for the program, if
 necessary.  Here is a sample; alter the names:

   Yoyodyne, Inc., hereby disclaims all copyright interest in the program
   `Gnomovision' (which makes passes at compilers) written by James Hacker.

   (signature of Ty Coon), 1 April 1989
   Ty Coon, President of Vice

 This General Public License does not permit incorporating your program into
 proprietary programs.  If your program is a subroutine library, you may
 consider it more useful to permit linking proprietary applications with the
 library.  If this is what you want to do, use the GNU Library General
 Public License instead of this License.