Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
54
Добавлен:
03.06.2014
Размер:
2.63 Mб
Скачать

Чтение длинное с предварительной выборкой

Функция аналогична предыдущей, но сразу после вызова она немедленно возвращает управление. Драйвер выполняет подготовительные действия для операции чтения, такие, например, как позиционирование головки, однако операция чтения не выполняется.

Формат заголовка запроса:

// ---------------

// Код команды 130

// ---------------

#pragma pack(1)

typedef struct _ReadLongPrefetch

{

ReqHdr rh;

BYTE bAddressMode;

DWORD lpTransferAddress;

WORD wDataSize;

WORD wStartSector;

BYTE bDataReadMode;

BYTE bInterleaveSise;

BYTE bInterleaveSkip;

} ReadLongPrefetch;

Заполнение полей заголовка запроса такое же, как и для предыдущей функции.

Поиск

Команда выполняет позиционирование головки. Она возвращает управление немедленно, не дожидаясь завершения процесса позиционирования.

Формат заголовка запроса:

// ---------------

// Код команды 131

// ---------------

#pragma pack(1)

typedef struct _Seek

{

ReqHdr rh;

BYTE bAddressMode;

DWORD lpTransferAddress;

WORD wDataSize;

WORD wStartSector;

} Seek;

Заполнение полей заголовка запроса:

Поле

Описание

rh.wStatus

После вызова драйвера содержит слово состояния

bAddressMode

Режим адресации:

0 – режим HSG (по умолчанию);

1 –режимReadbook;

2-255 – зарезервировано

lpTransferAddress

Адрес буфера

wDataSize

Размер буфера

wStartSector

Номер начального сектора, должен быть равен нулю

Проигрывание звуковой дорожки

Команда запускает проигрывание звуковой дорожки начиная с указанного сектора.

Формат заголовка запроса:

// ---------------

// Код команды 132

// ---------------

#pragma pack(1)

typedef struct _Play

{

ReqHdr rh;

BYTE bAddressMode;

WORD wStartSector;

WORD wNumberOfSectors;

} Play;

Заполнение полей заголовка запроса:

Поле

Описание

rh.wStatus

После вызова драйвера содержит слово состояния

bAddressMode

Режим адресации:

0 – режим HSG (по умолчанию);

1 –режимReadbook;

2-255 – зарезервировано

wStartSector

Номер начального сектора

wNumberOfSectors

Количество секторов, которые нужно проиграть

Остановка проигрывания звуковой дорожки

Команда останавливает проигрывание звуковой дорожки.

Формат заголовка запроса:

// ---------------

// Код команды 133

// ---------------

#pragma pack(1)

typedef struct _StopPlay

{

ReqHdr rh;

} StopPlay;

Заполнение полей заголовка запроса:

Поле

Описание

rh.wStatus

После вызова драйвера содержит слово состояния

Возобновление проигрывания звуковой дорожки

Команда останавливает проигрывание звуковой дорожки.

Формат заголовка запроса:

// ---------------

// Код команды 136

// ---------------

#pragma pack(1)

typedef struct _RsumePlay

{

ReqHdr rh;

} RsumePlay;

Заполнение полей заголовка запроса:

Поле

Описание

rh.wStatus

После вызова драйвера содержит слово состояния

Соседние файлы в папке несколько программ