Низкоуровневое програмирование Главная - Реальный режим - Прерывания DOS - INT 21h: Сервис DOS. - Функция 29h: Разобрать имя файла и создать FCB.

Функция 29h: Разобрать имя файла и создать FCB.

Вход:
AH=29h
DS:SI = адрес строки с именем файла(если имя и расширение не задаются по умолчанию(см регистр AL))
ES:DI = адрес для создания FCB
AL =
бит 0 : ==1 отбросить ведущие разделители
бит 1 : ==1 диск по умолчанию
бит 2 : ==1 имя файла по умолчанию
бит 3 : ==1 расширение файла по умолчанию
биты 4-7 : резерв

Выход:
AL = 0 - успех, FCB не содержит обобщенных символов; 1 - успех, FCB содержит обобщенные символы; ffh - ошибка (нет такого диска)
DS:SI изменён, ES:SI остался прежним и содержит FCB

Примечание:
По адресу ES:DI находится структура FCB. В таблице приведён её вид:
БайтыСмысл
00 - текущий диск, 1 - Диск А, 2 - Диск В и т.д.
1-8Имя файла
Если имя короче 8-ми символов, то то оно дополняется пробелами справа
9-11Расширение файла
12-13Номер текущего блока данных
В блоке 128 записей
После отрытия файла = 0.
14-15Логический размер записи
После отрытия файла = 0.
16-19Размер файла
20-21Дата создания или изменения
22-31Резерв
32Номер текущей записи в текущем блоке
33-36Номер записи произвольного доступа