Gaps

2026-01-13 09:30
vak: (Знайка)
[personal profile] vak
Доделываю в утилите floppy поддержку формата файлов IMG. Утилита уже умеет писать IMG на флопик и читать IMG с флопика. Но дьявол в деталях: разные форматы флопиков имеют разные "gaps", то есть зазоры, пустые места на дорожке.

В общих чертах, дорожка флопика состоит из нескольких секторов и промежутков между ними. Каждый сектор подразделяется на блок заголовка сектора и блок данных сектора.



Критичные зазоры здесь: gap2 и gap3. От их величины зависит стабильность обмена с флопиком на разных флоповодах. Gap4a и gap1 всегда одинаковые, а gap4b просто дополняет дорожку до нужного размера (до следующего индекса).

Вот зазоры gap3 для стандартных форматов, в строке Gap Length (Format). Это из описания чипа флопового контроллера FDC37C65C. Там же указано, что gap2 для всех форматов должен быть 22, а для 2.88M увеличенный до 41.



Зазоры для нестандартных форматов придётся смотреть в линуксном драйвере floppy.c. Полезно и в FreeBSD заглянуть, sys/fdcio.h.

Date: 2026-01-15 00:48 (UTC)
ufm: (Default)
From: [personal profile] ufm
Еще раз.
Ты запускаешь программу. Программа форматирует дорожку. После этого читает сектор, который должен быть битым. Если он не битый - это копия и программа выходит. Из себя. :)

Date: 2026-01-15 01:12 (UTC)
ufm: (Default)
From: [personal profile] ufm
Ну там никто и не обещал. :)