http://www.phil.muni.cz/~letty/linuxfaq/linux+zvuk.html
Některé distribuce již mají zvukové ovladače přeloženy jako modul - např. nový RedHat 5.2 je má v balíku kernel, pak odpadá nutnost překládat jádro, stačí nastavit /etc/conf.modules nebo využít programu sndconfig, který základní nastavení vygeneruje sám. Pak už jen spustit příkaz modprobe sound nebo znovu nastartovat systém.
$ fuser -v /dev/dsp
/dev/dsp: USER PID ACCESS COMMAND
tranter 265 f.... tracker
podivejte se na /proc/pci: $ cat /proc/pci pokud je tam retezec 'Ensoniq', pak je to Vas SB 64 PCI - Creativ Labs totiz koupily firmu Ensoniq a jejich karty nazyvaji SoundBlaster, i kdyz se SoundBlasterem 16,32,64 AWE nemaji nic spolecneho... Zkuste odpovidajici ovladac, tj. bud es1370 nebo es1371 (viz. /proc/pci). [hp]
V menu Sound card support odpovědět M (module) na otázky
(READPORT 0x0203) (ISOLATE) (IDENTIFY *) (CONFIGURE CTL0042/46538 (LD 0 (INT 0 (IRQ 5 (MODE +E))) (DMA 0 (CHANNEL 1)) (DMA 1 (CHANNEL 5)) (IO 0 (BASE 0x0240)) (IO 1 (BASE 0x0330)) (IO 2 (BASE 0x0388)) (ACT Y) )) (CONFIGURE CTL0042/46538 (LD 1 (ACT Y) )) (CONFIGURE CTL0042/46538 (LD 2 (ACT Y) )) (CONFIGURE CTL0042/46538 (LD 3 (IO 0 (BASE 0x0620)) (IO 1 (BASE 0x0A20)) (IO 2 (BASE 0x0E20)) (ACT Y) )) (WAITFORKEY)/etc/conf.modules může vypadat takto:
alias char-major-14 sb post-install sound modprobe -k sb options sb io=0x240 irq=5 dma=1 dma16=5 mpu_io=0x330 post-install sb modprobe -k opl3 options opl3 io=0x388 post-install opl3 modprobe -k v_midi post-install v_midi modprobe -k awe_wave post-install awe_wave /usr/bin/sfxload /usr/share/sound/synthgm.sbk \ & /usr/bin/drvmidi /usr/share/sound/bach.mid
Další větev ovladačů tvoří ALSA - Advanced Linux Sound Architecture (We can make better sound), která má např. pro SB16/AWE podporu pro full duplex.
Pri kompilacii jadra linuxu (2.0.34) treba v casti Sound nastavit tieto parametre: Sound Card support: Yes Support for MAD16 and/or Mozart basedcards: Yes /dev/dsp and /dev/audio support: Yes MIDI interface support: Yes MAD16 audio I/O base: 530 MAD16 audio IRQ: 7 MAD16 audio DMA: 1 MAD16 second (duplex) DMA: 0 MAD16 MIDI I/O base: 330 MAD16 MIDI IRQ: 9 Audio DMA buffer size: 65536 (vsetky ostatne ovladace a typy zvukovych kariet musia byt vypnute !) Po uspesnom skompilovani kernelu a reboote by to malo vyzerat takto (samozrejme ze uvedene su len polozky tykajuce sa zvukovej karty): cat /proc/ioports: 0530-0533 : MAD16 WSS config 0330-0333 : SB MIDI cat /proc/interrupts: 7: 60690 SoundPort 9: 0 uart401 cat /proc/dma: 1: Sound System
Nastavení karty Yamaha OPL3SAx. Pro spravnou funkci této karty je nutno stahnout nove zvukove ovladače. 1/ stáhnou soubor ftp://ftp.opensound.com/ossfree38s9-linux20x_tar.tar.gz a nakopirovat ho do /usr/src Provést (dle README) cd /usr/src/linux/drivers mv sound sound.old cd /usr/src tar xvfz ossfree38s9-linux20x_tar.tar.gz cd /usr/src/linux 2/ překlad a sestavní Při použiti make menuconfig se mi karty neobjevily, použil jsem make xconfig (při dalším make menuconfig už běželo vše normalnně) je nutno nastavit : <M> Sound card support [*] Microsoft Sound System Support [*] FM synthesizer (YM3812/OPL-3) support (530) MSS/WSS I/O base 530, ......... (7) MSS/WSS IRQ 7 (0) MSS/WSS DMA 1, 2 or 3 (1) MSS/WSS second DMA (if possible ) 1, 2 or 3 Pak už klasicky: make dep make clean make zImage make modules atd .. (nezapomenout na lilo :-))) 3/ nastavit kartu. Před natažením modulu do paměti je nutno kartu nakonfigurovat pomoci progranmu isapnp např. isapnp isapnp.dat Zde je: # Trying port address 0203 # Board 1 has serial identifier 0f ff ff ff ff 00 08 a8 65 (DEBUG) (READPORT 0x0203) (ISOLATE) (IDENTIFY *) # Card 1: (serial identifier 0f ff ff ff ff 00 08 a8 65) # YMH0800 Serial No -1 [checksum 0f] # Version 1.0, Vendor version 0.0 # ANSI string -->OPL3-SA3 Sound Board<-- # # Logical device id YMH0021 (CONFIGURE YMH0800/-1 (LD 0 (IO 1 (BASE 0x0530)) (INT 0 (IRQ 7 (MODE +E))) (DMA 0 (CHANNEL 0)) (DMA 1 (CHANNEL 1)) (IO 2 (BASE 0x0388)) (ACT Y) )) # Logical device id YMH0022 (CONFIGURE YMH0800/-1 (LD 1 )) # End tag... Checksum 0x00 (OK) # Returns all cards to the "Wait for Key" state (WAITFORKEY) 4/ Aktivovat kartu /sbin/isapnp /etc/isapnp.dat (nebo kam jsme ho uložili) /sbin/insmod sound trace_init=1 Ja jsem tyto příkazy přidal do rc.local Kartu otestujeme například takto: /dev/sndstat pak by měla vypsat asi toto: OSS/Free3.8s9-980302 (Po září 7 17:11:28 CEST 1998 root, Linux ns.alo.cz 2.0.35 #19 Po září 7 16:42:48 CEST 1998 i586 unknown) Load type: Driver loaded as a module. Kernel: Linux ns.alo.cz 2.0.35 #21 Po září 7 17:13:21 CEST 1998 i586 Config options: 0 Installed drivers: Type 10: MS Sound System Type 27: Compaq Deskpro XL Type 1: OPL-2/OPL-3 FM Card config: MS Sound System at 0x530 irq 7 drq 0,1 OPL-2/OPL-3 FM at 0x388 drq 0 Audio devices: 0: MSS audio codec (CS4231) (DUPLEX) Synth devices: 0: Yamaha OPL-3 Midi devices: NOT ENABLED IN CONFIG Timers: 0: System clock 1: MSS audio codec (CS4231) Mixers: 0: MSS audio codec (CS4231) Jinak musi fungovat např wavplay, playmidi, x11amp atd. Dan ??
./insert detectměl by vám vypsat, co tam je skutečně za kartu
./insert kartaa posloucháte :-)))