# Утилита `format` для KolibriOS ## Описание Утилита `format` — это простая консольная программа для операционной системы KolibriOS, предназначенная для форматирования дисков в файловую систему FAT32. Программа разработана на ассемблере FASM и оптимизирована для минимального использования ресурсов, что соответствует философии KolibriOS. ## Функциональность - Форматирование дисков (например, `/fd2/1`) исключительно в FAT32. - Принимает путь к устройству как единственный параметр через командную строку. - Выводит сообщения об ошибках или помощь при некорректных входных данных. ## Установка и использование 1. Сохраните исходный код как `format.asm`. 2. Скомпилируйте с помощью FASM: `fasm format.asm`. 3. Поместите сгенерированный файл `format` в директорию `/sys/disk/` на образе KolibriOS. 4. Запустите в shell: `format /fd2/1`. ## Пример использования - Форматирование флоппи-диска: `format /fd2/1` - После запуска программа запросит подтверждение (введите `Y` для продолжения). ## Ограничения - Текущая версия использует гипотетический системный вызов (`int 0x40, eax=70`) для форматирования. Для полной функциональности требуется интеграция с реальными драйверами диска (например, через `int 0x13` или API KolibriOS). - Поддерживает только FAT32; другие файловые системы не реализованы. - Не проверяет размер диска или совместимость (рекомендуется тестировать на подходящих носителях). ## Требования - Установленный компилятор FASM. - Доступ к системе KolibriOS с правами на запись в `/sys/disk/`. ## Автор Разработано для демонстрации с использованием рекомендаций xAI Grok. ## Дата создания 14 сентября 2025 г., 07:38 AM CEST. ## Самый простой способ: ``` ls -l floppy.img mkfs.vfat -F 12 floppy.img file floppy.img ``` KolibriOS использует образ дискеты 1.44 MB с жёстко заданной структурой FAT12. Несколько нюансов: 1. Структура дискеты 1.44 MB Стандартная 3.5″ дискета 1.44 MB имеет: 80 дорожек × 2 стороны × 18 секторов × 512 байт = 1 474 560 байт (~1.44 MB) FAT12 там рассчитан на точно такое количество секторов, включая: загрузочный сектор (boot sector), таблицы FAT, корневой каталог, данные файлов. То есть KolibriOS ожидает ровно 1 474 560 байт в образе, иначе: FAT12 таблица будет “неправильной”, смещения файлов и загрузчика не совпадут, загрузчик откажется запускаться. 2. Почему 999 KB не работает Твой образ 999 KB = 1 022 976 байт, меньше чем стандартная 1.44 MB. FAT12 на такой маленькой “дискете” технически создаётся, но KolibriOS не увидит нужное количество секторов и дорожек, поэтому не загрузится. ✅ Вывод: Для KolibriOS образ должен быть ровно 1.44 MB (1 474 560 байт). Меньший размер (999 KB) — не поддерживается.