SysFn39/ru: Difference between revisions

From KolibriOS wiki
Jump to navigation Jump to search
No edit summary
 
(One intermediate revision by one other user not shown)
Line 6: Line 6:


Параметры:
Параметры:
* eax = 39 - номер функции
:* eax = 39 - номер функции
* ebx = 1 - номер подфункции
:* ebx = 1 - номер подфункции
Возвращаемое значение:
Возвращаемое значение:
* eax = [ширина]*65536 + [высота]
:* eax = [ширина]*65536 + [высота]
Замечания:
Замечания:
* Есть парная команда установки размеров фонового изображения - подфункция 1 функции 15. После которой, разумеется, следует заново определить само изображение.
:* Есть парная команда установки размеров фонового изображения - подфункция 1 [[SysFn15/ru|функции 15]]. После которой, разумеется, следует заново определить само изображение.
 
'''Константы для регистров:'''
::eax - SF_BACKGROUND_GET (39)
::ebx - SSF_SIZE_BG (1)


=== Подфункция 2 - прочитать точку с фонового изображения. ===
=== Подфункция 2 - прочитать точку с фонового изображения. ===


Параметры:
Параметры:
* eax = 39 - номер функции
:* eax = 39 - номер функции
* ebx = 2 - номер подфункции
:* ebx = 2 - номер подфункции
* ecx = смещение
:* ecx = смещение
Возвращаемое значение:
Возвращаемое значение:
* eax = 0x00RRGGBB - цвет точки, если смещение допустимо (меньше 0x160000-16)
:* eax = 0x00RRGGBB - цвет точки, если смещение допустимо (меньше 0x160000-16)
* eax = 2 - иначе
:* eax = 2 - иначе
Замечания:
Замечания:
* Не следует полагаться на возвращаемое значение в случае неверного смещения, оно может измениться в следующих версиях ядра.
:* Не следует полагаться на возвращаемое значение в случае неверного смещения, оно может измениться в следующих версиях ядра.
* Смещение точки с координатами (x,y) вычисляется как (x+y*xsize)*3.
:* Смещение точки с координатами (x,y) вычисляется как (x+y*xsize)*3.
* Есть парная функция установки точки на фоновом изображении - подфункция 2 функции 15.
:* Есть парная функция установки точки на фоновом изображении - подфункция 2 [[SysFn15/ru|функции 15]].
 
'''Константы для регистров:'''
::eax - SF_BACKGROUND_GET (39)
::ebx - SSF_PIXEL_BG (2)


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


Параметры:
Параметры:
* eax = 39 - номер функции
:* eax = 39 - номер функции
* ebx = 4 - номер подфункции
:* ebx = 4 - номер подфункции
Возвращаемое значение:
Возвращаемое значение:
* eax = 1 - замостить
:* eax = 1 - замостить
* eax = 2 - растянуть
:* eax = 2 - растянуть
Замечания:
Замечания:
* Есть парная функция установки режима отрисовки фона - подфункция 4 [[SysFn15/ru|функции 15]].
:* Есть парная функция установки режима отрисовки фона - подфункция 4 [[SysFn15/ru|функции 15]].
 
'''Константы для регистров:'''
::eax - SF_BACKGROUND_GET (39)
::ebx - SSF_MODE_BG (4)


{{System_functions}}
{{System_functions}}
[[Category: SysCalls]]
[[Category: SysCalls]]

Latest revision as of 13:12, 11 February 2016

Функция 39 - прочитать параметры фона.


Подфункция 1 - получить размер фонового изображения.

Параметры:

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

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

  • eax = [ширина]*65536 + [высота]

Замечания:

  • Есть парная команда установки размеров фонового изображения - подфункция 1 функции 15. После которой, разумеется, следует заново определить само изображение.

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

eax - SF_BACKGROUND_GET (39)
ebx - SSF_SIZE_BG (1)

Подфункция 2 - прочитать точку с фонового изображения.

Параметры:

  • eax = 39 - номер функции
  • ebx = 2 - номер подфункции
  • ecx = смещение

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

  • eax = 0x00RRGGBB - цвет точки, если смещение допустимо (меньше 0x160000-16)
  • eax = 2 - иначе

Замечания:

  • Не следует полагаться на возвращаемое значение в случае неверного смещения, оно может измениться в следующих версиях ядра.
  • Смещение точки с координатами (x,y) вычисляется как (x+y*xsize)*3.
  • Есть парная функция установки точки на фоновом изображении - подфункция 2 функции 15.

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

eax - SF_BACKGROUND_GET (39)
ebx - SSF_PIXEL_BG (2)

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

Параметры:

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

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

  • eax = 1 - замостить
  • eax = 2 - растянуть

Замечания:

  • Есть парная функция установки режима отрисовки фона - подфункция 4 функции 15.

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

eax - SF_BACKGROUND_GET (39)
ebx - SSF_MODE_BG (4)