質問

私はこのアセンブラプログラムで"音楽"以上のものを少し"ビープ音"を出力したいと思っています:

遊ぶ。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

音楽。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

私は両方をアセンブルしました:

音楽として。s-oの音楽。o 遊びとして。s-oプレイ。o

とリンクされている両方と:

ldプレイ。oの音楽。o-oミュージック

しかし、私は"/dev/dsp"ファイルを持っていないことを登録しました。 それで、pulseaudioの/dev/dspに似たものはありますか?

役に立ちましたか?

解決

ザ-レガシィ /dev/dsp インターフェイスはデフォルトでは有効になっていません。

それをエミュレートするには、試してみてください padsp (PulseAudioに含まれています)、または osspd.

または、サンプルデータをstdoutに出力し、それをパイプにパイプします aplay.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top