Pregunta

Quiero hacer "música" o mejor simplemente emitir un pequeño "bip" con este programa ensamblador:

obras de teatro:

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

música.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

Reuní ambos con:

como music.s -o music.o como play.s -o play.o

y vinculado ambos con:

ld play.o música.o -o música

Pero luego registré que no tengo un archivo "/dev/dsp". Entonces, ¿hay algo similar a /dev/dsp en pulseaudio?

¿Fue útil?

Solución

El legado /dev/dsp La interfaz no está habilitada de forma predeterminada.

Para emularlo, prueba padsp (incluido con PulseAudio), o osspd.

Alternativamente, envíe los datos de muestra a stdout y canalícelos a aplay.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top