civilizationliker » 01 авг 2024, 23:43
Попробовал сегодня эксперимента ради сформировать из дистрибутива dos 6.22 (установка идёт с первых трёх дискет из пяти) дистрибутив на 5,25 дискетах. Ничего не получилось, но нашёл интересные подробности, может кому интересно будет.
На первой трехдюймовке есть файл Packing.lst который содержит список всех файлов для установки по дискам - но это именно такой readme. Однако программа установки распаковывает их на жёсткий не в алфавитном прядке а в каком то своём и не совпадающем с порядков в другом файле - dossetup.ini (см. далее). Что я сделал: я провел установку на виртуалку записав все на видео, выписал подисково список файлов в том порядке в котором программа установки их копировала и решил именно в таком порядке сформировать 4 дискеты 5,25 (разумеется перенеся через sys загрузочный сектор). Создал в WinImage 4 пятидюймовых образа и начал. Условно говоря, из первой дискеты не влез только один файл - mscdex.exe он первым пошёл на новую вторую дискету потом по порядку что влезло со второй ну и так далее. Первый облом ждал в том что WinImage как то странно помечает загурузочный сектор делая его своим и записывая туда что то вроде printf("This image created in WinImage"). На самом деле, в программе есть пункты меню на эту тему, но я решил, что быстрее будет провернуть перенос через sys на физической машине с разнотипными дисководами, а потом снять образ с реальной пятидюймовки, что я и сделал, попутно выяснив что 3,5 флопик в ней умер (заменил но другой но блин... абыдна(притом странно как то умер)).
После чего выяснилось, что программа установки определяет наличие дискеты не по наличию файла а по метке тома, пока я в образе не поменял на "DISK 1" установка просила первую дискету. Тут сразу закралась мысль что значит придётся делать не 4 дискеты а 6 (3 исходных * 2), потому что нельзя чтобы файлы файлы с разных дискет лежали на одной "новой". Но до этого даже не дошло. Оказалось, что в случае отсутствия нужного файла установщик не просит вставить дискету или повторить попытку... (!) Нет? он просто говорит "этот файл не был скопирован" и всё тут. То есть каноничной установки не получится в любом случае. Можно попробовать создать три новые и заполнить их по максимуму, а на четвертую закинуть остаток и распоковывать руками через expand после установки (кстати см. packing.lst где упомянут ручной вызов expand). Что уж майкрософтовские не написали диалог Abort/Retry/Skip - история умалчивает видимо.
Есть один интересный файлик на первой дискете Dossetup.ini, он бинарный но с кучей строковых констант содержащих имена файлов. Теоретически возможно это как раз карта что где лежит, которую считывает установщик, но с ходу формат ее я не понял, надо садиться под дизассемблер еще придумать как бы его запустить - возможно займусь но не уверен что дело благодарное, всё же я бы посоветовал ТСу или перенести на хард систему через sys а потом докинуть всё руками или поставить в комп 3,5 флоппик и выполнить установку через него.
Последний раз редактировалось
civilizationliker 01 авг 2024, 23:45, всего редактировалось 1 раз.
Ретро-компы
1) i440bx - Pentium III 600
2) Ноут Toshiba Satellite 2060 cds - AMD K6-2 366