Soundblaster 

po polsku


Nastêpna strona
Poprzednia strona
Spis tre¶ci

3. Jak zainstalowaæ d¼wiêk z SB AWE



3.1 Rzeczy, które bêd± Ci potrzebne


Oto wymagania obs³ugi SB AWE pod Linuxem:


Funkcjonalny system Linuxowy (np. Debian GNU Linux)

Karta SB AWE 32 albo kompatybilna (np. SB32, SB32 PnP, SB AWE64, ...)

¬ród³a j±dra Linuxa ze sterownikiem d¼wiêku OSS/Free (normalnie do³±czany, sprawd¼ w /usr/src/Linux/drivers/sound/Readme

Sterownik "AWE 32 Sound Driver Extensions"

Je¿eli masz kartê PnP, bêdziesz tak¿e potrzebowa³:


Pakiet oprogramowania isapnptools

Zobacz sekcjê
¬ród³a dla informacji sk±d mo¿na zdobyæ te programy.


3.2 Zaczynamy


Przyjmijmy, ¿e masz poprawnie zainstalowan± kartê i prawdopodobnie ju¿ j± testowa³e¶ pod DOS'em lub Windows.
Nastêpnym krokiem bêdzie inicjalizacja karty w czasie ³adowania systemu wtedy, i tylko wtedy, gdy jest to karta PnP. Postêpuj zgodnie z dokumentacj± pakietu ¼ród³owego ¿eby skompilowaæ i zainstalowaæ isapnptools (albo po prostu u¿yj binarnego pakietu) i wykonaj polecenie:


# pnpdump > /etc/isapnp.conf



jako root. To wygeneruje, mam nadziejê, ¿e odpowiedni, plik konfiguracyjny dla Twoich kart PnP, ale ze wszystkimi urz±dzeniami odkomentowanymi. Edytuj plik ostro¿nie i porównuj warto¶ci kana³ów DMA, adresów IO i przerwañ z konfiguracj± pod DOS'em lub Windows, je¶li to mo¿liwe. (pod Win95 zobacz zasoby wykorzystywane przez kartê w opcji zasoby w mened¿erze urz±dzeñ). Je¿eli masz problemy, przeczytaj dokumentacjê dostarczan± z isapnptools.
UWAGA: isapnptools czêsto nie wykrywa wszystkich trzech portów I/O syntezy AWE Wave Table. Sprawd¼ dok³adnie pozycjê WaveTable w pliku isapnp.conf z przyk³adem podanym na koñcu tego HOWTO. Ustaw adres I/O je¿eli to potrzebne.
UWAGA: Zgodnie z isapnp-faq, isapnp czasami nie zaprogramowywuje numeru urz±dzenia logicznego. Je¿eli napotkasz np. tak± wiadomo¶æ o b³êdzie:
Error occured executing request 'LD 2' on or around line...
spróbuj dodaæ liniê (VERIFYLD N) na pocz±tku pliku isapnp.conf. Musisz u¿ywaæ wersji co najmniej 1.10, ¿eby ta medoda zadzia³a³a. Je¿eli nie mo¿esz u¿ywaæ wersji 1.10 lub nowszej mo¿esz tak¿e wprowadziæ numery urz±dzeñ logicznych bezpo¶rednio. Zobacz isapnp-faq, ¿eby usyskaæ wiêcej informacji o tej metodzie. Je¿eli to nie bêdzie dzia³aæ skontaktuj siê ze mn± (i ludzi tworz±cych isapnp, oni te¿ powinni byæ zainteresowani).
UWAGA: Upewnij siê, ¿e ostatni± lini± jest (WAITFORKEY), to czasami bywa ominiête przez starsze wersje pnpdump.
Przyk³adowy isapnp.conf mo¿esz znale¼æ na koñcu tego dokumentu (zobacz sekcjê
Przyk³adowy isapnp.conf.
Je¿eli u¿ywasz Debiana nie s± potrzebne ¿adne dalsze ustawienia, isapnp zostanie uruchomiony w czasie ³adowania w pliku /etc/init.d/boot po dodaniu tego kawa³ka kodu:



# Skonfiguruj karty isa plug and play przed ³adowaniem
# modu³ów. Musisz to zrobiæ przed ³adowaniem modu³ów, ¿eby mieæ
# szansê skonfigurowania i zainicjalizowania kart PnP zanim
# sterowniki narobi± ba³aganu.
#
if [ -x /etc/init.d/isapnp ]
then
/etc/init.d/isapnp start
fi



gdzie /etc/init.d/isapnp musi zawieraæ linie:



#! /bin/sh
# /etc/init.d/isapnp: skonfiguruj karty Plug ang Play
test -x /sbin/isapnp || exit 0
/sbin/isapnp /etc/isapnp.conf
exit 0


Je¿eli masz inn± dystrybucjê Linuxa, jeste¶ zdany na siebie. Nie wiem co robiæ (czy kto¶ poda³by mi te informacje?). Upewnij siê tylko, ¿e isapnp bêdzie uruchomiona zanim modu³y bêd± za³adowane (zobacz poni¿ej).


3.3 Kompilacja j±dra


Przed rekompilacj± j±dra musisz "za³ataæ" je Sterownikiem AWE. Nawet je¿eli ¼ród³a twojego j±dra ju¿ zawieraj± awedrv (sprawd¼ /drivers/sound/lowlevel/), mo¿esz chcieæ rozszerzyæ istniej±cy sterownik. Postêpuj zgodnie z instrukcjami w katalogu ze ¼ród³ami awedrv. Musisz odpaliæ skrypt który zainstaluje ³atê w j±drze.
Sprawd¼, czy na pewno rozszerzy³e¶ ¼ród³a. Skrypt tylko sprawdza, czy dany plik instnieje - je¿eli tak, nie instaluje ³aty. Powiniene¶ skasowaæ plik drivers/sound/lowlevel/awe_wav.c przed uruchomieniem skryptu po rozszerzeniu ¼róde³ j±dra.
Nastêpnie musisz skonfigurowaæ j±dro, w³±czaj±c obs³ugê d¼wiêku. Mam nadziejê, ¿e wiesz trochê o kompilowaniu j±dra; zobacz Sound HOWTO i Kernel HOWTO, ¿eby uzyskaæ wiêcej informacji. Przejd¼ do katalogu z ¼ród³ami j±dra (np. /usr/src/linux) i wykonaj polecenie



# make config


lub


make menuconfig


albo


make xconfig


. Teraz musisz skonfigurowaæ j±dro. U¿yj tej okazji, ¿eby zbudowaæ ma³e i mocne j±dro, dostosowane do twojego komputera. Pamiêtaj, ¿eby odpowiedzieæ Y na pytanie Enable loadable module support, je¿eli chcesz zainstalowaæ sterownik d¼wiêku jako ³adowalny modu³ (musisz, je¿eli masz kartê PnP), ale jestem pewien, ¿e bêdziesz chcia³ i tak to zrobiæ.
W pewnym momencie zostaniesz zapytany o obs³ugê karty d¼wiêkowej. Mo¿esz odpowiedzieæ zarówno Y albo M je¿eli nie masz karty PnP. Musisz odpowiedzieæ M (modu³), je¿eli posiadasz kartê PnP. Musisz skompilowaæ obs³ugê karty d¼wiêkowj jako modu³ (je¿eli masz kartê PnP), poniewa¿ taka karta musi byæ zainicjalizowana przed za³adowaniem modu³u. Na nastêpuj±ce pytania powiniene¶ odpowiedzieæ Y, na wszystkie inne N:



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/?]


Tylko ostatnia opcja ma wp³yw na syntezê Wave Table. Inne wykorzystuj± opcje SB16 sterownika OSS/Free.
Dodatkowo, musisz skonfigurowaæ port I/O karty d¼wiêkowej. Spójrz na plik isapnp.conf dla wskazówek, je¿eli masz takowy. U mnie wystarczaj± stantardowe warto¶ci. Zauwa¿, ¿e standardowe warto¶ci ze skryptu konfiguracyjnego j±dra mog± byæ nieprawid³owe (zw³aszcza warto¶ci SBC_IRQ i SB_MPU_BASE s± z³e dla wiêkszo¶ci kart).



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]


Teraz zrekompiluj j±dro. U¿ytkownicy Debiana powinni u¿yæ kernel-package. To robi kompilacjê j±dra czynno¶ci± tak prost± jak zainstalowanie paczki Debiana. Zobacz dokumentacjê w katalogu /usr/doc/kernel-package/. Oto podpowied¼:



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


i wtedy



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


Je¿eli masz inn± dystrybucjê Linuxa, postêpuj zgodnie ze standardowym sposobem kompilacji nowego j±dra. Nie zapomnij o wydaniu poleceñ make modules i make modules_install. Zobacz Sound HOWTO i (mo¿e) Kernel HOWTO, ¿eby uzyskaæ wiêcej informacji.


3.4 Prze³adowanie systemu


Po zainstalowaniu nowego j±dra powiniene¶ prze³adowaæ system (pamiêtaj, ¿eby mieæ funkcjonuj±c± dyskietkê startow±). Zaci¶nij kciuki.
Je¿eli masz kartê PnP, pamiêtaj, ¿eby odpaliæ isapnp b±d¼ to w skrypcie ³aduj±cym (tak jak by³o to opisane wcze¶niej), b±d¼ to rêcznie:



# /sbin/isapnp /etc/isapnp.conf
Board 1 has Identity 74 00 00 e3 10 48 00 8c 0e: CTL0048 Serial No 58128
[checksum 74]


Teraz mo¿esz zainstalowaæ sterownik d¼wiêku, je¿eli skompilowa³e¶ go jako modu³:



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


Je¿eli s±dzisz, ¿e wykrycie pamiêci nie by³o poprawne (znam przypadek cz³owieka maj±cego AWE 64 z 4096k, a ,,wykryta'' ilo¶æ wynosi³a 28672k), spróbuj rozszer¿yæ awedrv albo podaj ilo¶æ pamiêci w pliku /usr/src/linux/drivers/sound/lowlevel/awe_config.h, np.



# define AWE_DEFAULT_MEM_SIZE 4096 /* kilobajtów */


Przykro mi, ale musisz wtedy zrekompilowaæ j±dro (mo¿e kompilacja modu³ów bêdzie wystarczaj±ca, ale nie wiem na pewno).
Je¿eli dzia³a, mo¿esz chcieæ, ¿eby modu³ d¼wiêku by³ ³adowany automatycznie.
Mo¿esz u¿yæ kerneld (dlaczego to nie jest najlepszy pomys³ zobacz w sekcji 1.4) lub dodaj liniê zawieraj±c± sound do /etc/modules (w Debianie) lub dodaj liniê /sbin/modprobe -a sound do skryptu ³aduj±cego.



Nastêpna strona
Poprzednia strona
Spis tre¶ci
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • pajaa1981.pev.pl