SysFn24/ru

From KolibriOS wiki
Revision as of 23:25, 3 April 2010 by Art zh (talk | contribs) (Created page with ''''Функция 24''' - работа с проигрывателем компакт-дисков ---- === Подфункция 1 - начать проигрывать CD-audi...')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Функция 24 - работа с проигрывателем компакт-дисков


Подфункция 1 - начать проигрывать CD-audio.

Параметры:

  • eax = 24 - номер функции
  • ebx = 1 - номер подфункции
  • ecx = 0x00FRSSMM, где
    • MM = начальная минута
    • SS = начальная секунда
    • FR = начальный фрейм

Возвращаемое значение:

  • eax = 0 - успешно
  • eax = 1 - не определена база CD

Замечания:

  • Предварительно нужно определить базовый порт CD вызовом подфункции 3 функции 21.
  • В секунде 75 фреймов, в минуте 60 секунд.
  • Функция асинхронна (возвращает управление, когда началось проигрывание).

Подфункция 2 - получить информацию о дорожках.

Параметры:

  • eax = 24 - номер функции
  • ebx = 2 - номер подфункции
  • ecx = указатель на буфер для таблицы (максимум 8*64h+4 байт=100 дорожек)

Возвращаемое значение:

  • eax = 0 - успешно
  • eax = 1 - не определена база CD

Замечания:

  • Формат таблицы с информацией о дорожках такой же, как и для ATAPI-CD команды 43h (READ TOC), обычной таблицы (подкоманда 00h). Адреса возвращаются в формате MSF.
  • Предварительно нужно определить базовый порт CD вызовом подфункции 3 функции 21.
  • Функция возвращает информацию только о не более чем 100 первых дорожках. В большинстве случаев этого достаточно.

Подфункция 3 - остановить проигрываемое CD-audio.

Параметры:

  • eax = 24 - номер функции
  • ebx = 1 - номер подфункции

Возвращаемое значение:

  • eax = 0 - успешно
  • eax = 1 - не определена база CD

Замечания:

  • Предварительно нужно определить базовый порт CD вызовом подфункции 3 функции 21.

Подфункция 4 - извлечь лоток привода диска.

Параметры:

  • eax = 24 - номер функции
  • ebx = 4 - номер подфункции
  • ecx = номер CD/DVD-диска (от 0=Primary Master до 3=Secondary Slave)

Возвращаемое значение:

  • функция не возвращает значения

Замечания:

  • Функция поддерживается только для ATAPI-устройств (CD и DVD).
  • При извлечении лотка производится разблокировка ручного управления механизмом лотка.
  • При извлечении лотка код производит очистку кэша соответствующего устройства.
  • Примером использования функции является приложение CD_tray.

Подфункция 5 - загрузить лоток привода диска.

Параметры:

  • eax = 24 - номер функции
  • ebx = 5 - номер подфункции
  • ecx = номер CD/DVD-диска (от 0=Primary Master до 3=Secondary Slave)

Возвращаемое значение:

  • функция не возвращает значения

Замечания:

  • Функция поддерживается только для ATAPI-устройств (CD и DVD).
  • Примером использования функции является приложение CD_tray.