File: Soundblaster-AWE

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

  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:n.bern@mail.protos.it>
  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:borto@pluto.linux.> 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, <jeff_tranter@pobox.com>

        Ultima versione: v1.17, 4 Agosto 1997

         consigliabile leggere bene questo HOWTO !!!!!


     The Linux Sound Playing HOWTO
        Autore: Yoo C. Chung, <wacko@laplace.snu.ac.kr>

        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  <iwai@dragon.mm.t.u-tokyo.ac.jp>

        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 <fox@roestock.demon.co.uk>

        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 <fox@roestock.demon.co.uk>

        Ultima Versione: 1.11

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

        Per riportare bug, patches o commenti su isapnp:
        isapnp@roestock.demon.co.uk.  Includendo isapnp nel subject.



     awedrv
        Author: Takashi Iwai <iwai@dragon.mm.t.u-tokyo.ac.jp>

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