Собираю в коллекцию советские калькуляторы и компьютеры.
Мой сайт: http://www.leningrad.su/museum/
Можно. Как и любой другой формат (Apple 140, C64 и т.д.).
Необычной читалкой для обычных (5.25") дисков.
Kryoflux как раз необычная читалка.
Именно так, вот описание того как я декодировал данные дискеты по дампу логического анализатора.
https://github.com/sintech/AGAT/blob...40-analysis.md (По тексту возможны ошибки, не так давно работаю с Агатом.)
В принципе никто не мешает написать программу для микроконтроллера, которая будет читать по очереди все дорожки, программно декодировать адреса и данные, проверять контрольные суммы и т.д.
Перечитывать дорожку, если она не читается с первого раза, а результаты в т.ч. промежуточные сохранять на SD карту.
Если не делать декодирование после считывания, а просто сохранять битовый поток нескольких проходов дискеты, для последующей обработки на PC, то задача сильно упрощается.
>то задача сильно упрощается.
Только итоговый результат ухудшается на пару порядков больше, чем упрощается задача. Причину выше я описывал.
Скажем вот у нас МОСТ вообще-то не даёт EIM, он даёт сырой поток, а как именно его обрабатывать - решают дампирующие проги на стороне PC. У нас есть версии и get_dsk и get_eim и прочее. Т.е. в результате работы дампируюшей программы получается например EIM со всеми нужными проходами подозрительных мест, которые например прочитались но не сразу - для ручного анализа. Снимать в DSK - плохо, у меня было так что КС сходилась по стечению обстоятельств при том что данные прочитались неверно.
Я же давал ссылку сюда
в результате многократных попыток иногда возникают ситуации, когда "шум" (т.е. неуверенное чтения отдельных байт и бит) приводит к такой модификации данных, которая подходит к имеющейся контрольной сумме, но не является верной. Напомню, что формат предполагает один байт контрольной суммы, вычисляемый как "исключающее ИЛИ", для $156 байт данных.
Т.е. если устройство будет удовлетворено только тем, что КС сошлась – на агате может не прокатить. Лучше когда устройство посылает до РС сырое а «умная» дампирующая прога принимает решение что еще перечитать прям во время съема и дает задание устройству. Но все попытки оставит в файле. И алгоритмы чтения проще модифицировать в проге чем в прошивке устройства.
Последний раз редактировалось GARNIZON; 30.08.2016 в 00:53.
Последний раз редактировалось GARNIZON; 30.08.2016 в 09:39.
Важно в чем хранить! Если долго-долго на агате читать в DSK хреновую дорожку - полюбому потом КС сойдется но данные будут неверные. Поэтому в случае с агатом только ручной анализ. А его можно сделать только если в файле есть все проходы искомой дорожки.
Кроме того формат DSK не содержит столько подробностей для анализа сколько скажем EIM "поток сырых данных, получаемых из регистра чтения реального дисковода. В поток органично вплетаются символы синхросбоя, метки индекса (сигнал от датчика индексного отверстия) и все байты, которые контроллер возвращает через регистр чтения."
Теперь по опыту (несколько тысяч агатовских дисков): перечитывать одну дорожку более 5-6 раз смысла нет (для дисков PC есть, для агат нет), поэтому
Вполне годный (набезрыбье). И не надо про соринки говорить. У меня еще ни байта не пропало. Твои теории хороши, но я практик.
И как сказал кто-то на полигоне "второй раз я его буду читать только при острой необходимости, иначе развалится". Ведь вычитывая DSK с многократным чтением, голова ерзает по диску весьма усиленно и долго, на диске это сказывается не лучшим образом. Самый лучший вариант - это прочитать диск простой и быстрой читалкой, а потом плохие области (если они есть) перечитать отдельно в сыром виде, возможно не один раз, разными флопами и потом свести все в один образ диска. Ну собственно я так и делаю всегда. И имею результат даже с таких:
Все эти обстоятельства, в идеале, учитываются с самого начала, при разработке программно-аппаратного комплекса и
поэтому очень важно сразу определится в чего читать и как хранить.
Последний раз редактировалось GARNIZON; 30.08.2016 в 10:46.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)