Sound Howto GR

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 42

LINUX Sound HOWTO

Jeff Tranter, tranter@pobox.com


v1.19, 23 1998
Linux .
, hardware , ported hardware ,
drivers , ,
.
Usenet news groups
(mailing lists).
______________________________________________________________________
Table of Contents

1.
1.1
1.2
1.3
1.4
1.5

Revision History

Feedback

2.
3. Hardware
3.1
3.2
3.3
3.4


Drivers

4.
4.1
4.2
4.3
4.4
4.5



Device files
Linux
Troubleshooting
4.5.1 1: compile.
4.5.2 2: drivers compile.
4.5.3 3: ;
4.5.4 4: dsp device ;
4.5.5 O

5.

5.1 sound device files;


5.2 ;
5.3 ;
5.4 ;
5.5 Error: No such file or directory for sound devices
5.6 Error: No such device for sound devices
5.7 Error: No space left on device for sound devices
5.8 Error: Device busy for sound devices
5.9 device busy errors!
5.10 (Partial playback)
5.11 MOD
5.12 compile compilation
5.13 SEGV
5.14 bugs drivers ;
5.15 sound driver ioctls() . ;
5.16 CPU resources ;
5.17 PAS16 Adaptec 1542 SCSI host adaptor
5.18 (samples) ;
5.19 SB16 IRQ 2, configure
5.20 "SoundBlaster AWE32" "SoundBlaster16 ASP";
5.21 Linux DOS, /
5.22 DOOM Linux

5.23
5.24
5.25
5.26
5.27
5.28
5.29
5.30
5.31
5.32
5.33
5.34
5.35
5.36

;
,
"" MS-DOS.
, 16-bit SoundBlaster,
Linux ;
compile driver module;

T VoxWare
Plug and Play ;
Sox/Play/Vplay "invalid block size 1024"
driver ;>
mixer module driver
root
IBM ThinkPad;

6.

______________________________________________________________________
1.
Linux Sound HOWTO.

Linux.
Linux,

.
pertaining to Linux.

, .

1.1.

(documentation) driver ,
Hannu Savolainen (hannu@voxware.pp.fi). Hannu
drivers
(utilities) Linux.
SGML Tools, HOWTO
formats
(source file).

1.2. Revision History

1
. mailing list "SOUND channel of Linux
activists"

1.2
. H archive sites

1.3
SGML. formats
Linuxdoc-SGML Matt Welsh's.
format,

1.4
minor tweaking of SGML.
PAS16 Adaptec1542A SCSI adaptor

1.5
2.5a driver
1.1. GUS-MAX.

1.6
"no space on device".
Hacker's Guide ""
directory. (bidirectional)
mode. "device busy".

1.7
ASP AWE32. VoxWare 2.9
. IRQ2.
Sound SCSI HOWTOs

1.8
DOS.
2.90 driver
. DOOM.

1.9
clone cards

1.10
HOWTO WWW,

, . DMA conflict
QIC tape driver. Sound Galaxy NX Pro
Logitech BusMouse

1.11
( ).
GPL
3.0 driver . drivers
.
configuration troubleshooting. HTML
links. format CD-ROM HOWTO

1.12
drivers 1.3.34. sound device.
1542 address 334 333.
Creative Labs Emu ASP. Web
sites Creative Labs MediaTrix

1.13
VoxWare.
.
Plug and Play.
block size. xconfig menuconfig.
modutils sound device. mailing list
vger. Web site .

1.14
Audio Excell DSP16 (
).
configure. HOWTO.
(mixer)
module . 2.0.
driver . root
sound device

1.15

. .
links .
.

1.16
Hannu Savolainen.
"-----"
. URL web . link
.

1.17
. GUS driver. Packet
radio modem. Linux Multimedia guide
. mini-HOWTOs.
IBM ThinkPad

1.18
.
MIPS.
.
root fuser

1.19
. LDP
GPL

1.3.

comp.os.linux.answers newsgroup. ,
ftp sites
<ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/>.
Hypertext Linux HOWTOs
World-Wide-Web sites,
<http://sunsite.unc.edu/LDP/>. Linux CD-ROM
HOWTOs, directory /usr/doc,
.
HOWTOs CDROM, ftp sites, .
HOWTO ,
Internet.

<ftp://ftp.ibp.fr/pub2/linux/french/docs/HOWTO/>.

<http://yebisu.ics.es.osaka-u.ac.jp/linux/>.

<http://www.psy.unipd.it/ildp/docs/HOWTO/Sound-HOWTO.html>.

<http://www.insflug.nova.es/howtos/online/sonido/sonido-COMO.html>.

<http://linux.ntcic.edu.tw/~yorkwu/linux/howto/sound/>.


<http://members.iWorld.net/mangchi/HOWTO/Sound-HOWTO.html>.
Linux HOWTOs

<http://sunsite.unc.edu/pub/Linux/docs/HOWTO/translations/>
<ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/translations/>.
,
.

1.4. Feedback
, , ,
HOWTO, email :
voulariba@hellug.gr : evris@hellug.gr
: ep@rocketmail.com
HOWTO
. , ,
, tranter@pobox.com,
.
, ,
Linux. ,
HOWTO,
.
Linux.
CD-ROM ,
.
. Linux
Documentation Project
. Linux HOWTO, Tim
Bynum <mailto:linux-howto@sunsite.unc.edu>,
.

1.5.
Copyright (c) 1995-1998 Jeff Tranter.

LDP <http://sunsite.unc.edu/LDP/COPYRIGHT.html>.

2.

,
.
,
.

,
. ,
.
(Analog to Digital
Converter (A/D ADC)) (voltages)
,
. ,
(D/A DAC)
,
.
,
, .
.

( Hertz).

.
,
bits. ,
.
8 16 bit
4000 44,000 .
(mono)
(stereo). FM (FM Synthesis)
. (.
, triangle, square). FM synthesis
hardware D/A ,
.
FM synthesis
.
.
(Wavetable Synthesis)
D/A
FM synthesis.
, ,
, CPU.
wavetable
synthesis.
(mixing),
(gain levels). MIDI
Musical Instrument Digital Interface,
hardware software
.
MIDI (bus) MIDI
(editing)
(playback). MIDI interface.
, MIDI on-board
. MOD format
.

( ). MOD
computers Amiga,
, Linux.
3. Hardware

interfaces
Linux.
Linux, .
driver (versioning).
Linux 2.0.33,
driver 3.5.4-960630.
Hannu Savolainen driver beta
driver
Linux.
<http://www.4front-tech.com/ossfree/new_cards.html>
(USA) <http://personal.eunet.fi/pp/voxware/new_cards.html>
(). driver

- .
/usr/src/linux/drivers/sound/Readme.cards
sound driver

.
HOWTO Linux
Intel.
driver
Alpha. ,
(conflict) - (I/O ports)
Alpha
i386, '
.
, driver
Linux PowerPC, .
(port) Linux
MIPs, MIPs EISA slots /
hardware . Linux-MIPs
.
Linux driver Atari
Amiga driver
Intel, (built-in) sound
hardware .
(port) Linux SPARC .
Amiga Atari, SPARC
hardware ,
driver ( Linux
/dev/dsp sound device SunOS!).
3.1.

Linux kernel sound


driver:
ATI Stereo F/X ( )
AdLib ( )
Ensoniq SoundScape (

Reveal Spea)
Gravis Ultrasound
Gravis Ultrasound ACE
Gravis Ultrasound Max
Gravis Ultrasound 16 bit
Logitech Sound Man 16
Logitech SoundMan Games
Logitech SoundMan Wave
MAD16 Pro (OPTi 82C928, 82C929, 82C930, 82C924 chipsets)
Media Vision Jazz16
MediaTriX AudioTriX Pro
Microsoft Windows Sound System (MSS/WSS)
Mozart (OAK OTI-601)
Orchid SW32
Personal Sound System (PSS)
Pro Audio Spectrum 16
Pro Audio Studio 16
Pro Sonic 16
Roland MPU-401 MIDI interface
Sound Blaster 1.0
Sound Blaster 16
Sound Blaster 16ASP
Sound Blaster 2.0
Sound Blaster AWE32
Sound Blaster Pro
TI TM4000M notebook
ThunderBoard
Turtle Beach Tropez ("" Plus)
Turtle Beach Maui
Yamaha FM synthesizers (OPL2, OPL3 OPL4)

6850 UART MIDI Interface


Plug and Play (PnP)
( PnP) .
, SoundBlaster16 PnP
SoundBlaster16. Soundscape PnP GUS
PnP. Plug and Play ,
.
,

driver:

Pro Audio Spectrum (original)


Pro Audio Spectrum+
(Sierra Aria based) Diamond


hardware (i.e. register level).

"SoundBlaster", '
Linux SoundBlaster driver.
MSS/WSS MAD16 driver.
SoundBlaster
Creative Labs, Creative's custom chips (..
SoundBlaster16 Vibra), MV Jazz16 ESS688/1688 based
SoundBlaster driver.
"16 bit SoundBlaster Pro"
SoundBlaster driver .
Linux SCSI
(.. ProAudioSpectrum 16)
(proprietary) interface CD-ROM (..
Soundblaster Pro). SCSI HOWTO
to CDROM HOWTO.
loadable module joystick,
,
.
drivers SCSI, CD-ROM, joystick ,
.
drivers WWW site
Hannu Savolainen .

3.2. Drivers
"" drivers ,
Linux,

driver .
Linux driver 4Front
Technologies.
Linux.
Web 4Front Technologies
<http://www.4front-tech.com/>.
Markus Mummert (mum@mmk.e-technik.tu-muenchen.de)
(package) driver Turtle Beach MultiSound
(classic), Tahiti, Monterey. :
"

.
wave synthesis, MIDI
(digital signal processor - DSP)
. ,
.
VoxWare s
1.0.9 1.2.1. ,
UN*X SysV386R3.2."


<http://www.cs.colorado.edu/~mccreary/tbeach>.
Kim Burgaard (burgaard@daimi.aau.dk) device driver
(utilities) MIDI interface Roland
MPU-401. Linux software map :
" device driver MIDI interfaces
Roland MPU-401 ( Roland SCC-1
RAP-10/ATW-10).
,
MIDI File player recorder.

0.11a.
, driver
IRQ (IRQ sharing policy) standards interface modules .
, ..
(beat) , interface
replay/record/overdub , ."

<ftp://sunsite.unc.edu/pub/Linux/kernel/sound/mpu401-0.2.tar.gz>.
Jaroslav Kysela driver
Gravis UltraSound.
<http://romeo.pf.jcu.cz/~perex/ultra>, home page Linux
UltraSound Project.
Linux modem packet

radio. 2.1.x driver


SoundBlaster Windows Sound System,
1200 bps AFSK 9600 bps FSK. Linux
AX25 HOWTO ( ,
-- callsign VE3ICH).
3.3.
driver ,
hardware .
. software driver
, , ,
CPU.
,
. ,
driver.
1.1,
<ftp://ftp.informatik.hu-berlin.de/pub/os/linux/hu-sound/>

3.4.

.
PC,
CPU. driver
PC, ,
hardware.

4.

Linux
:
1. .
2. .
3. device files.
4. Linux .

.

4.1.


hardware
.
jumpers
IRQ, DMA, . .
, ,
, . conflicts
(.. ethernet , SCSI,
) .
I/O port,
IRQ, DMA, DOS. ,
, ( PnP )

Linux.

4.2.
Linux precompiled .
.
compile drivers .
compile

.
Linux Kernel HOWTO
<http://sunsite.unc.edu/LDP/HOWTO/Kernel-HOWTO.html>
.
.
,
Readme
drivers ,
.
kernel sound driver directory,
/usr/src/linux/drivers/sound:
CHANGELOG
COPYING
Readme
Readme.aedsp16
Readme.cards
Readme.linux
Readme.modules
Readme.v30
experimental.txt


copying copyright restrictions

Audio Excel DSP 16

drivers
build driver loadable kernel module
3.0 driver

.
3 interfaces .
"make xconfig", user interface X11.
"make menuconfig" menu-based system

menu . ,
"make config", interface
.
"make xconfig"
"make menuconfig". /
.
, .
"/dev/dsp /dev/audio support"
(CONFIG_AUDIO) .

compile, "make config",
.
.
"" (
2.0.0). standalone
driver .
drivers " "
(miroSOUND, AWE32, AEDSP16 cards).
""
configuration
.
firmware. PSS, SM Wave,
AudioTrix Pro TurtleBeach Tropez/Maui.
.
"make xconfig".
"make menuconfig"
"" "" . "make
config" "" . ,
"" ,
"make config" .
"make menuconfig" "" .
"make menuconfig"
"" .
( )
.
driver loadable module
. driver .
,
kernel module.
make config,
"y"

Sound card support (CONFIG_SOUND) [M/n/y/?]

, compile
, ,

.

. ,
"yes" (PAS16) PAS16.
,
. drivers ( MPU-401)
conflict SCSI
boot.
.
"y" () "n" ().
"[Y/n/?]" "y" "[N/y/?]"
"n".
, Enter,
.
("?")
.
.

.
, .
Old configuration exists in /etc/soundconf. Use it [Y/n/?]
compile
, .
, "y".
,
"n"
.
ProAudioSpectrum 16 support [Y/n/?]
"y" a Pro Audio Spectrum 16,
ProAudio Studio 16 or Logitech SoundMan 16. 'y'
Media Vision
Logitech PAS16.

SoundBlaster support [Y/n/?]


"y" SoundBlaster
Creative Labs 100% ( Thunderboard SM
Games).
Readme.cards
.
"y'"
SoundBlaster.

Gravis Ultrasound support [Y/n/?]


"y" GUS GUS MAX. "n"
GUS driver .

MPU-401 support (NOT for SB16) [Y/n/?]


. MPU-401 interface

. ,
(natively)
drivers MPU-401. MPU-401
conflict. ,
MPU-401
MPU-401 .
,

Readme.cards. "y"
MPU-401 MIDI interface.
6850 UART Midi support [Y/n/?]
"n" ,
. 6850 UART interface .

PSS (ECHO-ADI2111) support [Y/n/?]


"y" Orchid SW32, Cardinal DSP16
PSS chipset (AD1848 codec +
ADSP-2115 DSP chip + Echo ESC614 ASIC CHIP).

16 bit sampling option of GUS (not GUS MAX) [Y/n/?]


"y" 16 bit sampling
daughtercard GUS. "n" GUS MAX.
,
GUS MAX.
GUS MAX support [Y/n/?]
"y" GUS MAX.

Microsoft Sound System support [Y/n/?]


, "y"
. "y"
Windows Sound System card Microsoft Aztech, SG 16 Pro
( NX16 Pro). "y"

. VoxWare,

Readme.cards. drivers MSS
conflict.

Ensoniq Soundscape support [Y/n/?]


"y" chipset Ensoniq
SoundScape.
Ensoniq, Spea Reveal ( Reveal
).

MediaTriX AudioTriX Pro support [Y/n/?]


"y" AudioTriX Pro.

Support for MAD16 and/or Mozart based cards?


"y" Mozart (OAK OTI-601)
MAD16 (OPTi 82C928 82C929) .
'
. ,
MAD16
Turtle Beach
(Tropez), Reveal ( ), Diamond (
).

Support for Crystal CS4232 based (PnP) cards [Y/n/?]


"y" chipset Crystal
CS4232.

Support for Turtle Beach Wave Front (Maui, Tropez) synthesizers


[Y/n/?]" "y"
.

SoundBlaster Pro support [Y/n/?]



SoundBlaster Pro SoundBlaster 16.
SoundBlaster Pro. "n"
, "y".

SoundBlaster 16 support [Y/n/?]


SoundBlaster 16
( AWE32).

Audio Excel DSP 16 initialization support [Y/n/?]


Audio Excel
DSP16. Readme.aedsp16
.

To
. "y"
. "n"
.

/dev/dsp and /dev/audio support (usually required) [Y/n/?]


"n", /dev/dsp /dev/audio,
A/D D/A. "y".
MIDI interface support [Y/n/?]

"n", devices /dev/midixx


MIDI
/dev/sequencer /dev/music.
MPU-401 / General MIDI.

FM synthesizer (YM3812/OPL-3) support [Y/n/?]


"y".

/dev/sequencer support [Y/n/?]


"n", /dev/sequencer
/dev/music

Do you want support for the mixer of SG NX Pro ?


"y" Sound Galaxy NX Pro
(extended
mixer functions).

Do you want support for the MV Jazz16 (ProSonic etc.) ?


"y" MV Jazz16.
Do you have a Logitech SoundMan Games [Y/n/?]
"y" Logitech SoundMan Games.
,
.
I/O, IRQ DMA. ,

.
DSP
"" (microcode) .
a .h
driver compile. ,

Readme.cards.
:

The sound driver is now configured.


Save copy of this configuration to /etc/soundconf [Y/n/?]

"y"
compile ,
driver .
driver ,

/usr/include/sys/soundcard.h /usr/include/sys/ultrasound.h
links /usr/include/linux,
#include <linux/soundcard.h>
#include <linux/ultrasound.h>, .
compile .

4.3. Device files


, device file entries
sound devices.
Linux.
.
(
), device files .

% ls -l /dev/sndstat
crw-rw-rw- 1 root

root

14,

6 Apr 25 1995 /dev/sndstat

device files
. driver
compile devices ( '
).
, device files,
shell script
Readme.linux directory
/usr/src/linux/drivers/sound, root.
, Linux script
/dev/MAKEDEV ' .
PC speaker sound driver,

device files.

4.4. Linux

drivers .
(
).
, on powerup (

, dmesg):

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


jumper settings ( ).

loadable sound driver module (
, .. "insmod sound trace_init=1).
driver link ,
"Sound initialization started" "Sound initialization
complete". , driver
. ,
compile
driver .
"Sound initialization
started" "Sound initialization complete",
. ,
driver, , I/O port
is bad PnP .
driver
(warnings) (boot).

driver .
device file /dev/sndstat.
status device file driver
driver
. :

% cat /dev/sndstat
Sound Driver:3.5.4-960630 (Sat Jan 4 23:56:57 EST 1997 root,
Linux fizzbin 2.0.27 #48 Thu Dec 5 18:24:45 EST 1996 i586)
Kernel: Linux fizzbin 2.0.27 #48 Thu Dec 5 18:24:45 EST 1996 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
Midi devices:
0: Sound Blaster 16
Timers:
0: System clock
Mixers:
0: Sound Blaster

. "No
such file or directory" device
files ( 4.3). "No such device" driver
link .
4.2 .
"Card config:" /dev/sndstat
(: "(SoundBlaster at 0x220 irq 5 drq 1,5)"),
,
.
.
,
, ..:

% cat endoftheworld >/dev/dsp


% cat crash.au >/dev/audio

( ">" ).
, cat
, .
( )
.

audio devices /dev/sndstat. audio

devices ,
.
"I/O error",

"dmesg". .
"Sound: DMA (output) timed out - IRQ/DRQ
config error;". driver
interrupt .
IRQ DMA
driver .
DMAs IRQs
.

driver.
" SoundBlaster (Pro/16)"
driver SoundBlaster.
,
(, , newsgroup
comp.os.linux.hardware).

url="ftp://tsx-11.mit.edu/pub/linux/packages/sound/snddata-0.1.tar.Z">
.
(sound input),
:

# 4 /
EDT% dd bs=8k count=4 </dev/audio >sample.au
4+0 records in
4+0 records out
# play back sound
% cat sample.au >/dev/audio

,
' .
mixer
.
, ,
, D/A A/D hardware software
. ,
.

4.5. Troubleshooting

HOWTO, .
.
, .

4.5.1. 1:
compile.
date stamp
compile .
uname:

% uname -a
Linux fizzbin 2.0.0 #1 Tue Jun 4 16:57:55 EDT 1996 i386

/proc/version:

% cat /proc/version
Linux version 2.0.0 (root@fizzbin) (gcc version 2.7.0) #1 Tue Jun 4 16:57
:55 EDT 1996

date stamp compile


, . reboot;
LILO (
/etc/lilo/install); , boot
, ;

4.5.2. 2: drivers
compile.
,
"dev/sndstat" .
o
build . ,
configuration to .

4.5.3. 3: ;

. .
scroll ,
dmesg:

% dmesg

% tail /var/adm/messages
.
. DOS
hardware ,
.
, ,
driver Linux.
""
DOS driver.
DOS driver
. (soft boot) Linux
Control-Alt-Delete. I/O ,
DMA IRQ Linux DOS.
Readme.cards
driver
.
,
Linux drivers .

.
4.5.4. 4: dsp device ;
/dev/audio
dd .
.
, IRQ
DMA conflict hardware (
Linux driver
).
hardware.
DOS, ,
.

4.5.5. O
.
,
:

HOWTO
,
web Hannu Savolainen's Readme

newsgroup comp.os.linux
Usenet newsgroup ( comp.os.linux.hardware
.
"sound" subject
)
Web/Usenet search engine

.
<http://www.altavista.digital.com>
Linux (
,
)
mail driver
mail Sound HOWTO
emacs Esc-x doctor :-)

Linux.
Linux Software Map, Internet archive sites, /
Linux CD-ROM .

:
format (.. Sox)
(mixer utility) (.. aumix xmix)
player/recorder (.. play wavplay)
MOD file player (.. tracker)
MIDI file player (.. playmidi)
text-based GUI-based
. esoteric
(.. )
.

5.
Usenet news

groups mailing lists.


web OSS
driver .

5.1. sound device files;


"" device files,
Linux .
/dev/audio
link /dev/audio0
/dev/audio0
audio device Sun workstation ( ,
Sun ioctl interface, u-law)
/dev/audio1
audio device (
)
/dev/dsp
link /dev/dsp0
/dev/dsp0
(digital sampling)
/dev/dsp1
(digital sampling)
/dev/mixer
link /dev/mixer0
/dev/mixer0
(mixer)
/dev/mixer1
(mixer)
/dev/music
high-level sequencer interface
/dev/sequencer
low level MIDI, FM, GUS access
/dev/sequencer2/
link /dev/music
/dev/midi00
raw MID
/dev/midi01
MIDI
/dev/midi02
MIDI

/dev/midi03
MIDI
/dev/sndstat
driver
PC speaker driver devices :

/dev/pcaudio
/dev/audio
/dev/pcsp
/dev/dsp
/dev/pcmixer
/dev/mixer
5.2. ;
Sun workstation (.au)
/dev/audio device. raw samples /dev/dsp.
, ,
play ,

, .
wavplay vplay ( snd-util)
WAV files. ,
WAV Microsoft ADPCM. ,
play ( Lsox)
WAV 16 bit.
splay snd-util

command line.

5.3. ;
/dev/audio /dev/dsp sampled
data .
vrec ,
, .
(mixer) .

5.4. ;

o driver

SoundBlaster, SoundBlaster/Pro,
SoundBlaster16, MPU-401 MSS. SoundBlaster
macros SB2_BASE,
SB2_IRQ, SB2_DMA ( ) SB2_DMA2
editr local.h. SoundBlaster
PAS16.
2.0.x make
config, local.h,
/usr/include/linux/autoconf.h.
:

#define
#define
#define
#define
#define
#define

SBC_BASE 0x220
SBC_IRQ (5)
SBC_DMA (1)
SB_DMA2 (5)
SB_MPU_BASE 0x0
SB_MPU_IRQ (-1)

(
):

#define
#define
#define
#define

SB2_BASE 0x330
SB2_IRQ (7)
SB2_DMA (2)
SB2_DMA2 (2)

drivers instances:
GUS ( driver)
MAD16 ( hardware)
AudioTrix Pro ( hardware)
CS4232 ( hardware)
5.5. Error: No such file or directory for sound devices
device files driver .
device files. device

(device) ( CD-ROM Linux
device files ).

5.6. Error: No such device for sound devices


files,

driver
I/O hardware.
compile
driver hardware
setup.

5.7. Error: No space left on device for sound devices


/dev/audio /dev/dsp
device files. ,
partition .
script " Device files"
.
Linux 2.0
(RAM) device.
O driver (8k)
RAM DMA.
16M .
compile
C
device :

main() {
int i;
char mem[500000];
for (i = 0; i < 500000; i++)
mem[i] = 0;
exit(0);
}

5.8. Error: Device busy for sound devices



.
.
fuser :

% fuser -v /dev/dsp
/dev/dsp:

USER
tranter

PID ACCESS COMMAND


265 f.... tracker

, fuser
(process) 265 .

. fuser root
.

5.9. device busy errors!


Brian Gough, SoundBlaster
DMA 1 potential
(conflict) tape driver QIC-02, DMA
1, "device busy". FTAPE,
driver. FTAPE-HOWTO driver
QIC-02 FTAPE; driver
QIC-117 .
QIC-117 QIC-02, FTAPE o driver
.

5.10. (Partial playback)


(sound sample)

o "missing IRQ" "DMA timeout".
IRQ DMA.
jumper settings
conflict .
(sound samples)
("loop"). IRQ conflict.

5.11. MOD
MOD files CPU power.

(real time).
:
mono
mode


(.. Gravis UltraSound)
Gravis UltraSound,
mod file players GUS (..
gmod).

5.12. compile compilation


1.0c driver
ioctl() .

driver . toReadme driver
.

soundcard.h ultrasound.h compile .
.

5.13. SEGV

5.14. bugs drivers


;
Readme CHANGELOG
driver .

5.15. sound driver ioctls() . ;

Hacker's Guide to VoxWare,


draft . H draft
2,
<ftp://nic.funet.fi/pub/Linux/ALPHA/sound/>.
directory ""
directory. "cd" directory
FTP "dir", .
,
Web site 4Front Technologies.
Linux Multimedia Guide,
"".

5.16. CPU resources


;

, :
PCM sampling FM

hardware
o I/O , CPU clock, cache, .
, 386
FM synthesized 8 bit .
, , MOD .
44kHz
40% 486/50 386/25
22 kHz ( 8 bit
SoundBlaster). Gravis UltraSound
hardware,
.

.

sox
( CPU on board FPU). driver
.

5.17. PAS16 Adaptec 1542 SCSI host adaptor


( seeker@indirect.com)
To Linux 1542 330 (default) 334,
PAS MPU-401 330.
MPU-401 software,
conflict 1542 default .
1542 334
.
, 1542 o PAS-16 16-bit DMA, '
(sample) 16-bit 44 KHz stereo
SCSI drive 1542, .
DMAs RAM refresh,
dread ``PARITY ERROR - SYSTEM HALTED'',
.
QIC-117 tape drives
on/off (bus) 1542
on . SCSISEL.EXE
BBS Adaptec internet,
BUS ON BUS OFF

, .
SCSISEL EEPROM, '
' patch DOS driver CONFIG.SYS,
Linux ( DOS patch).
- Symphony chipsets
I/O ,
. boards
PAS-16.
Media Vision's BBS SYMPFIX.EXE
bit
Symphony,
. :

,
,
.
Young Microsystems boards
$30 (US).
( ). '
ProAudio's bus interface chip.
$120 6MHz
AT. 25-40MHz 386/486,
12MHz
.
chipset
motherboard , BIOS,
.
refresh (hidden synchronous), 1542
DMA () I/O.
Media Vision
Symphony .
, - 3 4
. ,
hardware,
.

5.18. (samples)
;
hardware,
. .
"bidirectional mode" Hacker's Guide to Voxware
.

5.19. SB16 IRQ 2, configure

'286 , interrupt IRQ 2


interrupt controller. IRQ 9.

5.20. "SoundBlaster AWE32" "SoundBlaster16 ASP";


, Creative Labs
' . o
AWE driver Linux 2.1.x.

5.21. Linux DOS, /



soft reboot DOS.
,
CONFIG.SYS.

software IRQ DMA. A
Linux MS-DOS/Windows,
.
(..
hardware reset).

reset
(.. Ctrl-Alt-Del).
H
IRQ DMA MS-DOS Linux (
DOS :-).

5.22. DOOM Linux


DOOM ID Linux
.
driver 2.90
. real-time "DOOM mode".
16-bit. 8-bit

<ftp://sunsite.unc.edu/pub/Linux/games/doom>.
DOOM ,
( sndserver)
.
default DOOM ( DOS).
musserver DOOM

Linux.
url="ftp://pandora.st.hmc.edu/pub/linux/musserver.tgz">.
5.23. ;

slots
. ,
(
).

(.. ) .

.
, kernel command line option no-hlt
.
halt idle process loop.
,
append="no-hlt" LILO
configuration.

5.24. ,
,
:

(.. )


,
MS-DOS .
DMA '
. ,
DMA .
5.25. ""
MS-DOS.
" SoundBlaster"
Linux
driver SoundBlaster.
(.. "16 bit SB Pro compatible" "SB compatible
16 bit") SoundBlaster mode "hack"
DOS .
16 bit native mode
Linux (2.0.1 ).

( )
SoundBlaster mode.
Mwave.

5.26. , 16-bit SoundBlaster, 8-bit mode Linux.


16-bit SoundBlaster
8-bit SoundBlaster Pro.
16-bit mode SoundBlaster 16
driver Linux.
16-bit mode
driver MAD16 MSS/WSS.
5.27. Linux ;
sites Linux
:
<ftp://sunsite.unc.edu:/pub/Linux/kernel/sound/>
<ftp://sunsite.unc.edu:/pub/Linux/apps/sound/>
<ftp://tsx-11.mit.edu:/pub/linux/packages/sound/>
<ftp://nic.funet.fi:/pub/Linux/util/sound/>
<ftp://nic.funet.fi:/pub/Linux/xtra/snd-kit/>
<ftp://nic.funet.fi:/pub/Linux/ALPHA/sound/>
5.28. compile driver
module;

o driver kernel
loadable module.
/usr/src/linux/drivers/sound/Readme.modules
/usr/src/linux/Documentation/modules.txt ( /usr/src/linux/README)
.

5.29.
;
oplbeep ,
<ftp://sunsite.unc.edu/pub/Linux/apps/sound/oplbeep-alpha.tar.gz>

beep,
url="ftp://sunsite.unc.edu/pub/Linux/kernel/patches/misc/modreq_beep.tgz">
modutils - patch

.
,

.

5.30. T VoxWare
;
drivers
Unix Intel,
Linux.
1996 "VoxWare".
VoxWare Incorporated,
. driver
OSS/Free.
O Open Sound System (OSS) driver
Unix, 4Front
Technologies. , OSS/Free
Linux.

driver TASD
(Temporarily Anonymous Sound Driver) USS (Unix Sound System).
Web 4Front
Technologies <http://www.4front-tech.com/>. review
OSS/Linux 1997 Linux Journal.

5.31. Plug and Play ;


Plug and Play Linux
2.1. , ,
Plug and Play. A
Pentium Plug and Play BIOS,
. Linux driver
I/O ,
IRQ, DMA BIOS.
Plug and Play Linux
.
Web site Red Hat <http://www.redhat.com/> (
Linux ).
Windows95,
device manager ,
soft boot Linux LOADLIN.
Windows95 Linux

.
DOS, icu
utility SoundBlaster16 PnP
DOS, soft boot Linux
LOADLIN. , DOS
Linux .
OSS driver SoundBlaster16
PnP. driver 4Front Technologies.

5.32. Sox/Play/Vplay "invalid block size 1024"


driver 1.3.67
()
SNDCTL_DSP_GETBLKSIZE ioctl 4096.
sndutil-3.x.tar.gz ( <ftp://ftp.4front-tech.com/ossfree>.)
. driver

4096 bytes
.

5.33. driver ;>


. O driver
. To configure driver
(dependencies) .

.
: '

driver ( " ".

5.34. mixer
module driver
driver loadable module
kerneld
. -
module, mixer default
.
(.. SoundBlaster16) . Markus Gutschke
((gutschk@uni-muenster.de) .
/etc/conf.modules :

options sound dma_buffsize=65536 && /usr/bin/setmixer igain 0 ogain 0 vol


75

(
setmixer) driver .
dma_buffsize (dummy)
option .
mixer
/.
compile driver
mixer
mixer
/etc/rc.d/rc.local.

5.35. root
script sound device files
Readme.linux, default devices
root.
. ,
log in Linux PC
.
, permissions
script.
default , o .
.

5.36. IBM ThinkPad;



mwave IBM ThinkPad laptop computer Linux
<http://www.screamin.demon.co.uk/>.

6.
A CD-ROM SCSI interface, Linux
SCSI HOWTO Linux CD-ROM HOWTO
.
Sound Playing HOWTO
Linux.
Ultrasound Plug'n'play Mini-HOWTO
Linux plug and play Gravis Ultra.

Linux SoundBlaster 16 PnP Mini-HOWTO


Linux plug and play SoundBlaster 16.
Linux SoundBlaster AWE64 PnP Mini-HOWTO
Linux plug and play SoundBlaster AWE64.
the Hacker's Guide to VoxWare,
<ftp://nic.funet.fi/pub/Linux/ALPHA/sound/>.
'
<http://www.4front-tech.com/pguide>,
/dev/sequencer .
FAQs Usenet newsgroup news.announce

<ftp://rtfm.mit.edu/pub/usenet/news.answers>:

PCsoundcards/generic-faq (Generic PC Soundcard FAQ)


PCsoundcards/soundcard-faq (comp.sys.ibm.pc.soundcard FAQ)
PCsoundcards/gravis-ultrasound/faq (Gravis UltraSound FAQ)
audio-fmts/part1 ( Audio file format)
audio-fmts/part2 ( Audio file format)
FAQs mailing lists archive sites
. Usenet news groups
/ :
alt.binaries.sounds.* ( groups )
alt.binaries.multimedia ( Multimedia )
alt.sb.programmer ( Soundblaster)
comp.multimedia ( )
comp.music ( / )
comp.sys.ibm.pc.soundcard.* ( groups
IBM/PCs)
Web site
<http://viswiz.gmd.de/MultimediaInfo/>. Creative Labs Web site
<http://www.creaf.com/>. To Web site MediaTrix
<http://www.mediatrix.com/>.
H Linux mailing list ""
, .
, "help" message body
majordomo@vger.rutgers.edu. mailing lists
.,
.

, driver
Readme
driver . directory
/usr/src/linux/drivers/sound.
driver ,
Hannu Savolainen email hannu@voxware.pp.fi. , , Web site
<http://personal.eunet.fi/pp/voxware>. Web site

, , bugs.
OSS, driver Linux
Unix, Web
4Front Technologies, <http://www.4front-tech.com/>.
Linux Software Map (LSM)
Linux.
hardware LSM keywords
sound. LSM FTP sites,
<ftp://sunsite.unc.edu/pub/Linux/docs/LSM/>.
Linux Documentation Project Linux,
Linux Installation Getting Started.
anonymous FTP Linux archive sites
.
, :
Linux ( CD-ROM
),
Linux Multimedia Guide, ISBN 1-56592-219-0,
O'Reilly and Associates. ,
.
, 800-998-9938 Web
<http://www.ora.com/catalog/multilinux/noframes.html>
<http://www.pobox.com/~tranter>.

You might also like