2014-04-11 76 views
1

我想使 「音樂」 或更好只輸出一點點 「嘟」 這一彙編程序:音樂與彙編 -/dev/dsp在pulseaudio?

play.s:

datei: 
.ascii "/dev/dsp" 

.globl play 
play: 
movl $5, %eax 
movl $datei, %ebx 
movl $1, %ecx 
int $0x80 
pushl %eax 
movl %eax, %ebx 
movl $4, %eax 
movl 12(%esp), %ecx 
movl 8(%esp), %edx 
int $0x80 

music.s:

.globl _start 
#.lcomm buffer, 100 
buffer: 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
.byte 0,255,0,255,0,255,0,255,0,255 
_start: 
pushl $buffer 
pushl $100 
loop: 
call play 
jmp loop 
movl $1, %eax 
movl $0, %ebx 
int $128 

我組裝成:

as music.s -o music.o as play.s -o play.o

和鏈接都與:

LD play.o music.o -o音樂

但後來我註冊的,我沒有 「的/ dev/DSP」 -file。 那麼在pulseaudio中有沒有類似/ dev/dsp?

回答

2

傳統/dev/dsp接口默認情況下未啓用。

要模擬它,請嘗試padsp(包含在PulseAudio中)或osspd

或者,將樣本數據輸出到標準輸出並將其輸入到aplay

+0

mhh那不是我的解決方案,我正在尋找。我需要一個類似的設備而不模擬/ dev/dsp。仿真/ dev/dsp不適用於我。 – Shibumi

+1

'osspd'使用* real *設備。 –

+0

好吧,我現在有一個dsp設備,但是由於堆棧溢出,我的代碼段錯誤。 osspd dsp設備必須具有寫鎖定或其他功能。 – Shibumi