Sound Blaster AWE 32/64 HOWTO Autor: Marcus Brinkman Marcus.Brinkmann@ruhr-uni-bochum.de v1.2, 11 Stycznia 1998 WWeerrssjjaa ppoollsskkaa:: LLeesszzeekk UUrrbbaaññsskkii ttyyggrryyss@@ggddaannsskk..sspprriinntt..ppll v1.0, 23 Lutego 1998 Dokument ten zosta³ napisany w standardzie ISO-8859-2. Orygina³ tego dokumentu znajduje siê pod adresem http://homepage.ruhr-uni- bochum.de/Marcus.Brinkmann/soundblaster.html Ten dokument opisuje jak zainstalowaæ i skonfigurowaæ kartê Sound Blaster 32 (SB AWE 32, SB AWE 64) firmy Creative Labs w systemie Linux u¿ywaj±c sterownika "AWE Sound Driver Extention" napisanego przez Takashi-ego Iwai. Opisuje tak¿e specjalne narzêdzia i odgrywarki dla SB AWE. Przyjêtym systemem bêdzie Debian GNU Linux, ale opisany sposób powinien dzia³aæ w ka¿dej innej dystrybucji. 11.. WWpprroowwaaddzzeenniiee To jest JTZ o Sound Blaster-rze AWE. Podaje ono dok³adne informacje o maksymalnym wykorzystaniu Twojego Sound Blaster'a 32 (lub lepszego), w³±czaj±c w to syntezê Wave Table. Ten dokument opisuje wszystkie karty SB od SB 32. Karty Sound Blaster s± dobrze znane w ¶rodowisku DOS i Windows, a wiele osób chce te¿ u¿ywaæ swoje karty pod Linux'em. Niestety, Creative Labs dostarcza tylko sterowniki pod Windows i DOS'a, wiêc zainstalowanie karty SB pod Linuxem nie jest proste. [oj, chyba jest :-) - przyp. t³um.] Ten dokument próbuje opisaæ jak mo¿na u¿ywaæ w³a¶ciwo¶ci kart SB AWE w ¶rodowisku Linuxa. 11..11.. PPooddzziiêêkkoowwaanniiaa Dokument zawiera informacje, które wzi±³em z FAQ Sterownika AWE i FAQ ISA PnP. Zobacz sekcjê ¬ród³a dla poznania autorów i miejsca tych dokumentów. Dziêki nim, obs³uga d¼wiêku SB AWE jest mo¿liwa. Mnóstwo wa¿nej pracy by³o zrobione przez Hannu Savolainen'a, który napisa³ sterownik dostarczany z j±drem Linuxa. Dziêkujê! Chcê podziêkowaæ Nicoli Bernardelli za testowanie AWE64. Bez niego wiele b³êdów pozosta³oby niewykrytych. Dziêkujê za SGML Tools, to HOWTO jest dostêpne w kilku formatach, wszystkie wygenerowane z jednego pliku ¼ród³owego. 11..22.. PPoopprraawwkkii ww ssttoossuunnkkuu ddoo ppoopprrzzeeddnniicchh wweerrssjjii WWeerrssjjaa 11..00 Pierwsza wersja WWeerrssjjaa 11..11 Poprawiona pisownia (dziêki Curt!), dodana potrzebna wersja iissaappnnpp, teraz dostêpna na sunsite i mnóstwie kopii. WWeerrssjjaa 11..22 Wersja francuska jest ju¿ dostêpna, ma³e poprawki, du¿o poprawionej pisowni (dziêki programowi ispell) 11..33.. NNoowwee wweerrssjjee tteeggoo ddookkuummeennttuu Naj¶wie¿sze wersje s± na mojej stronie domowej - Sound Blaster AWE HOWTO Nowe wersje tego dokumentu bêd± przesy³ane na wiele anonimowych serwerów FTP sk³aduj±cych tego typu informacje, jak np. ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini Hypertekstowe wersje tego i innych Linuxowych HOWTO s± dostêpne na wielu serwerach WWW, np. http://sunsite.unc.edu/LDP. Wiêkszo¶æ dystrybucji Linuxa na CD-ROM'ach zawiera dokumenty HOWTO, czêsto w katalogu //uussrr//ddoocc. Dziêki Arnaudowi Launay zoro@lsol.tm.fr jest dostêpna francuska wersja tego dokumentu! Naj¶wie¿sza wersja jest dostêpna przez HTTP albo anonimowe FTP. Je¿eli przet³umaczysz ten dokument na inny jêzyk, daj mi znaæ, a do³±czê odno¶nik do niego tutaj. 11..44.. KKoonnttaakktt zz aauuttoorreemm Polegam na tobie, Czytelniku, w zrobieniu tego HOWTO u¿ytecznym. Je¿eli masz jakiekolwiek sugestie, poprawki, albo komentarze, proszê, ¿eby¶ przys³a³ je do mnie, Marcus.Brinkmann@ruhr-uni-bochum.de, a ja postaram siê wzi±æ je pod uwagê w nastêpnej edycji. By³bym szczególnie wdziêczny za informacje o procedurze startowej (skrtypty inicjalizuj±ce itp.) innych popularnych dystrybucji Linuxa, np. RedHat lub SuSE Linux. Je¿eli opublikujesz ten dokument na CD-ROM'ie lub na papierze, kopia by³a by mile widziana. (Przez e-mail mo¿esz zapytaæ siê o mój adres pocztowy) Pomy¶l tak¿e o z³o¿eniu dotacji dla LDP (Linux Documentation Project), ¿eby wspomóc tworzenie darmowej dokumentacji Linux'a. Skontaktuj siê z koordynatorem Linux HOWTO, Gregiem Hankins'em gregh@sunsite.unc.edu, ¿eby zdobyæ wiêcej informacjii. 11..55.. ZZaassaaddyy ddyyssttrryybbuuccjjii Prawa autorskie - (C)1997 Marcus Brinkmann. To HOWTO jest dokumentacj± darmow±; mo¿esz j± udostêpniaæ i/lub modyfikowaæ na zasadach Licencji Publicznej GNU (GNU General Public License) publikowanej przez FSF (Free Software Foundation); albo wersji 2, albo jakiejkolwiek pó¼niejszej wersji. Ten dokument jest udostêpniany z nadziej±, ¿e bêdzie on u¿yteczny, ale bbeezz ¿¿aaddnneejj gwarancji; nawet bez gwarancji ddoossttêêppnnoo¶¶ccii ani pprrzzyyddaattnnoo¶¶ccii ww ookkrree¶¶lloonnyymm pprrzzyyppaaddkkuu. Przestudiuj Licencjê Publiczn± GNU, dla uzyskania dok³adnych informacji. Mo¿esz uzyskaæ kopiê Licencji pisz±c do FSF - Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 22.. ZZaanniimm zzaacczznniieesszz 22..11.. WWpprroowwaaddzzeenniiee Ten dokument próbuje pomóc Ci w instalacji i u¿ytkowaniu karty Sound Blaster AWE 32 lub Sound Blaster AWE 64 firmy Creative Labs w Twoim Linuxie. Odno¶nym systemem jest Debian GNU Linux na platformie Intel i586, ale metoda tu przedstawiona powinna dzia³aæ z ka¿d± inn± dystrybucj± Linuxa, jak i na ka¿dej innej platformie sprzêtowej obs³ugiwanej prze Linuxowy sterownik d¼wiêku (ró¿nice bêd± opisane). Pamiêtaj, ¿eby dok³adnie przeczytaæ "Linux Sound HOWTO" (zobacz sekcjê Dodatkowe informacje. Traktujê swój dokument jako dodatek do Sound HOWTO, czêsto mo¿esz tam znale¼æ informacje o rzeczach, których tu nie opisa³em. 22..22.. KKiillkkaa uuwwaagg oo kkaarrttaacchh SSBB AAWWEE SB AWE 32 zawiera urz±dzenie d¼wiêku RAW, standardow± syntezê OPL-2/OPL-3, port MIDI MPU-401 i syntezê Wave Table EMU 8000 o 32-g³osowej polifonii (przestudiuj Sound HOWTO dla wyja¶nienia tych terminów). SB AWE 64 ma wszystkie mo¿liwo¶ci AWE 32 i dodatkowo syntezê Wave Guide, z której Creative Labs jest szczególnie dumny. Problemem dla u¿ytkowników Linuxa jest fakt, ¿e dodatkowe 32 g³osy s± generowane programowo i wysy³ane przez urz±dzenia d¼wiêku RAW. Poniewa¿ Creative Labs nie widzi rynku dla sterowników pod Linuxa, sterownik syntezy Wave Guide jest dostêpny tylko pod Windows 3.1 i Windows 95. Znaczy to, ¿e z punktu widzenia u¿ytkownika Linuxa SB AWE 32 i AWE 64 s± prawie identyczne. [AWE 64 ma troszeczkê lepsze przetworniki A/C i C/A -- przyp. t³um.] Od tej chwili bêdê siê odnosi³ do SB AWE wogóle i wsponê o ró¿nicach, je¿eli wyst±pi±. 22..33.. KKiillkkaa uuwwaagg oo kkaarrttaacchh PPlluugg aanndd PPllaayy Wiêkszo¶æ nowoczesnych kart na platformê Intela s± kartami ISA PnP, co jest skrótem dla ,,Plug and Play''. Znaczy to, ¿e karta musi byæ skonfigurowana przez system operacyjny, a to musi byæ wykonane przez skrypt inicjaliacyjny (initialization routine) w czasie ³adowania systemu. S± co najmniej trzy mo¿liwe sposoby na wykonanie tego, je¿eli: · Masz bios PnP, co oznacza, ¿e mo¿e on "widzieæ" karty PnP i mo¿e je skonfigurowaæ. Je¿eli my¶lisz, ¿e mo¿esz u¿ywaæ wszystkich mo¿liwo¶ci Twojego SB AWE PnP, jeste¶ w b³êdzie. Nawet je¿eli bios twierdzi, ¿e obs³uguje karty PnP, tylko inicjalizuje zbiór portów i adresów u¿ywanych przez Twoj± kartê. Pewnie bêdziesz móg³ odgrywaæ d¼wiêki RAW WAVE, ale nie bêdziesz móg³ odgrywaæ np. muzyki MIDI. Z tego powodu bios PnP nie jest wyj¶ciem. · Masz system operacyjny obs³uguj±cy karty PnP. Obecne stabilne j±dro Linuxa (2.0.x) nie jest takim systemem, wiêc bêdziemy musieli poczekaæ na przysz³e wersje j±dra, obs³uguj±ce urz±dzenia PnP. · Masz specjalny program, uruchamiany w czasie ³adowania systemu, który inicjalizuje Twoje karty PnP. Tego sposobu u¿yjemy. Najczê¶ciej u¿ywanym oprogramowaniem dla inicjalizacji kart PnP pod Linuxem jest ,,iissaappnnppttoooollss'' (zobacz sekcjê ¬ród³a i sekcjê Zaczynamy). Opisuj± one w³a¶ciwie jak skonfigurowaæ wszystkie karty ISA PnP, nie tylko kartê dzwiêkow±. 22..44.. KKiillkkaa uuwwaagg oo ³³aaddoowwaallnnyycchh mmoodduu³³aacchh jj±±ddrraa Niektóre sterowniki urz±dzeñ mog± byæ budowane jako modu³y zamiast wkompilowywania ich w j±dro. Mo¿esz znale¼æ wiêcej informacji o modu³ach w ,,Kernel-HOWTO'' i ,,Module HOWTO'' (zobacz sekcjê Dodatkowe informacje). Je¿eli posiadasz kartê PnP, mmuussiisszz zainstalowaæ obs³ugê d¼wiêku jako ³adowalny modu³ j±dra. Znaczy to, ¿e nie mo¿esz wbudowaæ sterownika d¼wiêku w j±dro, bêdziesz musia³ zbudowaæ go jako modu³, który mo¿e byæ w³adowany w j±dro w czasie rzeczywistym. Jest to potrzebne dlatego, ¿e j±dro bêdzie zainstalowane przed skonfigurowaniem karty ISA PnP, a sterownik d¼wiêku musi byæ za³adowany po skonfigurowaniu karty ISA PnP. Modu³ d¼wiêku j±dra mo¿e byæ za³adowany rêcznie - iinnssmmoodd ssoouunndd albo mmooddpprroobbee --aa ssoouunndd albo w poprawnej linii skryptu ³aduj±cego twojego Linuxa (w Debianie jest wymagane aby dodaæ liniê zawieraj±c± ssoouunndd do //eettcc//mmoodduulleess). Inne podej¶cie, to odpalenie kkeerrnneelldd, demona instaluj±cego i deinstaluj±cego modu³y. Zauwa¿, ¿e kerneld mo¿e nie byæ najlepszym rozwi±zaniem dla sterownika AWE, poniewa¿ zabiera to du¿o czasu, aby za³adowaæ modu³ do j±dra, szczególnie je¿eli chcesz u¿ywaæ syntezy Wave Table i ³adowaæ du¿e banki Sound Font, co musisz zrobiæ za ka¿dym razem po za³adowaniu modu³u. Poniewa¿ kerneld usuwa nieu¿ywane modu³y po jednej minucie (standardowo), lepiej jest ³adowaæ modu³ d¼wiêku rêcznie lub w czasie ³adowania systemu. Zauwa¿, ¿e samodzielne ³adowanie modu³u zapobiega usuwaniu go przez kerneld. Przy okazji: Mo¿esz rêcznie ³adowaæ modu³ i u¿ywaæ kerneld w tym samym czasie. Te dwie metody nie koliduj± ze sob±, ale kerneld nie zajmuje siê ju¿ modu³em d¼wiêku. Jest to u¿yteczne, gdy Twoje ustawienia miksera zostaj± skasowane po usuniêciu i ponownym za³adowaniu modu³u. Rozwi±zanie tego problemu zostanie podane w sekcji Mikser (jest tam opis jak mo¿na uruchomiæ mikser automatycznie kiedy modu³ d¼wiêku zostaje za³adowany). Jednak¿e zajmuje to trochê czasu dla kerneld do zainstalowania modu³u, za³adowania banku d¼wiêków i uruchomienia miksera. Z tego powodu lepiej jest instalowaæ modu³ d¼wiêku w czasie ³adowania systemu i nie pozwalaæ kerneld go deinstalowaæ. 22..55.. KKiillkkaa uuwwaagg oo sstteerroowwnniikkuu dd¼¼wwiiêêkkuu ww jj±±ddrrzzee Mo¿esz zainstalowaæ obs³ugê d¼wieku bezpo¶rednio w j±drze lub jako ³adowalny modu³. Je¿eli masz kartê PnP, musisz zainstalowaæ obs³ugê d¼wiêku jako modu³, poniewa¿ karta PnP musi byæ zainicjalizowana przez isapnptools zanim modu³ zostanie zainstalowany. Jak mo¿esz sobie wyobraziæ, bêdziesz musia³ zrekompilowaæ j±dro. Podam ci poni¿ej kilka podpowiedzi. Na razie pomówmy o obs³udze d¼wiêku w ¼ród³ach j±dra. J±dro jest dystrybuowane z darmow± (Lite) wersj± OSS (USS) - sterownika d¼wiêku. Obecna wersja tego sterownika (3.5.4) nie obs³uguje SB AWE w ca³o¶ci, a tylko jego czê¶æ podobn± do SB 16. Tak wiêc mo¿esz odgrywaæ d¼wiêki RAW i u¿ywaæ syntezy OPL-2/OPL-3, ale nie bêdziesz móg³ odgrywaæ muzyki MIDI z syntez± Wave Table. Je¿eli chcesz u¿ywaæ syntezy Wave Table mo¿esz kupiæ komercyjny sterownik firmy 4Front Technologies (proszê, niech mnie kto¶ poinformuje, je¿eli to wystarczy) albo u¿ywaæ [darmowej] ³aty na j±dro "AWE 32 Sound Driver Extension" autorstwa Takashiego Iwai. Ten pierwszy nie jest opisany przez ten dokument, przyjmujê, ¿e chcesz u¿ywaæ tego ostatniego. Sterownik ten (zobacz sekcjê ¬ród³a ) jest publikowany na licencji GNU i jest dystrybuowany z kilkoma programami u¿ytkowymi do syntezy EMU 8000 kart SB AWE. AAwweeddrrvv jest ju¿ do³±czony do testowych wersji j±dra (2.1.x), ale prawdopodobnie chcesz rozszerzaæ stabline wersje. 33.. JJaakk zzaaiinnssttaalloowwaaææ dd¼¼wwiiêêkk zz SSBB AAWWEE 33..11.. RRzzeecczzyy,, kkttóórree bbêêdd±± CCii ppoottrrzzeebbnnee 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 //uussrr//ssrrcc//LLiinnuuxx//ddrriivveerrss//ssoouunndd//RReeaaddmmee · Sterownik "AWE 32 Sound Driver Extensions" Je¿eli masz kartê PnP, bêdziesz tak¿e potrzebowa³: · Pakiet oprogramowania iissaappnnppttoooollss Zobacz sekcjê ¬ród³a dla informacji sk±d mo¿na zdobyæ te programy. 33..22.. ZZaacczzyynnaammyy 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 konfigura cyjny 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 zzaassoobbyy w mmeenneedd¿¿eerrzzee uurrzz±±ddzzeeññ). Je¿eli masz problemy, przeczy taj dokumentacjê dostarczan± z isapnptools. UUWWAAGGAA:: isapnptools czêsto nie wykrywa wszystkich trzech portów I/O syntezy AWE Wave Table. Sprawd¼ dok³adnie pozycjê WWaavveeTTaabbllee w pliku iissaappnnpp..ccoonnff z przyk³adem podanym na koñcu tego HOWTO. Ustaw adres I/O je¿eli to potrzebne. UUWWAAGGAA:: Zgodnie z iissaappnnpp--ffaaqq, isapnp czasami nie zaprogramowywuje numeru urz±dzenia logicznego. Je¿eli napotkasz np. tak± wiadomo¶æ o b³êdzie: EErrrroorr ooccccuurreedd eexxeeccuuttiinngg rreeqquueesstt ''LLDD 22'' oonn oorr aarroouunndd lliinnee...... spróbuj dodaæ liniê ((VVEERRIIFFYYLLDD NN)) na pocz±tku pliku iissaappnnpp..ccoonnff. 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 iissaappnnpp--ffaaqq, ¿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). UUWWAAGGAA:: Upewnij siê, ¿e ostatni± lini± jest ((WWAAIITTFFOORRKKEEYY)), to czasami bywa ominiête przez starsze wersje ppnnppdduummpp. Przyk³adowy iissaappnnpp..ccoonnff 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, iissaappnnpp zostanie uruchomiony w czasie ³adowania w pliku //eettcc//iinniitt..dd//bboooott 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 //eettcc//iinniitt..dd//iissaappnnpp 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 zzaanniimm modu³y bêd± za³adowane (zobacz poni¿ej). 33..33.. KKoommppiillaaccjjaa jj±±ddrraa Przed rekompilacj± j±dra musisz "za³ataæ" je Sterownikiem AWE. Nawet je¿eli ¼ród³a twojego j±dra ju¿ zawieraj± aawweeddrrvv (sprawd¼ //ddrriivveerrss//ssoouunndd//lloowwlleevveell//), 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 ddrriivveerrss//ssoouunndd//lloowwlleevveell//aawwee__wwaavv..cc 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. //uussrr//ssrrcc//lliinnuuxx) i wykonaj polecenie ______________________________________________________________________ # make config ______________________________________________________________________ lub ______________________________________________________________________ make menuconfig ______________________________________________________________________ ______________________________________________________________________ make xconfig ______________________________________________________________________ W pewnym momencie zostaniesz zapytany o obs³ugê karty d¼wiêkowej. Mo¿esz odpowiedzieæ zarówno YY albo MM je¿eli nniiee mmaasszz karty PnP. MMuussiisszz odpowiedzieæ MM (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æ YY, na wszystkie inne NN: ______________________________________________________________________ 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 iissaappnnpp..ccoonnff 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 SSBBCC__IIRRQQ i SSBB__MMPPUU__BBAASSEE 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æ kkeerrnneell-- ppaacckkaaggee. To robi kompilacjê j±dra czynno¶ci± tak prost± jak zainstalowanie paczki Debiana. Zobacz dokumentacjê w katalogu //uussrr//ddoocc//kkeerrnneell--ppaacckkaaggee//. 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ñ mmaakkee mmoodduulleess i mmaakkee mmoodduulleess__iinnssttaallll. Zobacz Sound HOWTO i (mo¿e) Kernel HOWTO, ¿eby uzyskaæ wiêcej informacji. 33..44.. PPrrzzee³³aaddoowwaanniiee ssyysstteemmuu 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 //uussrr//ssrrcc//lliinnuuxx//ddrriivveerrss//ssoouunndd//lloowwlleevveell//aawwee__ccoonnffiigg..hh, 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± ssoouunndd do //eettcc//mmoodduulleess (w Debianie) lub dodaj liniê //ssbbiinn//mmooddpprroobbee --aa ssoouunndd do skryptu ³aduj±cego. 44.. TTeessttoowwaanniiee sstteerroowwnniikkaa dd¼¼wwiiêêkkuu 44..11.. //pprroocc//ddeevviicceess,, //ddeevv//ssnnddssttaatt Je¿eli masz obs³ugê d¼wiêku wbudowan± w j±dro, dostaniesz trochê po¿ytecznych informacji w czasie ³adowania systemu. Je¿eli obs³ugê d¼wiêku masz zainstalowan± jako ³adowalny modu³, mo¿esz otrzymaæ te same informacje (prawdopodobnie po deinstalacji modu³u d¼wiêku najpierw (mmooddpprroobbee --rr ssoouunndd)) wydaj±c polecenie ______________________________________________________________________ # 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) ______________________________________________________________________ Je¿eli masz wirtualny system plików //pprroocc, mo¿esz poszukaæ urz±dzenia d¼wiêku komend± ______________________________________________________________________ # cat /proc/devices Character devices: [...] 14 sound [...] ______________________________________________________________________ Nastêpnie upewnij siê, ¿e masz zainstalowane odpowiednie urz±dzenia w katalogu //ddeevv//. Zobacz Sound HOWTO, ¿eby uzyskaæ wiêcej informacji. Teraz zapytaj //ddeevv//ssnnddssttaatt o status modu³u d¼wiêku: ______________________________________________________________________ # 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 ______________________________________________________________________ Je¿eli nie widzisz takich informacji, to prawdopodobnie jest b³±d w konfiguracji. Zobacz co nie dzia³a, a wtedy wróæ do kroku Zaczynamy, sprawdzaj±c wszystko. 44..22.. WWyyjj¶¶cciiee -- UUrrzz±±ddzzeenniiee dd¼¼wwiiêêkkuu ttyyppuu ""RRAAWW"" Spróbuj zdobyæ plik ..aauu (Sun Workstation) albo plik RAW i wykonaj komendê ______________________________________________________________________ # cat bell.au > /dev/audio ______________________________________________________________________ lub ______________________________________________________________________ # cat sample > /dev/dsp ______________________________________________________________________ Powiniene¶ us³yszeæ zawarto¶æ pliku przez AAuuddiioo DDeevviiccee 00:: SSoouunndd BBllaasstteerr 1166 ((44..33)) 44..33.. WWyyjj¶¶cciiee -- SSyynntteezzaa OOPPLL--22//OOPPLL--33 Je¿eli chcesz u¿ywaæ syntezy FM OPL-2/OPL-3 do odgrywania plików MIDI, wypróbuj program ppllaayymmiiddii (zobacz Dodatek B). Uruchom go komend± ______________________________________________________________________ # playmidi -f dance.mid ______________________________________________________________________ lub ______________________________________________________________________ # playmidi -4 dance.mid ______________________________________________________________________ Pierwsza komenda uruchomi OPL-2, druga OPL-3. Je¿eli d¼wiêk ciê denerwuje nie wiñ playmidi: To synteza FM brzmi tak ¼le. Wyobra¼ sobie, ¿e mia³by¶ tylko sterownik OSS/Free: To by³aby jako¶æ d¼wiêku jak± móg³by¶ uzyskaæ (nie bior±c pod uwagê syntezy programowej). Na szczê¶cie masz SB AWE i mo¿esz u¿ywaæ mo¿liwo¶ci Wave Table ze Sterownikiem AWE. 44..44.. WWyyjj¶¶cciiee -- SSyynntteezzaa WWaavvee TTaabbllee Sterownik AWE jest dystrybuowany ze specjalnymi narzêdziami (aawweessffxx), ¿eby wykorzystaæ syntezê EMU 8000. Najpierw musisz za³adowaæ bank Sound Font do karty - nawet je¿eli chcesz u¿ywaæ sampli ROM! Mo¿esz wzi±æ te pliki z instalacji Windows - szukaj plików z rozszerzeniem **..ssffbb lub **..ssff22 Sample ROM s± w pliku SSYYNNTTHHGGMM..SSBBKK, prawdziwe sample s± w plikach SSYYNNTTHHGGSS..SSBBKK i SSYYNNTTHHMMTT..SSBBKK, oraz w SSAAMMPPLLEE..SSBBKK. Mo¿esz wzi±æ inne banki Sound Font przez ftp albo www, spróbuj na stronie EMU, stronie Creative Labs, albo na stronie z samplami Chaos, które s± naprawdê dobre (pamiêtaj, ¿eby przejrzeæ stronê Sterownika AWE). Spróbuj za³adowaæ standardowy zestaw GM (ROM) u¿ywaj±c komendy ______________________________________________________________________ # sfxload -i synthgm.sbk ______________________________________________________________________ i wtedy odtwórz plik midi dostarczany z SB AWE: ______________________________________________________________________ # drvmidi dance.mid ______________________________________________________________________ 44..55.. MMiikksseerr Uruchom swój ulubiony program miksera i uruchom go. Odegraj plik RAW i dwa pliki MIDI jednocze¶nie, wypróbowuj±c ustawienia miksera. Pobaw siê trochê, to powinno byæ bardzo ³atwe. Oto lista urz±dzeñ, oraz wyja¶nienie: · YYaammaahhaa OOPPLL--33 Synth albo FM · AAWWEE3322 DDrriivveerr Synth albo FM · SSoouunndd BBllaasstteerr 1166 ((44..1133)) PCM albo DSP · PPCC SSppeeaakkeerr ((nnaaddaall ¿¿yywwyy)) Spkr Inne ustawienia miksera odnosz± siê do CD-ROMu, mo¿liwie pod³±czonego do karty d¼wiêkowej, do g³ównej g³o¶no¶ci, basów, tonów wysokich i poziomu nagrywania na ró¿nych liniach wej¶ciowych. Mo¿esz okre¶liæ, które linie powinny byæ nagrywane. 44..66.. WWeejj¶¶cciiee -- SSaammpplloowwaanniiee zz uurrzz±±ddzzeenniieemm dd¼¼wwiiêêkkuu ttyyppuu ""RRAAWW"" Mo¿esz nagrywaæ z ró¿nych ¼róde³: z pod³±czonego CD ROMu, z mikrofonu pod³±czonego do wej¶cia MMIICC i z ka¿dego ¼ród³a, które mo¿na pod³±czyæ do wej¶cia LLIINNEE IINN. Ustaw mikser w poprawnej pozycji. Odegraj d¼wiêk i nagrywaj do pliku, czytaj±c z urz±dzenia d¼wiêku RAW, np. ______________________________________________________________________ # cdplay # dd bs=8k count=5 </dev/dsp >music.au 5+0 records in 5+0 records out # cat music.au >/dev/dsp ______________________________________________________________________ nagrywa i odtwarza piêæ sekund d¼wiêku z urz±dzenia wej¶ciowego. 44..77.. PPoorrtt MMIIDDII Przykro mi, nie ma jeszcze informacji o porcie MIDI! 55.. OOpprrooggrraammoowwaanniiee SStteerroowwnniikkaa AAWWEE 55..11.. ssffxxllooaadd Mo¿esz ³adowaæ próbki do DRAM'u na karcie d¼wiêkowej programem ssffxxllooaadd. Zauwa¿, ¿e mo¿esz ³adowaæ tylko jeden plik z próbkami na bank, z bankiem 0 jako standardowym. A wiêc po komendzie ssffxxllooaadd ssyynntthhggss..ssbbkk jedyne sample w twojej karcie s± samplami GS. Je¿eli chcesz za³adowaæ dodatkowe banki Sound Font musisz u¿yæ opcji --bb, np. ______________________________________________________________________ # sfxload synthgs.sbk # sfxload -b1 sample.sbk # drvmidi sfx.mid ______________________________________________________________________ Mo¿esz za³adowaæ standardowy bank Sound Font automatycznie, razem z instalacj± modu³u. Dodaj tak± liniê: ______________________________________________________________________ post-install sound /usr/bin/sfxload synthgm.sbk ______________________________________________________________________ do pliku //eettcc//ccoonnff..mmoodduulleess. Zobacz dokumentacjê, ¿eby uzyskaæ wiêcej detali o sfxload. 55..22.. ddrrvvmmiiddii Z programem ddrrvvmmiiddii mo¿esz u¿ywaæ Sterownika AWE do odgrywania plików MIDI. Po prostu podaj nazwê pliku midi po komendzie: ______________________________________________________________________ # drvmidi waltz.mid ______________________________________________________________________ Zobacz dokumentacjê, ¿eby uzyskaæ wiêcej szczegó³ów o ddrrvvmmiiddii. 66.. DDooddaatteekk 66..11.. DDooddaattkkoowwee iinnffoorrmmaaccjjee · LLiinnuuxx SSoouunndd HHOOWWTTOO Dobrze rozejrzyj siê w Sound HOWTO (dostêpne z sunsite.unc.edu i innych serwerów). Zawiera gar¶æ danych o kompilacji j±dra z obs³ug± d¼wiêku i wyja¶nia mnóstwo o urz±dzeniach d¼wiêkowych, aplikacjach itp. · LLiinnuuxx SSoouunndd PPllaayyiinngg HHOOWWTTOO Powiniene¶ popatrzeæ te¿ na Sound Playing HOWTO. Mówi o ró¿nych formatach d¼wiêku i aplikacjach do ich odgrywania. · AAWWEE DDrriivveerr FFAAQQ ¬ród³o: http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/awedrv- faq.html Je¿eli masz problemy z instalacj± Sterownika AWE lub z u¿ywaniem syntezy Wave Table w twojej karcie Sound Blaster, spójrz tutaj. · IISSAA PPnnPP FFAAQQ ¬ród³o: http://www.roestock.demon.co.uk/isapnptools/isapnpfaq.html Je¿eli masz problemy ze skonfigurowaniem karty ISA PnP, to jest twoja encyklopedia. 66..22.. ¬¬rróódd³³aa · iissaappnnppttoooollss ¬ród³o: http://www.roestock.demon.co.uk/isapnptools/index.html Je¿eli wysy³asz ³aty, wiadomo¶ci o b³êdach albo komentarze, wstaw ,,isapnp'' gdzie¶ w linii tematu, i wy¶lij list do isapnp@roestock.demon.co.uk. · aawweeddrrvv ¬ród³o: http://bahamut.mm.t.u-tokyo.ac.jp/~iwai/awedrv/ · JJ±±ddrroo LLiinnuuxxaa ¬ród³o: wszêdzie, gdzie mo¿esz znale¼æ Linuxa ::)) · OOSSSS//FFrreeee ¬ród³o: z ¼ród³ami j±dra Linuxa Informacje: http://www.4front-tech.com/usslite albo kopia europejska.} 66..33.. PPrrzzyykk³³aaddoowwyy iissaappnnpp..ccoonnff W pliku konfiguracyjnym ISA PnP wygenerowanym przez pnpdump numery urz±dzeñ twoich kart PnP pojawiaj± siê jako sekcje. W pliku poni¿ej by³a wykryta jedna karta (d¼wiêkowa), z czterema urz±dzeniami logicznymi: · LLDD 00: Urz±dzenie D¼wiêkowe · LLDD 11: Urz±dzenie IDE · LLDD 22: Urz±dzenie WaveTable · LLDD 33: Urz±dzenie Portu Gier Zostawi³em LLDD 11 nieskonfigurowane, poniewa¿ nie mam CD ROMu pod³±czonego do portu IDE w mojej karcie d¼wiêkowej. Je¿eli nie masz portów IDE w twoim SB, LLDD 11 bêdzie urz±deniem portu gier, a LLDD 33 siê nie pojawi. Zobacz sekcjê Zaczynamy, ¿eby uzyskaæ dok³adne (wa¿ne!) informacje o tym pliku. ______________________________________________________________________ # $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) ______________________________________________________________________ 77.. OOdd tt³³uummaacczzaa Oto pierwsza wersja polskiego AWE HOWTO. Je¿eli zauwa¿ysz jaki¶ b³±d, daj mi znaæ.