Программирование игр для Windows. Советы профессионала


Замечание - часть 7


ВЫХОД: АХ   = 1       Режим установлен.

АХ = 0      Режим не поддерживается данным драйвером.

Функция № 18: Адрес флага ожидания и адрес «семафора» DIGPAK

Эта функция сообщает прикладной программе адрес в памяти, по которому расположен внутренний флаг ожидания драйвера DIGPAK. Этот метод называется «семафором и позволяет программе постоянно отслеживать состояние флага, не выполняя вызова функции. По изменению состояния этого флага, ваша программа может принимать решение о помещении следующего звукового фрагмента в очередь ожидания.

int far *ReportPendingAddress(void);

Сообщает дальний адрес флага ожидания. Если ячейка памяти по этому адресу содержит значение 1, это означает, что следующий фрагмент все еще ожидает своей очереди. Когда значение ячейки становится равным 0, ваша программа может начать загрузку следующего фрагмента в двойной буфер. Использование «семафора» для определения момента загрузки следующего фрагмента предпочтительнее, чем вызов функции AudioPendingStatus.

int far *ReportSemaphoreAddress(void) ;

Сообщает адрес «семафора» DIGPAK. Возвращаемый указатель является дальним указателем на ячейку памяти внутри драйвера DIGPAK. Если значение не нулевое, то DIGPAK находится в активном состоянии и вы не должны в это время вызывать какие бы то ни было функции DIGPAK по аппаратному прерыванию, так как это, возможно, прервет исполнение кода самого драйвера.

ВХОД:  AX=699h

ВЫХОД: AX:DX      Дальний адрес флага ожидания.

BX:DX      Дальний адрес «семафора» DigPak. (При использовании DIGPAK.ASM в 32-разрядном режиме адресации, возвращаемый адрес будет преобразован в допустимый 32-разрядный адрес.)

Функция № 19: Установка режима записи                         

Функция позволяет вам установить DIGPAK в режим записи или воспроизведения звука. Вызов функции DigPlay после установки режима записи, обеспечивает запись звука в указанный буфер памяти. Функция поддерживается только для карт Sound Blaster.

ВХОД: AX-69AI1

DX=0 Включить режим записи. 

DX=1       Выключить режим записи.             




Начало  Назад  Вперед



Книжный магазин