Sound Blaster AWE 32/64 HOWTO
 di Marcus Brinkmann <[email protected]>
 v1.2, 11 gennaio 1998, tradotto il 2 agosto 1998

 Questo documento descrive come installare e configurare una Sound�
 blaster 32 (SB AWE 32, SB AWE 64) della Creative Labs inc. sotto Linux
 utilizzando l'Awe Sound Driver Extension scritto da Takashi Iwai.
 Viene trattato inoltre l'utilizzo di tools e player particolari per la
 serie AWE della SB. Il sistema operativo di riferimento utilizzato per
 questo HOWTO � Debian GNU/Linux System, ma dovrebbe funzionare su ogni
 altra distribuzione Linux. Traduzione di Samuele Tonon<Samuele Tonon>

 1.  Introduzione



 Questo � il Sound Blaster AWE HOWTO. D� dettagliate informazioni per
 utilizzare al meglio la vostra SB 32 (o superiore), compresa la
 sintesi Wave Table. Questo documento copre tutte le SB da SB32 in su.

 La serie Soundblaster � molto conosciuta negli ambienti DOS e WINDOWS,
 e molti utenti Linux vogliono poterla utilizzare al meglio sotto
 Linux.  Sfortunatamente, la Creative Labs non supporta driver per
 Linux e quindi non risulta facile installarla e configurarla.  Questo
 documento prova a descrivere come utilizzare al meglio la vostra SB in
 ambiente Linux.


 1.1.  Ringraziamenti


 Questo documento � la traduzione del Sound Blaster AWE 32/64 HOWTO di
 Marcus.Brinkmann <mailto:[email protected]>

 Molto lavoro di questo HOWTO � stato fatto da  Hannu Savolainen
 <http://www.4front-tech.com/usslite> che ha sviluppato il sound driver
 del kernel di Linux.

 Vorrei ringraziare Nicola Bernardelli <mailto:[email protected]>
 per aver testato questo HOWTO sulla AWE64; senza di lui molti errori
 non sarebbero emersi.


 1.2.  Nota per la versione italiana


 La versione italiana � stata liberamente tradotta il 2 Agosto 1998.
 Contiene alcune correzioni rispetto alla versione Inglese (approvate
 dall'autore) e alcune aggiunte per gli utenti Debian 2.0 (hamm) e
 Redhat 5.0.

 Desidero ringraziare l'autore per la gentilezza e l'aiuto offerto e il
 Pluto User Group per lo sforzo che sta facendo nel portare Linux anche
 a chi  l'Inglese non lo "mastica"  bene.

 Desidero anche ringraziare Giovanni Bortolozzo
 <mailto:[email protected].> per l'aiuto e i consigli per la versione
 SGML di questo documento.


 1.3.  Politica di distribuzione



 Includo qui di seguito la versione inglese della politica di
 distribuzione degli HOWTO seguita da una traduzione in italiano.
 Copyright by Marcus Brinkmann.

 This HOWTO is free documentation; 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 document 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 can obtain a copy of the GNU General Public License by writing to
 the Free Software Foundation <http://www.fsf.org>, Inc., 675 Mass Ave,
 Cambridge, MA 02139, USA.


 Questo HOWTO � una documentazione gratuita; � possibile ridistribuirla
 e/o modificarla nei termini del GNU General Public License come
 pubblicato dalla Free Software Foundation; tale discorso vale per
 questa e future versioni.  Riferimenti al GNU General Public License
 per maggiori dettagli.

 � possibile ottenere una copia della GNU General Public License
 scrivendo a Free Software Foundation <http://www.fsf.org>, Inc., 675
 Mass Ave, Cambridge, MA 02139, USA.



 2.  Prima di iniziare




 2.1.  Introduzione


 Questo documento spiega l'installazione di una SB 32AWE/64AWE sotto
 Linux come piattaforma si � utilizzato un Intel 586 con Debian
 GNU/Linux <http://www.debian.org> tuttavia dovrebbe funzionare su
 tutte le altre distribuzioni supportate dal Linux Sound driver (le
 differenze saranno menzionate dove necessario).

 Questo documento presuppone la conoscenza del Sound-HOWTO e viene
 considerato alla stregua di un'appendice di quest'ultimo. � possibile
 trovare versioni tradotte in italiano degli HOWTO e dei mini HOWTO nel
 database del pluto user group
 <http://www.pluto.linux.it/ildp/HOWTO/index.html>.


 2.2.  Note generali sulle schede SB AWE


 La scheda SB AWE32/64 fornisce supporto audio, sintetizzazione
 OPL-2/OPL-3, una porta MPU-401 MIDI e 32/64 voci EMU 8000 Wave Table
 Synthesis (per una delucidazione su questi e altri termini consultare
 il Linux Sound HOWTO).  Uno scopo di questo documento � aiutare
 l'utente a fare funzionare tutto questo "bagaglio" di roba :-).

 Il problema per un utente Linux utilizzando la SB 64 AWE � che le 32
 voci Addizionali - rispetto alla SB 32 AWE - sono generate via
 software e mandate in output via audio normale (cio� alla stregua di
 un WAVE).  Poich� la Creative Labs non vede mercato nel realizzare
 driver per Linux, le uniche guide per la Wave Synthesis sono
 disponibili solo per win 3.1 e 95.

 Questo vuol dire, dal punto di vista dell'utente Linux, che la SB32 e
 la SB64 sono formalmente identiche.  D'ora in poi si far� riferimento
 alla SB AWE in generale e verranno menzionate le differenze dove (e
 se) sussisteranno.


 2.3.  Note sulle schede PnP (Plug and Play)


 Le moderne schede per piattaforma Intel sono ISA PnP. Questo
 significa, che la scheda deve essere configurata dal sistema
 operativo, e che questo deve essere fatto nella fase di boot, nelle
 routine d'inizializzazione.  In generale ci sono tre modi per fare
 ci�:


 1. Si monta un BIOS PnP, il che vuol dire che pu� configurarle
    direttamente lui. Se pensate di poter utilizzare tutte le
    prestazioni della SB AWE solo perch� avete un PnP BIOS siete fuori
    strada. Anche se Il BIOS "dichiara" di supportare le schede PnP
    altro non fa che inizializzare le porte e gli indirizzi utilizzati
    dalla vostra scheda.  Sarete al massimo in grado di ascoltare file
    di tipo Wave ma non sarete in grado di ascoltare MIDI. Per questa
    ragione un BIOS PnP non � una garanzia.

 2.  Avete un sistema operativo che supporta il PnP. L'attuale kernel
    stabile di Linux (2.0.x) non lo supporta, quindi bisogner�
    attendere successive release che lo supportino.

 3. Avete un'utility che inizializza le schede PnP e che viene caricata
    al boot: questo � il metodo che utilizzeremo in questo HOWTO.

 Il software pi� utilizzato per inizializzare schede PnP in Linux sono
 gli Isapnptools. Sono un facile strumento per inizializzare tutte le
 vostre Schede PnP, non solo la vostra scheda sonora.


 2.4.  Note generali sul caricamento dei moduli del kernel


 Alcuni driver di periferica possono essere caricati nel kernel come
 moduli.  � possibile trovare maggiori informazioni sui moduli nel
 Kernel HOWTO e nel Module HOWTO (� consigliabile leggerli per avere
 maggior chiarezza di ci� che dovrete fare).

 Se avete una scheda sonora PnP, dovete installare il "sound support"
 come modulo.  Cio� non potete compilare il supporto sonoro all'interno
 del kernel stesso ma dovete includerlo come modulo; il motivo �
 semplice: il kernel viene caricato prima che che la scheda possa
 essere configurata mentre essa deve essere configurata con i driver
 dopo che il kernel sia stato caricato e che quindi isapnp venga
 eseguito.

 Il sound kernel module pu� essere caricato manualmente con il comando
 insmod sound oppure modprobe -a sound o nello script di boot del
 vostro Linux (in Debian � sufficiente aggiungere la linea sound in
 /etc/modules). Un altro modo � di lanciare kerneld un daemon che
 installa e rimuove i moduli (consultare i relativi HOWTO e le man
 pages per maggiori informazioni).

 PS: kerneld non � la migliore soluzione per il modulo AWE driver,
 perch� il driver impiega molto tempo a caricarsi (in particolar modo
 se avete la Wave Table synthesis che carica molti "font" sonori).
 Kerneld rimuove automaticamente i moduli non usati, dopo un minuto di
 default ecco perch� � forse meglio inserire il modulo sonoro
 manualmente o nella procedura di boot.  Inserire manualmente il modulo
 oppure metterlo nella procedura di boot previene kerneld dal
 rimuoverlo quando questo � ozioso (idle).  Comunque potete utilizzare
 tutti e due i metodi poich� non creano conflitti l'uno con l'altro.

 Questo � particolarmente utile se le impostazioni del vostro mixer
 vengono disturbate dal rimuovere-installare il sound module. Una
 soluzione al problema verr� data nella sezione ``MIXER'' (l� verr�
 descritto come far partire in automatico il mixer quando il sound
 module viene caricato).  Insomma � meglio utilizzare delle procedure
 anzich� lasciar fare tutto a kerneld.


 2.5.  Note generali sui driver sonori del kernel


 � possibile installare il supporto sonoro all'interno del kernel
 stesso oppure come modulo.  Se avete una scheda PnP dovete installarlo
 come modulo (come gi� detto) perch� isapnp deve configurare la scheda
 prima che il driver venga caricato.

 Come si pu� immaginare bisogner� ricompilare il kernel.  Il kernel
 corrente viene rilasciato senza supporto per il chip AWE ma con
 supporto per la sb16 normale.  In questo modo non � possibile
 ascoltare midi con la Wave Table Syntesys.

 Se volete utilizzare la Wave Table Syntesys, potete comprare un driver
 commerciale da 4Front Technologies <http://www.4front-tech.com> oppure
 aggiungere al vostro kernel l'AWE 32 Sound Driver Extension by Takashi
 Iwai.In questo documento si assume l'utilizzo di quest'ultimo.  L'AWE
 32 Sound Driver Extension � pubblicato con licenza GNU copyright e
 venduto con alcune applicazioni per l'utilizzo dell'AWE driver.  L'AWE
 driver (awedrv) � gi� disponibile nei nuovi sorgenti del kernel
 (2.1.x).



 3.  Come installare il supporto SB AWE per il suono



 3.1.  Requisiti


 Questi sono i requisiti per supportare la SB AWE in Linux


 �  Linux deve essere gi� operativo e funzionante

 �  Dovete avere una SB 32 o compatibile (esempio SB32 SB32PnP
    SBAWE64....)

 �  Dovete avere installati i sorgenti del kernel (per poter
    ricompilare il kernel)   inclusi i driver sonori OSS/Free (guardare
    /usr/src/linux/drivers/sound/Readme)

 �  Dovete avere le estensioni "AWE 32 sound driver" (disponibili
    attualmente sia per redhat 5.0 che per debian 2.0 e, presumo, anche
    per le altre distribuzioni).

 Se avete una scheda PnP avete inoltre bisogno:


 �  pacchetto isapnptool.

 Se avete un Linux Debian ci� vuol dire che dovete aver installato i
 pacchetti:
 �  Kernel-source

 �  Awe-driver

 �  Isapnp


 3.2.  Iniziamo


 Presuppongo abbiate gi� installato propriamente la SB nella scheda
 madre e, forse, che l'abbiate gi� testata sotto Windows (con esito
 positivo).

 Il prossimo passo � quello d'inizializzare la scheda nella procedura
 di boot (ATTENZIONE QUESTO SE E SOLO SE LA SB � DI TIPO PnP!!!).
 Seguite la procedura d'installazione e compilazione del pacchetto
 isapnp e una volta installato, digitate, con i diritti di root:



      pnpdump >/etc/isapnp.conf





 Questo comando genera un file di configurazione per le schede PnP, da
 editare correttamente seguendo le man page (man isapnp.conf per
 maggiori informazioni).  Per la SB sono possibili varie
 configurazioni: cercate quella giusta (confrontate le impostazioni con
 quelle che avete sotto Windows oppure date un'occhiata all'isapnp.conf
 alla fine di questo HOWTO).


 ATTENZIONE!!!  Isapnp spesso fallisce nel trovare tutte e TRE le porte
 di I/O dei SB Wave Table Device. Controllate bene e se non sono state
 viste correttamente aggiungetele voi manualmente (magari dando
 un'occhiata all'isapnp.conf qui alla fine dell'HOWTO).

 ATTENZIONE!!! (ancora!) come spiegato nel isapnp-faq isapnp spesso
 sbaglia il numero delle periferiche logiche. Se vi appare un messaggio
 del tipo:



      Error occurred executing request 'LD 2' on or around line...




 allora provate aggiungendo (VERIFYLD N) all'inizio del isapnp.conf. �
 consigliabile usare la versione 1.10 di isapnp se non potete utiliz�
 zare questa versione dovete editare gran parte del file manualmente
 (auguri! :-) ) in questo caso fate riferimento all'isapnp-faq.

 ATTENZIONE!!! (ultima) state attenti che nell'ultima riga
 dell'isapnp.conf compaia la scritta (WAITFORKEY) ogni tanto viene
 omessa per motivi mistici da vecchie versioni di pnpdump.

 Come gi� detto un ``estratto'' dell'isapnp.conf (solo la parte
 riguardante la SB) � stato messo alla fine di questo HOWTO.

 Ora, se avete montato Debian non sono necessari altri aggiustamenti:
 isapnp sar� caricato nella procedura di boot semplicemente aggiungendo
 a /etc/init.d/boot queste poche linee:
 ______________________________________________________________________
 # Configura la scheda isa plug and play prima del caricamento dei
 # moduli.
 #
 if [ -x /etc/init.d/isapnp ]
 then
   /etc/init.d/isapnp start
 fi
 ______________________________________________________________________


 dove /etc/init.d/isapnp �


 ______________________________________________________________________
 #! /bin/sh
 # /etc/init.d/isapnp: configure Plug and Play boards
 test -x /sbin/isapnp || exit 0
 /sbin/isapnp /etc/isapnp.conf
 exit 0
 ______________________________________________________________________



 NOTE: agli utenti Debian hamm e RedHat 5.0 o superiori dovrebbe
 bastare creare il file /etc/isapnp.conf.

 Se avete un'altra distribuzione Linux, beh siete soli, non so cosa
 bisogna fare (se qualcuno lo sa, me lo comunichi).  L'importante �
 essere sicuri che isapnp venga caricato in fase di avvio e che compaia
 (sempre in fase di avvio) una scritta del tipo :



      Board 1 has Identity 74 00 00 e3 10 48 00 8c 0e:  CTL0048 Serial No 58128





 3.3.  Compilare il kernel


 Prima di ricompilare il kernel dovete installare l'AWE driver
 Extension.  Normalmente se � stato gi� "deppacchettizzato" lo trovate
 in /usr/src/awedrv e da l� seguite le istruzioni nel file INSTALL.awe.
 Oppure direttamente digitate



      ./install.sh




 Per vedere se � gi� installato nel kernel guardate in
 /usr/src/linux/drivers/sound/lowlevel se ci sono i file awe_*.

 Se volete fare un upgrade del driver AWE, vi conviene prima cancellare
 il vecchio drivers/sound/lowlevel/awe_wav.c, e quindi eseguire lo
 script d'installazione (questo perch� l'installazione va a vedere se
 esiste quel file e se c'� non fa niente).

 Ora finalmente potete lanciare l'amatissimo make config (o make
 menuconfig o make xconfig) nella directory /usr/src/linux.
 Configurate il resto come volete voi (ricordandovi di abilitare il
 supporto per i moduli se volete installare i driver sonori come
 moduli).

 Ad un certo punto vi verr� chiesto se volete il sound card support.
 rispondete con Y o M se non avete una schesa PnP.  Se invece avete una
 SB PnP dovete rispondere M.

 Poi alle seguenti voci della sezione sound un bel Y  (alle altre un N
 e una pietra sopra).


 ______________________________________________________________________
 Sound Blaster (SB, SBPro, SB16, clones) support (CONFIG_SB) [Y/n/?]
 Generic OPL2/OPL3 FM synthesizer support (CONFIG_ADLIB) [Y/n/?]
 /dev/dsp and /dev/audio support (CONFIG_AUDIO) [Y/n/?]
 MIDI interface support (CONFIG_MIDI) [Y/n/?]
 FM synthesizer (YM3812/OPL-3) support (CONFIG_YM3812) [Y/n/?]
 lowlevel sound driver support [Y/n/?]
 AWE32 support (CONFIG_AWE32_SYNTH) [Y/n/?]
 ______________________________________________________________________



 ATTENZIONE SE L'ULTIMA NON APPARE ALLORA NON AVETE INSTALLATO L'AWE
 DRIVER EXTENSION!!!!!


 Quindi dovete configurare l'I/O della SB date un'occhiata
 all'isapnp.conf altrimenti provate questi valori di default (che sono
 andati bene a me, a marcus e ad altre persone).  Attenzione in
 particolar modo ai valori del SBC_IRQ e SB_MPU_BASE che normalemente
 sono sbagliati per molte SB.


 ______________________________________________________________________
 I/O base for SB Check from manual of the card (SBC_BASE) [220]
 Sound Blaster IRQ Check from manual of the card (SBC_IRQ) [5]
 Sound Blaster DMA 0, 1 or 3 (SBC_DMA) [1]
 Sound Blaster 16 bit DMA (_REQUIRED_for SB16, Jazz16, SMW) 5, 6 or 7
 (use 1 for 8 bit cards) (SB_DMA2) [5]
 MPU401 I/O base of SB16, Jazz16 and ES1688 Check from manual of the card
 (SB_MPU_BASE) [330]
 SB MPU401 IRQ (Jazz16, SM Wave and ES1688) Use -1 with SB16 (SB_MPU_IRQ) [-1]
 ______________________________________________________________________



 Ora ricompilate il kernel seguendo i suggerimenti del Module HOWTO:


      make dep
      make clean
      make modules
      make modules_install




 make zImage o make zlilo o make zdisk  a seconda delle vostre neces�
 sit�.

 Per gli utenti Debian + semplicemente




 make-kpkg clean
 make-kpkg -revision custom.1.0 kernel_image




 e quindi dpkg -i /usr/src/kernel-image-2.0.29_custom.1.0_i386.deb.



 3.4.  Riavvio


 Dopo l'installazione del nuovo kernel dovete riavviare il sistema
 (fatevi sempre un dischetto di boot in caso di errori irreversibili).
 Ora incrociate le dita, fate le macumbe, e riavviate (CTRL+ALT+CANC o
 per i maniaci shutdown -r now).

 Ora potete installare il sound driver se lo avete compilato come
 modulo.



      Modprobe -a sound
      AWE32 Sound Driver v0.3.3e (DRAM 2048k)




 Se la memoria non � stata rilevata correttamente provate a fare
 l'upgrade del AWE driver Extension o direttamente editate il file
 /usr/src/linux/drivers/sound/lowlevel/awe_config.h

 per esempio:



      #define AWE_DEFAULT_MEM_SIZE  4096   /* kbytes */




 quindi ricompilate il kernel di nuovo.

 Se non volete ricompilare tutto ex novo, � anche possibile fare
 soltanto make modules e make modules_install.  Io comunque, suggerisco
 di ricompilare tutto , male non fa n� a voi n� al Pc.

 Se invece � andato tutto, bene dovreste avere il sound module caricato
 automaticamente.

 Potete usare kerneld oppure aggiungere sound in /etc/modules (in
 Debian) o aggiungere /sbin/modprobe -a sound negli script di avvio del
 vostro Linux.


 4.  Testiamo il tutto



 4.1.  /proc/devices  /dev/sndstat


 Se avete installato il sound support come "built-in" gi� nei messaggi
 di boot dovreste aver visto dei messaggi utili.  In ogni caso date
 un'occhiata a quello che appare con questi comandi:
      modprobe -r sound  (questo se lo avete caricato come modulo)
      modprobe -a sound trace_init=1
       Sound initialization started

      <Sound Blaster 16 (4.13)> at 0x220 irq 5 dma 1,5
      <Sound Blaster 16> at 0x330 irq 5 dma 0
      <Yamaha OPL3 FM> at 0x388
      Sound initialization complete
      AWE32 Sound Driver v0.3.3e (DRAM 2048k)




 Se avete /proc come file system virtuale date un'occhiata ai devices



      cat /proc/devices
      ...Character devices:
         [...]
         14 sound
         [...]




 Date un'occhiata che in /dev i device siano installati correttamente
 (vedi SOUND-HOWTO su come fare) quindi diamo un'occhiata a
 /dev/sndstat



      # cat /dev/sndstat
             Sound Driver:3.5.4-960630 (Sat Oct 11 19:35:14 CEST 1997 root,
             Linux flora 2.0.29 #1 Sat Oct 11 19:12:56 CEST 1997 i586 unknown)
             Kernel: Linux flora 2.0.29 #1 Sat Oct 11 19:36:23 CEST 1997 i586
             Config options: 0

             Installed drivers:
             Type 1: OPL-2/OPL-3 FM
             Type 2: Sound Blaster
             Type 7: SB MPU-401

             Card config:
             Sound Blaster at 0x220 irq 5 drq 1,5
             SB MPU-401 at 0x330 irq 5 drq 0
             OPL-2/OPL-3 FM at 0x388 drq 0

             Audio devices:
             0: Sound Blaster 16 (4.13)

             Synth devices:
             0: Yamaha OPL-3
             1: AWE32 Driver v0.3.3e (DRAM 2048k)

             Midi devices:
             0: Sound Blaster 16

             Timers:
             0: System clock

             Mixers:
             0: Sound Blaster
             1: AWE32 Equalizer


 Se non vi esce un output come questo allora avete sbagliato qualcosa
 nella configurazione e dovete ritornare al punto ``Iniziamo'' (e senza
 passare per il via).


 4.2.  Output: Il Device Raw Audio



 Cercate un file di tipo .au (sun workstation) o .wav (ma non sempre
 funzionano). Io suggerisco sempre un bel find / -name *.au.

 E ora ...  magia di Linux ... digitate :



      cat file.au > /dev/audio





 oppure




      cat file.wav > /dev/dsp




 in questo modo dovreste sentire il file sonoro utilizzando il driver
 Audio Device 0: Sound Blaster 16 (4.3).


 4.3.  Output: Sintesi OPL-2/OPL-3


 Se volete usare la sintesi FM OPL-2/OPL-3 per ascoltare i MIDI provate
 il programma playmidi (appendice B)



      playmidi -f dance.mid





 oppure




      playmidi -4 dance.mid




 il primo vi da l'OPL-2 il secondo l'OPL-3.  Se il suono fa schifo non
 preoccupatevi � la sintesi FM che fa schifo, ma voi avete unia SB-AWE
 e potete usare ben altro!!



 4.4.  Output: Sintesi Wave Table


 L'AWE driver Extension ha alcuni splendidi comandi (awesfx) per fare
 uso dell'EMU 8000 Wave Table synthesis.

 Prima di tutto dovete caricare una sound font Bank sulla vostra scheda
 (anche se volete usare i ROM samples). Potete trovare i file dalla
 vostra partizione DOS/Windows - file con suffisso *.sfb o *.sf2.

 I ROM samples possono essere caricati con SYNTHGM.SBK, mentre i
 samples reali li trovate in SYNTHGS.SBK e SYNTHMT.SBK, oppure in
 SAMPLE.SBK. Potete trovare altri Sound Font Banks via ftp o www, per
 esempio l'EMU homepage, il sito della Creative, e cercate i CHAOS
 samples, che sono molto buoni.

 Provate a caricare l'insieme GM standard (ROM) con



      sfxload -i synthgm.sbk




 E poi ascoltatevi un MIDI con l'utility



      drvmidi dance.mid





 4.5.  Mixer


 Procuratevi il vostro programma di mixer favorito e caricatelo. Ora
 fate partire un wav e due midi nello stesso tempo per provate le
 impostazioni del vostro mixer. Qui di seguito c'� la lista delle
 periferiche e di come sono chiamate


    Yamaha OPL-3
       Synth o FM

    AWE32 Driver
       Synth o FM (qualcuno conosce un mixer in cui queste due voci
       sono separate?)

    Sound Blaster 16 (4.13)
       PCM o DSP

    PC Speaker (ancora vivo)
       Spkr

 Altre periferiche sono il CDROM possibilmente collegato alla SB,
 MASTER VOLUME (volume generale), Bass (regolazione bassi), Treble
 (regolazione alti).


 4.6.  Input: Compionamenti con il Device Raw Audio



 � possibile registrare da CDROM, microfono e qualsiasi cosa connessa
 al line-in. Configura il mixer nel modo pi� appropriato.  Suona e poi
 registra una traccia ad esempio:



       cdplay
       dd bs=8k count=5 < /dev/dsp > music.au
       5+0 records in
       5+0 records out
       cat music.au >/dev/dsp




 prende 5 secondi di una traccia del cd e la registra nel file music.au
 che poi viene fatto partire.


 5.  Software per il driver AWE



 5.1.  sfxload


 � possibile caricare dei sample nella DRAM della SB con il comando
 sfxload.

 NOTA: � possibile caricare solo un sample file per banco, con il banco
 0 come  default. Da ci� consegue che dopo sfxload synthgs.sbk, l'unico
 sample caricato � il GS. Se vuoi caricare Sound Font Bank addizionali,
 � necessario usare l'opzione -b.

 Ad esempio:



      sfxload synthgs.sbk
      sfxload -b1 sample.sbk
      drvmidi sfx.mid




 Inoltre � possibile caricare un Sound Font Bank di default; basta
 aggiungere la linea seguente



      post-install sound /usr/bin/sfxload synthgm.sbk




 in /etc/conf.modules.

 Guardate la documentazione relativa a sfxload per altre dritte.


 5.2.  drvmidi


 Con drivmidi, � possibile adoperare l'AWE driver per suonare i MIDI,
 basta specificare il file che si vuole sentire dopo il comando.

 Ad esempio:



      drvmidi waltz.mid




 Guardate la documentazione relativa a sfxload per altre dritte.


 6.  Appendici



 6.1.  Informazioni addizionali




    The Linux Sound HOWTO
       Autore: Jeff Tranter, <[email protected]>

       Ultima versione: v1.17, 4 Agosto 1997

       � consigliabile leggere bene questo HOWTO !!!!!


    The Linux Sound Playing HOWTO
       Autore: Yoo C. Chung, <[email protected]>

       Ultima versione: v1.4, 13 Maggio 1997

       Anche questo HOWTO � utile per conoscere i vari formati musicali
       e che applicazioni utilizzare per ascoltarli


    The AWE Driver FAQ
       Autore: Takashi Iwai  <[email protected]>

       Source:  <http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/awedrv-
       faq.html>

       La BIBBIA di noi poveri possessori di SB-AWE


     l'ISA PnP FAQ
       Autore: Peter Fox <[email protected]>

       Source:
       <http://www.roestock.demon.co.uk/isapnptools/isapnpfaq.html>

       Se avete problemi mentre configurate la vostra scheda PnP,
       allora qui troverete molti aiuti.



 6.2.  6.2. Sorgenti




    isapnptools
       Autore: Peter Fox <[email protected]>

       Ultima Versione: 1.11

       Source:
       <http://www.roestock.demon.co.uk/isapnptools/index.html>

       Per riportare bug, patches o commenti su isapnp:
       [email protected].  Includendo isapnp nel subject.



    awedrv
       Author: Takashi Iwai <[email protected]>

       Ultima Versione: 0.4.2c

       Source:  <http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/>


    Linux kernel
       Autore: Linus Torvald & co.

       Ultima versione: al momento 2.0.33 Reperibile a: ovunque ci sia
       Linux


    OSS/Free
       Author: Hannu Savolainen (Si invita fare un giro a
       <http://www.4front-tech.com/usslite> prima di spedimi una mail).

       Ultima Versione: I ho 3.5.5-beta1

       Reperibile con il Linux Kernel Source Package

       Informazioni:   <http://www.4front-tech.com/usslite> or European
       mirror <http://personal.eunet.fi/pp/voxware>.



 6.3.  Esempio di isapnp.conf



 Nell'ISA PnP file di configurazione, creato da pnpdump, i singoli
 componenti della vostra scheda PnP compaiono come sezioni (SECTION).
 Nel file qui sotto riportato � stata rilevata la scheda sonora con 4
 componenti logici:


 �  LD 0: Audio Device

 �  LD 1: IDE Device

 �  LD 2: WaveTable Device

 �  LD 3: Gameport Device

 � stato lasciato LD 1 non configurato perch� il CDROM non era
 attaccato alla porta ide della SB. Se non avete una porta Ide sulla
 vostra SB allora LD 1 sar� il Gameport Device e LD 3 non comparir�.
 Per favore fate riferimento alla sezione ``Iniziamo'' per informazioni
 importanti su questo file.





 ______________________________________________________________________
   # $Id: pnpdump.c,v 1.9 1997/06/10 21:37:32 fox Exp $
   # This is free software, see the sources for details.
   # This software has NO WARRANTY, use at your OWN RISK
   #
   # For details of this file format, see isapnp.conf(5)
   #
   # For latest information on isapnp and pnpdump see:
   # http://www.roestock.demon.co.uk/isapnptools/
   #
   # Compiler flags: -DREALTIME -DNEEDSETSCHEDULER

   (READPORT 0x0203)
   (ISOLATE)
   (IDENTIFY *)

   # Try the following if you get error messages like
   # Error occurred executing request 'LD 2' on or around line...

   #(VERIFYLD N)

   # ANSI string -->Creative SB32 PnP<--

   (CONFIGURE CTL0048/58128 (LD 0
   #     ANSI string -->Audio<--

     (INT 0 (IRQ 5 (MODE +E)))
     (DMA 0 (CHANNEL 1))
     (DMA 1 (CHANNEL 5))
     (IO 0 (BASE 0x0220))
     (IO 1 (BASE 0x0330))
     (IO 2 (BASE 0x0388))

     (ACT Y)
   ))

   (CONFIGURE CTL0048/58128 (LD 1
   #     ANSI string -->IDE<--

   # (INT 0 (IRQ 10 (MODE +E)))
   # (IO 0 (BASE 0x0168))
   # (IO 1 (BASE 0x036e))

   # (ACT Y)
   ))

   (CONFIGURE CTL0048/58128 (LD 2
   #     ANSI string -->WaveTable<--

     (IO 0 (BASE 0x0620))
     (IO 1 (BASE 0x0A20))
     (IO 2 (BASE 0x0E20))

     (ACT Y)
   ))

   (CONFIGURE CTL0048/58128 (LD 3
   #     ANSI string -->Game<--

     (IO 0 (BASE 0x0200))
     (ACT Y)
   ))

   # Returns all cards to the "Wait for Key" state
   (WAITFORKEY)
 ______________________________________________________________________