В меня не верили, говорили что возможно это даже невозможно, или не будет работать. Но таки это работает, и не только в эмуляции, но и на реальном железе.
Образ, полученный вчера, записан на флешку и успешно стартует.
В предыдущих сериях:
Ещё у людей возникла путаница (в этом видимо я виноват), поскольку проблемы у меня было две и они были разными:
- Проблема с определением и работы носителя в BIOS и системе. Не все флешки корректно работают.
- Проблема с созданием рабочего образа DOS для 4 ГБ носителя средствами linux.
Поэтому кратко распишу в виде отдельных глав как я разобрался и решил все проблемы. Главная из которых для меня была - это использовать весь объём карточки 4 ГБ для DOS.
Создание образа MS-DOS без регистрации и sms
Как я понял из общения с людьми, создание образа диска - весьма актуальная задача. В предыдущей статье
"Как создать средствами linux загрузочный образ диска с DOS 6.22" я рассказал, что устанавливал DOS в qemu с дискеток, и там по умолчанию получил диск 500 МБ. И, мне кажется, как-то слишком расточительно 4 гига усекать до 500 метров.
Поэтому я тщательно гуглил, и пытался понять, почему же у меня не получается сделать загрузочный раздел 2 гигабайта, когда ДОС умеет работать с такими большими объёмами. Короче говоря, сначала я думал что надо сделать диск меньшего объёма, потом проверил что это не важно.
Короче говоря, я сделал образ загрузочной дискетки, переписал туда утилиты format и fdisk, разметил всё. Даже без магий с недокументированными возможностями типа
fdisk /mbr
усё прекрасно заработало. Просто разбил первичную партицию с дикетки, создал вторичные разделы. И вуаля, у меня есть два диска на 2 гига. Усё работает.
Не получилось в прошлый раз, так как я делал с другого диска (пёс знает что там ДОС мутит, но вот так нельзя). Ток с дискеток. А потом подключай второй винт и копируй всё нужное-ненужное.
Итого, образа я научился делать просто и быстро, пускай и с промежуточной дискеткой (фактически файлик отдельный).
Разбор полётов CompactFlash
Тут всё просто. Я с помощью утилиты IDEINFO под ДОС на примонтированной флешке (аппаратную флешку пробрасывал в qemu) посмотрел разбивку по секторам, дорожкам, блинам. Переписал все эти параметры и вручную вбил в BIOS, и записал образ с помощью dd:
Но такой грязный хак не позволил загрузиться на эту флешку, и всё равно вышла ошибка:
Из забавного, что я забыл в BIOS поменять параметры флешки, и вставил свою четырёхгиговую (та, которая имела вначале раздел на 500МБ), и с неё успехом загрузился, имея параметры флешки на 2ГБ. При этом, что смешно, программа IDEINFO видит параметры диска как на 4 ГБ (можно перемножить количество дорожек, головок, блинов и умножить на 512, убедившись что это 4 ГБ), а в конце выводит системный размер, который получает от бивиса.
Как я понял, синюю флешку без каких-то хитрых шаманств не перевести в режим IDE.
Итого, резюмируя: образы делать умеем, qemu великолепный инструмент, не все фрешки одинаково полезны, на 4 ГБ систему можно натянуть, побив на два раздела.