Курсовая работа: Программа воспроизведения произвольного звукового файла с использованием звукового адаптера (формат - wav)

stc ; если Sound Blaster неоткликается

ret ; вернуться с CF=1

good_reset:

clc ; если инициализация прошла успешно

ret ; вернуться с CF=0

dsp_reset endp

; процедура dsp_write

; посылает байт из BL в DSP

dsp_write proc near

mov dx, SBPORT+0Ch ; порт 22Ch - вводданных/команд DSP

write_loop: ; подождём готовности буфера записи DSP

in al, dx ; прочитаем порт 22Ch

Код исходной программы(продолжение)

and al, 80h ; и проверим бит 7

jnz write_loop ; если он не ноль - подождём ещё

mov al, bl ; иначе:

out dx, al ; пошлём данные

ret

dsp_write endp

; процедура hook_sbirq

; перехватывает прерывание звуковой карты и разрешает его

hook_sbirq proc near

mov ax, 3508h+SBIRQ ; AH=35h, AL=номер прерывания

int 21h ; получим адрес старого обработчика

mov word ptr old_sbirq, bx ; и сохраним его

mov word ptr old_sbirq+2, es

mov ax, 2508h+SBIRQ ; AH=25h, AL=номерпрерывания

mov dx, offset sbirq_handler ; установимновыйобработчик

int 21h

К-во Просмотров: 521
Бесплатно скачать Курсовая работа: Программа воспроизведения произвольного звукового файла с использованием звукового адаптера (формат - wav)