Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Технический флейм »   Драйвер fdrawcmd.sys и SAMdisk
RSS

Драйвер fdrawcmd.sys и SAMdisk

<<Назад  Вперед>> Страницы: 1 * 2
Печать
 
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
У программы есть исходники
https://github.com/simonowen/samdisk
разбирайся-нехочу.
Andrey_Ak
Advanced Member


Откуда: Kazakhstan, Almaty
Всего сообщений: 869
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
29 сен. 2009
Я не программист, чтобы в исходниках искать как работать с программой...
Сергей С
Member


Всего сообщений: 151
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 янв. 2017
Andrey_Ak написал:
[q]
затем переименовав полученный image.raw в image.img подключаю этот образ в эмулятор,
но загрузка с него не идет, хотя по команде DIR содержимое образа читается нормально,
[/q]
Если к содержимому файлов диска претензий нет, а лишь на загрузку - стоит узнать о том как происходит этот процесс.
Возможно система даёт подсказку и что-то сообщает на экран монитора при попытке загрузки с дискеты?
Andrey_Ak
Advanced Member


Откуда: Kazakhstan, Almaty
Всего сообщений: 869
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
29 сен. 2009
Сергей С написал:
[q]
Если к содержимому файлов диска претензий нет, а лишь на загрузку - стоит узнать о том как происходит этот процесс.
Возможно система даёт подсказку и что-то сообщает на экран монитора при попытке загрузки с дискеты?
[/q]
Да ничего не сообщает, эмулятор начинает читать дискету, потом прекращает и висит...

Вот если так снать образ, то эмулятор грузиться:
1) SAMdisk a: image.dsk -c40 --double-step (SAMdisk a: image.dsk -c40 -s9 --double-step так не понимает команду)
2) SAMdisk image.dsk image.raw
3) rename image.raw image.img
- Но если обратно записать image.dsk на дискету, то на реальной
машине загрузка не идет, начинает читать дискету и потом вешается...

А вот если так снять образ, то эмулятор не загружается:
1) SAMdisk a: image.dsk -c40 -s9
2) SAMdisk image.dsk image.raw
- При конвертации дает предупреждение:
Warning: source disk missing 702 sectors from regular format
Wrote 40 cyls, 2 heads, 9 sectors, 512 bytes/sector = 368640 bytes

3) rename image.raw image.img
- Но если обратно записать image.dsk на дискету, то на реальной машине загрузка идет..
Сергей С
Member


Всего сообщений: 151
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 янв. 2017
Так "научиться пользоваться программой" вы научились, по инструкции, на примерах, а что происходит при этом не знаете, что находится в получаемых файлах не проверяете, возможно знаете для чего специально указываете опцию -s9 или -d .
[q]
Я не программист, чтобы в исходниках искать как работать с программой...
[/q]
А там такого и нет, там описаны производимые действия, а итог всех или части этих действий вы уже сами интерпритируете, комментарии в коде могут подсказывать что/зачем.
Автору программы уже 5 раз сообщали о проблемах самой программы, и все они решены. Вы можете поступить так же.
[q]
2) SAMdisk a: image.dsk image.raw
[/q]
Я вчера попробовал данную программу, и такая команда не работает, вероятно здесь остались лишние "a:". Слышали о "проблеме Copy - Paste" ?
В первом варианте Вы считали данные с дискеты, в этом образе image1.dsk отсутствует информация о том что при записи считанной информации на дискету применяется особый формат -> не грузится с реальной дискеты. Далее конвертация и эмулятор получил корректные данные содержимого всех секторов, а в настройках эмуляции вы указали соответсвующий тип эмуляции -> система грузится.
Во втором варианте Вы считали данные с дискеты, в этом образе image2.dsk присутствует информация о типе форматирования при записи считанной информации на дискету -> грузится с реальной дискеты. Далее конвертация и эмулятор получил НЕкорректные данные содержимого всех секторов, а в настройках эмуляции вы указали соответсвующий тип эмуляции -> система НЕ грузится.

PS: Сегодня сравнил image1.raw и image2.raw, первые 36 секторов совпали(правда использовался другой привод и носитель), а остальные данные в image2.raw оказались забиты байтом 00h. Этих первых сеторов оказалось достаточным для хранения загрузочного сектора, таблицы FAT12 и содержимого корневого каталага выдаваемого по команде dir и ещё немного данных. Об этом не в справке, ни в инструкции ничегошеньки не написано/сказано, вы хотели научиться пользоваться, а не чему-то другому. В армии чему учат, автоматом пользоваться, махлу или/и Родину защищать?
[q]
- Очень медленно снимает образ, почему так?
[/q]
Читаем ChangeLog.txt к программе:
"Version 3.8.11 (2018-05-18)
---------------------------
...
- reduced default step-rate to improve compatibility with old drives"
Можете игнорить и ставить максимум чтения --step-rate 15, зачем, ну типа оверклок же, проверить секундомером рекомендую, и спросить потом не у разработчика, а тут. Здесь вероятно же лучше знают самого разработчика или нет?
[q]
Пытаюсь конвертировать в другие форматы отсюда согласно справке:
https://simonowen.com/samdisk/formats/
Так в TD0 не хочет,
[/q]
Читайте внимательно: формат TDO для -> "The following containers types are supported for input:"
В "The following types are supported for output of new or modified disk images, as determined by file extension:" его нет. Заявку на поддержку этого (проприетарного?) формата пишем разработчику сюда, 10 заяв отработано.


Andrey_Ak написал:
[q]
Нужно научиться работать с остальными всеми форматами дискет...
[/q]
Боюсь спросить, но всё же. Где сейчас это востребовано? Куда курс держите, кто направил.
Andrey_Ak
Advanced Member


Откуда: Kazakhstan, Almaty
Всего сообщений: 869
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
29 сен. 2009
Сергей С написал:
[q]
Боюсь спросить, но всё же. Где сейчас это востребовано? Куда курс держите, кто направил.
[/q]
Есть разные образы загрузочных дискет, для разных компьютеров..
Эти образы нормально понимают соответствующие эмуляторы и программы работы с образами..

Хочу с помощью SAMdisk писать эти образы на дискеты на современном ПК с дисководом 5.25",
и так-же читать такие дискеты в образы, и чтоб образы работали в эмуляторах...

Начал с теста на обычных образах DOS 360кб. Потом хочу отработать остальные форматы...


Сергей С написал:
[q]
- reduced default step-rate to improve compatibility with old drives"
Можете игнорить и ставить максимум чтения --step-rate 15, зачем, ну типа оверклок же, проверить секундомером рекомендую, и спросить потом не у разработчика, а тут. Здесь вероятно же лучше знают самого разработчика или нет?
[/q]
- Подробнее можете объяснить что за параметр и как его лучше настроить?

Про этот параметр я прочитал только: "To read a 40-track disk in an 80-track drive:" ну и попробовал его использовать...
Сергей С
Member


Всего сообщений: 151
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 янв. 2017
[q]
Про этот параметр я прочитал только: "To read a 40-track disk in an 80-track drive:" ну и попробовал его использовать...
[/q]
А я этого не знал, не интересовался, не имел с ними дела, есть только одна дискета 5,25 в хозяйстве, на которую даже ничего не записывал.
Но известно, что проблем с эмуляцией и копированием незащищённых дискет на соответствующей технике, быть не должно.
И хоть не мало найдётся людей которые смогут объяснить про "сферического коня в вакууме", про "существующий" параметр "--step-rate" мне практически ничего не известно, но уверен кто его ввёл знал что наделал.
Andrey_Ak
Advanced Member


Откуда: Kazakhstan, Almaty
Всего сообщений: 869
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
29 сен. 2009
Вообщем кое-какие продвижения есть...

Для чтения и записи обычных DOS дискет, формата:
40 цилиндров (дорожек) * 2 головки * 9 секторов * 512 байт на сектор

Используем команды:

Дамп образа диска в файл:
SAMdisk.exe a: ADOS.DSK -c40 -s9 --double-step

Получается образ в собственном сжатом формате программы.
Этот-же образ можно так-же записать обратно на дискету:
SAMdisk.exe ADOS.DSK a: -c40 -s9 --double-step

Конвертация в обычный RAW образ:
SAMdisk.exe ADOS.DSK ADOS.RAW
Должен получится файл размером 368 640 байт.

Переименовываем получившийся образ ADOS.RAW в ADOS.IMG или ADOS.IMA
Теперь с этим образом можно работать в эмуляторе и других
стандартных программах работы с образами (WinImage например).

Запись образов на дискету:
SAMdisk.exe ADOS.RAW a: -c40 -s9 --double-step
или
SAMdisk.exe ADOS.IMG a: -c40 -s9 --double-step
или
SAMdisk.exe ADOS.IMA a: -c40 -s9 --double-step

Так-же можно записывать формат TD0:
SAMdisk.exe ADOS.TD0 a: -c40 -s9 --double-step
Andrey_Ak
Advanced Member


Откуда: Kazakhstan, Almaty
Всего сообщений: 869
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
29 сен. 2009
Ну а теперь пытаюсь разобраться с нестандартным DOS форматом (На старых Искра 1030.11-2/4) :

80 цилиндров (дорожек) * 1 головка * 9 секторов * 512 байт на сектор

1) Есть рабочий образ такого диска, снятый TeleDisk...

Запись этого образа TD0 на дискету:
SAMdisk.exe ADOS.td0 a: -c80 -s9 -h0

- Дискета получается рабочей, машина с нее успешно загружается...

- А если из этого файла TD0 вытащить образ RAW диска,
то этот образ успешно работает в эмуляторе...

2) Теперь пробуем сделать дамп этой дискеты:

Дамп образа диска в файл:
SAMdisk.exe a: ADOS.DSK -c80 -s9 -h0
Получается образ в собственном сжатом формате программы.
Этот-же образ можно так-же записать обратно на дискету:
SAMdisk.exe ADOS.DSK a: -c80 -s9 -h0
Идет сначала форматирование каждого цилиндра, а потом запись каждого цилиндра, и так на все 80 цилиндров.

- Дискета получается рабочей, машина с нее успешно загружается...

3) Пробуем вытащить образ этой дискеты из собственного формата программы:

Конвертация в обычный RAW образ:
SAMdisk.exe ADOS.DSK ADOS.RAW
Должен получится файл размером 368 640 байт.

Переименовываем получившийся образ ADOS.RAW в ADOS.IMG или ADOS.IMA
Теперь с этим образом можно работать в эмуляторе и других
стандартных программах работы с образами (WinImage например).
Данный получившийся образ, работает в эмуляторе и даже загружается с него, не смотря на то, что он
сделан с односторенней дискеты, т.к. для DOS данный образ видется как обычная двух-сторонняя дискета.

И если посмотреть свойства этого дампа диска:
SAMdisk.exe info ADOS.DSK
То программа думает что это образ двух-стороннего диска:
Type: BPB
Format: 250Kbps MFM, 40 cyls, 2 heads, 9 sectors, 512 bytes/sector.


4) Ну а теперь самое сложное, запись этого образа обратно на дискету:

!! Запись образа на дискету:
!! SAMdisk.exe ADOS.IMG a: -c80 -s9 -h0
!! Идет сначала форматирование каждого цилиндра, а потом запись каждого цилиндра,
!! и так только до 40 цилиндра, далее идет просто форматирование оставшихся 40 цилиндров
!! естественно дискета получается не рабочей на реальной машине.

Как сказать программе чтоб она правильно смогла записать такой образ?

Вот описание формата Искры:

Драйвер диска базовой системы ввода-вывода ПП ЭВМ "ИСКРА-1030"
(прерывание INT 13H) поддерживает работу с дискетой только в формате 1
сторона-80 дорожек, или только 1 сторона-40 дорожек, в зависимости от
перемычки на плате микро-ЭВМ.
Напомним,что в ПП ЭВМ "ИСКРА-1030" дискеты, имеющте разметку 1
сторона - 80 дорожек, АДОС или любая версия MS DOS воспринимает как
двусторонние по 40 дорожек на стороне.Интерфейсом,поддержеваемым это
соответствие является драйвер гибкого диска БСВВ.На практике это
реализовано следующим образом.Обычно, дискетные устройства IBM-PC и
других совместимых с ней персональных машин имеют 2 головки по 40
шагов.Дисковое устройство использует 1 головку и может выполять 80
шагов, причем шаг головки ровно в 2 раза меньше чем в
IBM-PC.Если драйвер диска БСВВ получает запрос на чтение (или запись)
дорожек 0,1,2,3...39 нулевой стороны, то физически он обращается к
дрожкам 0,2,4,6...78 (т.е. к четным дорожкам) головки 0,а при запросе
дорожек 0,1,2,3...39 стороны 1(т.е.головки 1) - драйвер работает с
дорожками 1,3,5...79(не четными),но опять же головки 0(т.е. стороны
0)
<<Назад  Вперед>> Страницы: 1 * 2
Печать
Полигон-2 »   Технический флейм »   Драйвер fdrawcmd.sys и SAMdisk
RSS

0 посетителей просмотрели эту тему за последние 15 минут
В том числе: 0 гостей, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS