Ну я с этими фатами давно уже работаю и знаю как это всё внутри выглядит. Да и msx-dos2/Nextor, тоже есть и видел их внутренности. Плюс ещё для Профи PQ-DOS тоже есть исходники.
Да и математика работы с кластерами довольно простая и базируется на битовых сдвигах, кроме фат12, сдвигами деление на 3 сложнее сделать. Учитывая, что для взятия 1 кластера, приходится читать 2 и в зависимости от чётности кластера искомый будет либо левые полтора байта, либо правые. в общем тот ещё гемор.
а на fat16 таких операций не требуется. берём 2 байта с кодом следующего кластера, номер кластера преобразовываем в номер сектора, прибавляем стартовый сектор раздела относительно начала hdd и читаем. кол-во кластеров диска и фата на скорость никак не влияют, влияет фрагментированность файла. но и тут тоже есть пара хинтов. в основном все тормоза возникают только на механических дисках. на твердотельных дисках даже фрагментированность не затормаживает доступ.
математика 32:16 которая мне нужна была, она для утилиты форматирования. ну и вообще, было бы неплохо старые процедуры поменять. раз они проблемные оказались.