Функция форматирования дорожки $05 предназначена для начальной записи служебных данных на поверхность диска. При выполнении операции уничтожаются все ранее записанные на дорожке данные. За одно обращение к функции можно отформатировать только одну дорожку (или ее часть) — от указанного сектора и до конца дорожки. Для этой функции необходимо задать фактор чередования секторов и определенным образом подготовить буфер данных.

фактор чередования секторов определяет последовательность расположения секторов в пределах одной дорожки, фактор 1 означает последовательное расположение секторов в порядке их номеров — сначала сектор 1, за ним сектор 2 и т.д., т.е. в этом случае чередование отсутствует. Фактор 2 задает расположение секторов через один. Например, при 9 секторах на дорожке секторы будут следовать в порядке 1—6—2—7—3— 8—4—9—5. При последовательном расположении секторов может оказаться так, что процессор не будет успевать обрабатывать данные в смежных секторах за один оборот диска. В этом случае чередование секторов позволяет согласовать производительность процессора со скоростью обмена данными и за счет этого повысить общую скорость работы с диском.

Буфер данных для форматирования дискеты должен содержать NSec 4 — байтных элементов, где N5ec — количество форматируемых секторов. Иными словами, для каждого сектора необходимо подготовить 4 информационных байта, в которых указываются номера дорожки, головки, сектора и код длины сектора. Последний определяет размер сектора и может иметь следующие значения:

О - 128 байт 1-256 байт

2 - 512 байт

3 - 1024 байт

Порядок следования в этом буфере секторных номеров определяет фактор чередования. Например, если форматируются девять 512—байтных секторов на дорожке с номером $10, головка 1, фактор чередования 2, то буфер должен содержать следующие данные:

$10, $01, $01, $02, $10, $01, $06, $02, $10, $01, $02, $02, $10, $01, $07, $02, $10, $01, $03, $02, $10, $01, $08, $02, $10, $01, $04, $02, $10, $01, $09, $02, $10, $01, $05, $02

Перед обращением к функции форматирования дискеты таблица параметров дискеты должна содержать правильные параметры, а контроллер диска должен быть настроен на нужную скорость передачи данных.

Таблица параметров дискеты (ТПД) — это 11—байтный информационный блок, начало которого указывает вектор прерывания $1Е. Этот блок содержит некоторые константы, которые используются драйвером диска для управления дисководом. Структура ТПД:

type