Difference between revisions of "SysFn24/ru"

From KolibriOS wiki
Jump to navigation Jump to search
(Created page with ''''Функция 24''' - работа с проигрывателем компакт-дисков ---- === Подфункция 1 - начать проигрывать CD-audi...')
 
 
(5 intermediate revisions by one other user not shown)
Line 3: Line 3:
 
----
 
----
  
=== Подфункция 1 - начать проигрывать CD-audio. ===
+
=== Подфункция 4 - извлечь лоток привода диска. ===
 
 
Параметры:
 
* 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 - номер функции
+
:* eax = 24 - номер функции
* ebx = 1 - номер подфункции
+
:* ebx = 4 - номер подфункции
 
+
:* ecx = номер CD/DVD-диска
 +
:::(от 0=Primary Master до 3=Secondary Slave)
 
Возвращаемое значение:
 
Возвращаемое значение:
* eax = 0 - успешно
+
:* функция не возвращает значения
* eax = 1 - не определена база CD
 
 
 
 
Замечания:
 
Замечания:
* Предварительно нужно определить базовый порт CD вызовом подфункции 3 функции 21.
+
:* Функция поддерживается только для ATAPI-устройств (CD и DVD).
 +
:* При извлечении лотка производится разблокировка ручного управления
 +
::механизмом лотка.
 +
:* При извлечении лотка код производит очистку кэша соответствующего
 +
::устройства.
 +
:* Примером использования функции является приложение CD_tray.
  
=== Подфункция 4 - извлечь лоток привода диска. ===
+
'''Константы для регистров'''
 
+
::eax - SF_CD (24)
Параметры:
+
::ebx - SSF_EJECT_TRAY (4)
* eax = 24 - номер функции
 
* ebx = 4 - номер подфункции
 
* ecx = номер CD/DVD-диска (от 0=Primary Master до 3=Secondary Slave)
 
 
 
Возвращаемое значение:
 
* функция не возвращает значения
 
 
 
Замечания:
 
* Функция поддерживается только для ATAPI-устройств (CD и DVD).
 
* При извлечении лотка производится разблокировка ручного управления механизмом лотка.
 
* При извлечении лотка код производит очистку кэша соответствующего устройства.
 
* Примером использования функции является приложение CD_tray.
 
  
 
=== Подфункция 5 - загрузить лоток привода диска. ===
 
=== Подфункция 5 - загрузить лоток привода диска. ===
  
 
Параметры:
 
Параметры:
* eax = 24 - номер функции
+
:* eax = 24 - номер функции
* ebx = 5 - номер подфункции
+
:* ebx = 5 - номер подфункции
* ecx = номер CD/DVD-диска (от 0=Primary Master до 3=Secondary Slave)
+
:* ecx = номер CD/DVD-диска
 
+
:::(от 0=Primary Master до 3=Secondary Slave)
 
Возвращаемое значение:
 
Возвращаемое значение:
* функция не возвращает значения
+
:* функция не возвращает значения
 
 
 
Замечания:
 
Замечания:
* Функция поддерживается только для ATAPI-устройств (CD и DVD).
+
:* Функция поддерживается только для ATAPI-устройств (CD и DVD).
* Примером использования функции является приложение CD_tray.
+
:* Примером использования функции является приложение CD_tray.
  
 +
'''Константы для регистров:'''
 +
::eax - SF_CD (24)
 +
::ebx - SSF_INSERT_TRAY (5)
  
 
{{System_functions}}
 
{{System_functions}}
 
[[Category: SysCalls]]
 
[[Category: SysCalls]]

Latest revision as of 20:00, 16 January 2016

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


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

Параметры:

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

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

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

Замечания:

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

Константы для регистров

eax - SF_CD (24)
ebx - SSF_EJECT_TRAY (4)

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

Параметры:

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

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

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

Замечания:

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

Константы для регистров:

eax - SF_CD (24)
ebx - SSF_INSERT_TRAY (5)