Difference between revisions of "SysFn80/ru"

From KolibriOS wiki
Jump to navigation Jump to search
(Created page with "'''Функция 80''' - работа с файловой системой с указанием кодировки. ''Параметры:'' : * eax = 80 : * ebx = указ...")
 
Line 7: Line 7:
 
''Возвращаемое значение:''
 
''Возвращаемое значение:''
 
: * eax = 0 - успешно; иначе код ошибки файловой системы
 
: * eax = 0 - успешно; иначе код ошибки файловой системы
: * в зависимости от подфункции может возвращаться значение и
+
: * в зависимости от подфункции может возвращаться значение и в других регистрах
    в других регистрах
 
  
 
''Общий формат информационной структуры:''
 
''Общий формат информационной структуры:''
Line 17: Line 16:
 
: * +16 = +0x10: dword: указатель на данные
 
: * +16 = +0x10: dword: указатель на данные
 
: * +20 = +0x14: dword: кодировка строки:
 
: * +20 = +0x14: dword: кодировка строки:
    1 = cp866
+
:: 1 = cp866
    2 = UTF-16LE
+
:: 2 = UTF-16LE
    3 = UTF-8
+
:: 3 = UTF-8
    0 = по умолчанию (поддерживает байт кодировки в начале строки)
+
:: 0 = по умолчанию (поддерживает байт кодировки в начале строки)
 
: * +24 = +0x18: dword: указатель на строку пути (заканчивается нулём)
 
: * +24 = +0x18: dword: указатель на строку пути (заканчивается нулём)
  
 
В остальном полностью соответствует [[SysFn70/ru|сисфункции 70]].
 
В остальном полностью соответствует [[SysFn70/ru|сисфункции 70]].

Revision as of 12:50, 5 January 2017

Функция 80 - работа с файловой системой с указанием кодировки.

Параметры:

* eax = 80
* ebx = указатель на информационную структуру

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

* eax = 0 - успешно; иначе код ошибки файловой системы
* в зависимости от подфункции может возвращаться значение и в других регистрах

Общий формат информационной структуры:

* +0: dword: номер подфункции
* +4: dword: смещение в файле или папке
* +8: dword: старшая часть смещения или поле флагов
* +12 = +0xC: dword: размер данных
* +16 = +0x10: dword: указатель на данные
* +20 = +0x14: dword: кодировка строки:
1 = cp866
2 = UTF-16LE
3 = UTF-8
0 = по умолчанию (поддерживает байт кодировки в начале строки)
* +24 = +0x18: dword: указатель на строку пути (заканчивается нулём)

В остальном полностью соответствует сисфункции 70.