Как создать средствами linux загрузочный образ диска с DOS 6.22

топ 100 блогов dlinyj — 24.04.2024 Мне казалось, что это простая и понятная задача, тяп-ляп и в дамках, но потратив два полных дня и всё свободное рабочее время, понял что не всё так просто. А самое удивительное, что нет толковых рабочих мануалов!

Как создать средствами linux загрузочный образ диска с DOS 6.22
Наконец работающий образ, готовый к dd на флешку


В предыдущем посте я ругался на проблемы с CF-картами и сюда же наслаивается другая проблема - сложность создания рабочего образа. Чтобы отделить одно от другого, здесь буду говорить строго о создании рабочего образа (файла), который в последствии можно будет бинарно перенести на CF и всё будет работать.

Казалось бы, что может быть проще: у меня есть точно работающий образ 16 МБ флешки (обратите внимание на разницу между МБ и МиБ, я говорю о МБ и далее всё будет в МБ). Далее можно создать пустой образ CF с помощью команды dd, truncate или mkdiskimage:

dd if=/dev/zero of=4gb.img bs=1K count=3915576 status=progress
truncate --size 4009549824 4gb.img
mkdiskimage 4gb.img 7769 16 63

Все делают разное, но в сути нам пойдёт любой вариант. truncate самый быстрый. И после, казалось бы, делаем вот что:

qemu-system-i386 -hda mydos.img -hdb 4gb.img

Загружаемся с рабочего образа, fdisk под ДОС размечаем всё, и после форматируем полученный диск с переносом системных файлов, командой format d:/s . Всё подробно описано тут.

И всё красиво, элегантно, но это НЕ РАБОТАЕТ. Файлы переносятся, но на диск загрузки потом не идёт...

Да, ограничение в 2 ГБ есть, но это прекрасно учитывает сам fdisk, он не позволяет создать раздел больше чем 2 ГБ. Поэтому там делаешь несколько разделов. Образ рабочий, файлы видны с другого диска, можно монтировать в linux. Но загрузка не идёт. Знаю про пометку диска загрузочным, но как я понимаю эту пометку ставит команда format.

Итак, рассказываю рабочий рецепт

Почему именно он рабочий я не знаю, как его повторить другим способом, тоже пока не ясно.

1. Качаем комплект установочных дискет ДОС 6.22 отсюда. Распаковываем их в папку 622.
2. Стартуем qemu с дискетки, с возможность ввода команд.

qemu-system-i386 -fda 622/disk01.img -hda 4gb.img -boot a -monitor stdio

Для смены диска в консоли qemu вводим команду:

(qemu) change floppy0 622/disk02.img

И так для всех дискет.

После этого мы получаем работающий образ диска, на который qemu успешно грузится (команда qemu-system-i386 -hda 4gb.img).

А теперь, следите за руками! После загрузки смотрим как видит fdisk этот носитель. А видит его как 500 МБ носитель! Никаких расширенных разделов 640 килобайт 500 МБ хватит всем!

Как создать средствами linux загрузочный образ диска с DOS 6.22


Разметить так ручками ни в DOS, ни в Linux мне не удалось. Анализ скриптов на дискетках не дал результата. Вот такая вот магия.

Осталось проверить, будет ли это работать на рельном железе (FreeDOS, таким образом установленный, не захотел запускаться).

Оставить комментарий

Архив записей в блогах:
Пиздец, больше всего на свете я ненавижу, когда входят в номер гостиницы без спроса. Большинство гостиниц как-то подразумевает, что я такой охуенно прошаренный чувак, что сразу соображу повесить на дверь бумажку "не беспокоить". И вот сидишь ты такой с утра, тупишь в жэжэшечку, положил ...
Иран ударил ракетами по американским базам расположенным в Катаре. Над Дохой, столицей Катара, раздаются взрывы — работают системы ПВО. Именно в Катаре расположена крупнейшая база США в зоне Персидского залива, Аль-Удейд. На ней размещается оперативный штаб Центрального командования ...
Если эта история правдива хотя бы на 80%, то это не лечится. Только живительная эвтаназия поможет страждущей. Оригинал взят у pharaom в С бывшим не считается изменой. - Нет, домой идти я сегодня боюсь. Думаю, что и завтра еще не пойду. Яна, можно я у вас эту недельку поживу. ...
Здравствуйте уважаемые. Лично для меня существует некая небольшая когорта современных (и это крайне важный аспект. Ибо в прошлом таких людей было намного больше) актеров, участие которых в фильме является некой гарантией того, что фильм не полное барахло. Я не знаю, как им это удается, но ...
Вот Зорькин удивится, если ему скажут, что его переизбрание на пост председателя Конституционного суда в 80-летнем возрасте (хотя ранее закон запрещал избирать главу суда старше 70 лет, но Медведев переписал закон специально под Зорькина) - это тоже форма коррупции. * Глава ...