PDA

Просмотр полной версии : Кошка



anasana
25.09.2017, 18:58
Кошка (" дискетку - цап!" :) ) является дополнительной оболочкой над достаточно известным флоппи-драйвером от Simon Owen (http://simonowen.com/fdrawcmd/FdInstall.exe) для современных ПК под управлением ОС Windows.
Должна читать-писать 5.25" одно-двусторонние дискеты от Электроники МС-0585, МС0515, ДВК MY (не МХ!), УК-НЦ (МС 0511), разное с DEC RX50-AA.
Из того что меня особо смущает, так это параметр SECTOR_GAP3, в Интернетах предложили задать 0x10, вроде работает.
Основное, что хотел видеть в программке вроде добавил, теперь Кошка пусть бегает где хочет официально :)

Короткое видео процесса записи/чтения дискеты: https://www.youtube.com/watch?v=5a0U0Mm3bqc

CodeMaster
25.09.2017, 19:07
Можно наконец-то поздравить с официальной релизной версией утилиты о которой раньше слышали только избранные? ;-)

anasana
25.09.2017, 19:20
Именно :), без вас у программки так и оставалось бы только только две кнопки :)

hobot
25.09.2017, 19:49
Должна читать-писать 5.25"
диаметр дискет утилите на самом то деле наверное по барабану )



ДВК MY
Это подразумевает MZ40 MZ80 УК-НЦ?

JV-Soft
25.09.2017, 21:13
anasana, Про проверку и чистку привода правильно написали ,иногда после одной старой дискеты типа ГМД так на головы налипает ,что только чистка.
А вот например сегодня приобрел ,вскрыл :v2_dizzy_facepalm:

http://s008.radikal.ru/i305/1709/44/19a68eec466ct.jpg (http://radikal.ru/fp/pnb6zti35h61b) http://s019.radikal.ru/i602/1709/26/8348c00e11cdt.jpg (http://radikal.ru/fp/prlrwvhyst6zv)

И полтора часа спустя :)

http://s018.radikal.ru/i522/1709/ed/f38bf8a51876t.jpg (http://radikal.ru/big/lq793ww7g4az2)

PS в описании есть ,но драйвера в архиве нет.

anasana
25.09.2017, 23:26
Приветик!
>> ДВК MY
> Это подразумевает MZ40 MZ80 УК-НЦ?
Да, как минимум на чтение подразумевает, но ты вроде единственный, кто в самом начале писания кошака пытался это проверить, и у тебя, помнится, в итоге так дискетки и не захотели считываться.
Так что я на всякий случай это не стал сейчас упоминать в описании ни в да ключе, ни в нет ключе. у меня домашняя УКНЦшечка, цапнутая на барахолке, на 42В и взять себя в руки на пятивольтовую переделку для начала её оживления видимо должно произойти какое-то событие, в общем, я старательно откладываю натурные испытания, надеждой что кто-то Кошку испытает раньше. а то 5 В я ещё воткну, а вот читая эпопею с гонбесовскими монитор-конверторами я так и не понял, это вообще реально или там просто академический интерес втыкать-вытыкать всё доступное на рынке. контроллер дисковода для УК-НЦ у меня есть, а жива или нет сама мать я не знаю.

P.S. Сам драйвер можно с сайта Саймона скачать напрямую: http://simonowen.com/fdrawcmd/FdInstall.exe и, да, он такой же как и для UKDSKP.
Пока не устаканилось со ссылкой на Кошку на гитхабе, сейчас всё в разных местах лежит (на форуме у меня уже лимит на приаттачивание).

hobot
25.09.2017, 23:49
в итоге так дискетки и не захотели считываться.
я считывал UKDSKP только вот с 40 дорожками она странно себя ведёт, попробую этот
релиз при первом же случае - драйвер тот же, что и для UKDSKP похоже

CodeMaster
26.09.2017, 06:48
Про проверку и чистку привода правильно написали
Где? Кто?


И полтора часа спустя
Поделись технологией, одного пылесоса ведь не достаточно.

JV-Soft
26.09.2017, 11:58
Где? Кто?
FAQ в архиве :v2_dizzy_botan:

- - - Добавлено - - -


Поделись технологией, одного пылесоса ведь не достаточно.
Конкретно этот - mitsumi d509v3 так -

Вытаскиваем руками ручку ,она просто туго одета , откручиваем морду , откручиваем четыре винта которые крепят верхнюю пластину , далее аккуратно пылесосим , потом верх моем водой с мылом и щеткой не заливая пластиковый упор так как там подшипник , весь низ я вначале протираю слегка влажной микрофиброй , а далее все чистым спиртом , аккуратно с головами верхняя вклеена на амортизаторе легко повредить , главное не спешить ,

http://s012.radikal.ru/i320/1709/a1/ed6ddaeb4ab3t.jpg (http://radikal.ru/big/6e16sjoh62o9q)

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

http://i057.radikal.ru/1709/e2/067f07ebadd7t.jpg (http://radikal.ru/big/3ep5mq4vvz5v1)

Пластик можно отбелить пергидролью 35%-60% , продается в химии для бассейнов , я этого до недавнего времени не знал и положил морду в окислитель для женской краски , но она практически не отбеливалась , тогда я немного ее нагрел и пластик начал светлеть , за час он полностью побелел , а потом я нагревая раствор в очередной раз забыл выключить газ ,жидкость закипела и пластиковая морда поплыла , при отбеливании не греть более 40 градусов !

http://s019.radikal.ru/i626/1709/b1/75fb8c743e64t.jpg (http://radikal.ru/big/gssg65lxvd1pa) http://s018.radikal.ru/i511/1709/0c/54d082daf58at.jpg (http://radikal.ru/big/e3q2yc6vjdvlq)


поэтому начал искать такой же дисковод убитый что бы снять морду, вчера купил ,продавали как нерабочий ,а он оказался после чистки рабочим , так что привел его в порядок ,а вместо испорченной морды на первом ,решил сделать новую. Теперь два дисковода ,которые к тому же отлично читают старые дискеты записанные 25 лет назад !

полуфабрикат пока

http://s015.radikal.ru/i332/1709/b4/d2b28910f2eat.jpg (http://radikal.ru/big/steod49mlz4kh)

BYTEMAN
26.09.2017, 15:47
я считывал UKDSKP только вот с 40 дорожками она странно себя ведёт, попробую этот
релиз при первом же случае - драйвер тот же, что и для UKDSKP похоже

UKDSKP на 40 дорогах работает хорошо как на чтении, так и на форматировании-записи)

hobot
26.09.2017, 17:49
UKDSKP на 40 дорогах работает хорошо как на чтении, так и на форматировании-записи) вот напиши мне пожалуйста на каких установках ты читаешь пишешь для 6022, у меня не читаются 40-дорог
хоть ты убейся ) Конечно дело в настройках видимо?

- - - Добавлено - - -

идеально читаются только человеческие дискеты MZ80 и MY80 такие дела.

- - - Добавлено - - -

форматировать UKDSKP вообще гибель - всегда ошибка выходит, я MY под DOS все дискеты форматирую и всё работает.

Hunta
26.09.2017, 18:02
40 дорожечные не пробовал (нету у меня таких), а 80 дорожечные вполне нормально под Win 8 с помощью UKDSKP читал и форматировал-писал-читал.
Ничего экзотического кроме /300 не использовал

hobot
26.09.2017, 18:12
80 дорожечные вполне нормально про них и разговора нет )))

Hunta
26.09.2017, 18:38
про них и разговора нет


форматировать UKDSKP вообще гибель


читал и форматировал-писал-читал.

Извините, но Вы пишете так, что ничего не понятно.

dk_spb
23.10.2017, 23:42
Есть образ. 80 дорожек. Либо Э85 либо 0515. Посекторный образ (как расположено на дискете). Обозвал его 1.img
Хочу кошкой сконвертировать в DSK.
поставил галочку Both01. Далее "Open..." 1.img
Далее "save as" как .dsk.
А оба файла в результате одинаковые (fc /b ).
Тулза "SO to LBN" дает на выходе в два раза меньший файл (40 дорожек).
Что я делаю не так?

- - - Добавлено - - -

Какие-то программы для 0515:
Омега, Львов
Воронков В, Воронеж

anasana
24.10.2017, 01:12
- По задумке, Load-Save не должен "мешать" содержимое дампа в "слоту" с "кубиками".
- "Both01" чаще имеет смысл для двусторонних дискет MY ДВК / УКНЦ. 85-й и 0515 достаточно "Head 0".


Для конвертации я в меню Tools добавил два направления: "Convert RX50 <-> LBN".
.IMG (посекторный последовательный) <-> .DSK (DZ перемешаный).
Если образ был снят "как расположено на дискете", то для Э-85/0515 это, думаю, будет сразу расположение DZ (в моей терминологии дампу надо присвоить расширение ".DSK"),
и я бы для начала выбрал тот пункт меню в котором .DSK преобразуется и сохраняется в .IMG

anasana
07.11.2017, 19:03
Добавил в первый пост обновленную версию программки (2.08).
Исправлен 40-дорожечный режим чтения ("Step+"), добавлено управление курсором с клавиатуры, работает чтение 8/9/10/15/18-секторных дискет (512 байт/сектор).

MiX
07.11.2017, 22:20
Исправлен 40-дорожечный режим чтения
Надо ещё учитывать что для 40-дорожечных дискет, нужен 40-дорожечный дисковод. Если таковой не имеется, надо делать пропуск 1,5 шага, чтоб попадать в центр дорожки, т.к. у 80-дорожечных головка уже.

anasana
08.11.2017, 00:23
... или набрать больше статистики, пока мне хватало двойного шага на всех встреченных 40-дорожечных mfm дискетах на бюджетных 80-дорожечных РС приводах без игр с подстройками в попадание в эпицентр дорожек флоппиков. Но думаю вероятно где-то будет и жестко мусорить при чтении

AFZ
08.11.2017, 01:12
Надо ещё учитывать что для 40-дорожечных дискет, нужен 40-дорожечный дисковод. Если таковой не имеется, надо делать пропуск 1,5 шага, чтоб попадать в центр дорожки, т.к. у 80-дорожечных головка уже. Не полтора, а два. Точно. И не наше это изобретение - если в HD-дисковод сунуть обычную писюшную дискету 360К, она там весело читается. То есть, это стандартное писюшное решение. Вот если на таком дисководе записать (или дописать на) дискету 360К (40 дорожек), то на 40-дорожечном она, скорее всего, не прочитается. А так, обычно, без вопросов.

Patron
08.11.2017, 12:48
.IMG (посекторный последовательный) <-> .DSK (DZ перемешаный).По стандарту:

.IMG - посекторная копия диска ( где [блок 0 = сторона 0, дорожка 0, сектор 1] ; [блок 1 = сторона 0, дорожка 0, сектор 2] и т.д. ),

.DSK - копия диска с формате драйвера LD.SYS ( т.е. поблочная, где [блок 0 = блок 0] ; [блок 1 = блок 1] и т.д. ).

Это надо очень чётко понимать, чтобы не путать, какой из образов последовательный ( т.е. поблочный ), а какой перемешанный ( т.е. посекторный ).

BYTEMAN
08.11.2017, 12:59
Надо ещё учитывать что для 40-дорожечных дискет, нужен 40-дорожечный дисковод. Если таковой не имеется, надо делать пропуск 1,5 шага, чтоб попадать в центр дорожки, т.к. у 80-дорожечных головка уже.
Есть честный 40-дорожечный тик и честный 40-дорожечный НГМД-6022. К моему большому удивлению, оба имеют бошку по ширине на обычные 80 дорог... Т.е. если дисковод разъюстировать, то на 80-дорожечной дискете можно попасть на нечетные дороги. При нормальной юстировке эти дисководы читают четные дороги.

hobot
09.11.2017, 08:37
Есть честный 40-дорожечный тик и честный 40-дорожечный НГМД-6022
в одном кожухе или как? родной 6022 только 1 карман по прежнему работает? все ли образы из папки 6022
в хламнике нормально записались и прочлись - заработали?

MiX
11.11.2017, 18:41
Есть честный 40-дорожечный тик и честный 40-дорожечный НГМД-6022. К моему большому удивлению, оба имеют бошку по ширине на обычные 80 дорог...
Как проверяли? Честный 40-дорожечный имеет ширину головки 0,3мм.
80-дорожечный -0,155

Фото головки 80-дорожечного DEC RX50-AA.
http://images.vfl.ru/ii/1510414249/c6ad7231/19376223.jpg


Не полтора, а два.
Тогда считывание "толстой" дорожки будет не по центру. 2,5 шага даст по центру.
Только 0,5 надо делать один раз после нулевой дорожки. Другой вопрос, сможет ли контроллер выдать 0,5 шага.

AFZ
12.11.2017, 05:24
Тогда считывание "толстой" дорожки будет не по центру. 2,5 шага даст по центру.
Только 0,5 надо делать один раз после нулевой дорожки. Другой вопрос, сможет ли контроллер выдать 0,5 шага. Не-а! Нулевая дорожка, вернее ее середина, у 40- и у 80-дорожечных дисководов находятся в одном и том же месте. То есть, конечно, радиус наружного края широкой дорожки чуточку больше, чем у узкой, но середины у них совпадают. Точно так же совпадают середины дорожек номер N у 40-дорожечных и 2*N у 80-дорожечных. Это было где-то специально оговорено при принятии 80-дорожечного стандарта.

CodeMaster
12.11.2017, 10:38
но середины у них совпадают.

Ну, а то бы, всю жисть 2 шага было, а тут бац и нобелевка за 2.5 шага.

MiX
12.11.2017, 10:39
но середины у них совпадают.
Тогда изначально дорожка 0 смещена на 0,5 шага относительно 40-дорожечного дисковода.


Это было где-то специально оговорено при принятии 80-дорожечного стандарта.
Где это почитать можно?

anasana
18.06.2018, 15:43
Наподобновлял софтинку в первом сообщении.
Работает автораспознавание скорости для чтения и формата любого трека с любой стороны (под мышью из контекстного меню или клавишей "пробел"); походу теперь можно дампить и 3,5" дискеты (8/9/10/15/18 секторов).
Работает паттерн автоматического добавления имени файла для дампов и посекторного сохранения для анализа.
"Мелкие" (40-дорожечные) дискеты, а-ля 360 Кб: нужно ставить чекер "Step+". Визуально проявляются в том, что при Автоскане все треки определяются, а при чтении в образ нормально считается только первая дорожка.
В Tools добавлен raw экспорт из формата Dave Dunfield ImageDisk .IMD (из HxCFloppyEmulator выцепил только частный случай для моих дискет, в которых никаких "защит" не бывает и поэтому разбора MFM-потока не требуется).
Работают клавиши-модификаторы (Shift, Ctrl, Alt) отображения пересчета вариантов номеров секторов (статусная строка справа внизу).

MiX
09.11.2018, 02:47
Наподобновлял софтинку в первом сообщении.
Есть пожелания.
по интерфейсу: Лучше конечно сделать таблицу с внутренней рамкой и со скроллингом. По типу как в редакторе программатора.
Что за кодировка в правой таблице? Лучше сделать ANSI/ASCII/... В меню settings облом.

функционал: При чтении надо обязательно создавать файл. А в буфер нельзя? Ведь для подбора правильного формата надо сделать несколько пробных чтений. На дискете (наклейке) может быть ничего не написано, или написана устаревшая/ не соответствующая действительности надпись.

по дорожкам: добавить до 83 дорожки (опцию).
Если дело дойдет до 8" дискет/дисководов то и 77 дорожек.

по секторам: 1 сектор для МХ формата. Про содержимое это уже другой вопрос. Главное чтоб контроллер сумел захватить синхронизацию, если конечно возможно.

...
Пока что пробовал читать Досовские дискеты 5,25/3,5. Дальше правда не знаю что с дампом делать.

hobot
09.11.2018, 02:54
Дальше правда не знаю что с дампом делать. виртуальному флопику подсунуть пробовали?
https://www.usbdev.ru/files/virtualfloppydrive/

MiX
10.11.2018, 01:34
виртуальному флопику подсунуть пробовали?
Пробовал, образ подхватывает. Если интересно - здесь (http://rgho.st/download/private/6ZMVvtRb2/e7c05c70cc7d0d9b521476e016c311bd/a38a73a98593b67c7d1fe9a289576eaec4b13822/a38a73a98593b67c7d1fe9a289576eaec4b13822/ES1840.zip) образ и файлы с образа.

hobot
10.11.2018, 02:03
Если интересно - здесь образ и файлы с образа.
А эмулятора у ЕС этих нет? Там же ДОС-какой то ранний вроде бы?
Кошка у меня не хочет работать, не дружит со мной, я и так и этак - ничего мне удалось считать с её помощью, пока только ДОСовский эмулятор, MY-дос форматёр и UKDSKP - вот реальное ПО которое реально читало\писало.

MiX
10.11.2018, 10:55
А эмулятора у ЕС этих нет? Там же ДОС-какой то ранний вроде бы?
Ну это оффтоп конечно.
Я сдампил Досовскую дискету лишь потому что "попала под руку". По эмулятору я использую PCem (http://pcem-emulator.co.uk/), может там можно подсунуть ROMы от ЕС, но я не пробовал.

MiX
12.11.2018, 22:00
MY c RSX11

Попробовал считать рабочую дискету с RSX11, образ которой делал form.
http://s9.uploads.ru/d/ZURhv.png
http://sg.uploads.ru/d/zaBe1.png

Дискета 100% рабочая.

Hunta
12.11.2018, 22:31
Попробовал считать рабочую дискету с RSX11
Это с дискеты так считалось? Чем и на чём, если не секрет?..

CodeMaster
12.11.2018, 22:35
Дискета 100% рабочая.
Возможно проблемы с дисководом?

MiX
12.11.2018, 23:23
Это с дискеты так считалось?Да.


Чем и на чём, если не секрет?..
На ПС с дисководом 1,2Мб.


Возможно проблемы с дисководом?
Никаких проблем. Считал для статистики. Образ рабочий ( где-то у formа лежит).

LeoN65816
13.11.2018, 00:15
MiX, 1) попробуй обновить драйвер как советует Hunta (https://zx-pk.ru/threads/16861-poisk-fajlov-dlya-uknts-dvk.html?p=984164&viewfull=1#post984164); 2) беда с первым сектором у меня (https://zx-pk.ru/threads/16861-poisk-fajlov-dlya-uknts-dvk.html?p=984219&viewfull=1#post984219) тоже была, по совету Anasana подвигал оптопару датчика индексного отверстия и это помогло! Ну и ручной перечиткой бэдов попробуй - иногда помогает. Ну и другой дисковод попробуй, я тоже был уверен в своем дисковёрте на все 256%, однако, на другом получилось значительно лучше.

CodeMaster
13.11.2018, 09:40
Образ рабочий
В образе и дискете я и не сомневался, но работала она, я так понимаю, на другом дисководе с другим контроллером флопа? И кстати, а этот образ был накатан на дискету там же где и работал или ещё на третьей системе?

MiX
13.11.2018, 21:55
1) попробуй обновить драйвер как советует Hunta
Драйвер вроде новый стоял. Куда он прячется я не нашёл, но всё равно обновил.


2) беда с первым сектором у меня тоже была, по совету Anasana подвигал оптопару датчика индексного отверстия и это помогло!
Датчик отюстирован на заводе по стандарту, и если его трогать то это нарушит юстировку. Далее если на этом дисководе отформатировать дискету, то на других дисководах эту дискету контроллер может не захватить, если 1й сектор записан раньше чем контроллер придет в готовность после индексного сигнала. Если позже, последний сектор может не прочитаться до конца т.к будет оборван индексом (критично на дорожках с малым диаметром).


Ну и другой дисковод попробуй, я тоже был уверен в своем дисковёрте на все 256%, однако, на другом получилось значительно лучше. В моём случае получилось что действительно дисковод был не совсем удачным, но это касается только остальных секторов.

Попробовав на другом дисководе все секторы считались кроме первого на одной стороне, и частично на другой.
http://s8.uploads.ru/d/eoRi6.jpghttp://s9.uploads.ru/d/FwQzX.jpg

При этом утилита UKDSK считала дискету на этом же дисководе без ошибок. Получается что программе Кошка не хватает быстродействия для захвата первого сектора.
Далее я в Виндоз отключил ненужные службы и программе Кошка поставил режим исполнения реал тайм.
http://s3.uploads.ru/d/QIPTh.jpghttp://sg.uploads.ru/d/4w7ne.jpg
Уже захватила 2 раза 1сектор но быстродействия по прежнему не достаточно.

- - - Добавлено - - -


В образе и дискете я и не сомневался, но работала она, я так понимаю, на другом дисководе с другим контроллером флопа?
Да.


И кстати, а этот образ был накатан на дискету там же где и работал или ещё на третьей системе?
Там где и работал.

CodeMaster
13.11.2018, 22:12
Получается что программе Кошка не хватает быстродействия для захвата первого сектора.
Тут нужно мнение Алексея, я Кошку пробовал давно и возможно другую версию, но проблема с первым сектором была и он давал несколько советов, на вскидку не найду, думацо он быстрей и грамотней ответит.

MiX
17.11.2018, 14:23
но проблема с первым сектором была
И осталась.
Некоторые решения помогут исправить проблему.

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

Если программа не успевает засинхронизироваться то перед первым (физическим) сектором надо идти на второй круг при этом синхронизироваться не после индекса, а после последнего физического сектора. На этот момент индекс пропускается.
То-есть делается некое опережение готовности перед синхронизацией первого сектора.
Но это костыль. Радикальное изменение в программе в пользу быстродействия предпочтительнее.
...
Ну и пожелания которые появились по мере использования программы.

. Добавить управление размерами окна, т.к. не удобно когда окно программы не масштабируется.
.Пронумеровать над "кубиками" по горизонтали - сектора, и вертикали - дорожки. Т.к. приходится считать вручную какой сектор не прочитался.
.Неудобно то что считка начинается после добавления файла, надо бы добавить кнопку "Старт".

anasana
17.11.2018, 19:45
Я сейчас на рейде завис, поэтому не могу поправить даже быстроделательные задумки, и коротко немного прокомментирую:
На столько на грани тайминга захвата первого сектора я не встречал как у тлй дискеты. Интнресный случай, на третьем уже круге по дорожкам обычно уже зацеплялась. Пока можно попробовать порекомендовать Свернуть окно программы во время считывания дискеты, тогда не будет производится отрисовка экрана и скорость чтения заметно увеличивается.
Еще Hunta меня просил что-то сделать с масштабированием на больших мониторах, я билмч, бился, это пока не получается у меня, пока сектора так и останутся мелкими блохами.
Кодировку слева можно выбирать из контекстного меню мыши. Сейчас там есть выбор КОИ8 и виндовая. У 184х машинок кажется Альтернативная, я добавлю ее и еще парочку самых употребительных, это просто.
Чтение не в файл а сразу в слот прграммы я сделаю прти нажатии кнопки Read олновременно с клавишей Shift.
Я недавно цапнул на аукционе айбиэмку по смылке с барахолки у которой высмотрел по фото что там есть дисковод 2.88, но пока не выискал таких крутых дискет (ED) на проверить в реале.
Виртуальный дисковод который упоминал hobot крут, можно даже вирусы древние подхватить :), я натравливаю еще восстановитель удаленных файлов типа RStudio.
Если когда мышка находится над кубиком какого-то трека нажать пробел, то формат дискеты сам автоопредилится и самоустановится как текущий, то же можно сделать и из контекстного меню правой кнопкой мыши.
Внизу справа показывается цифрами номер сектора, дорожки, стороны, порядковый номер, пересчет сектора для дискет DZ, текущего кубика под мышью. Есть разные варианты если зажимать адновременно шифт/контрл/альт
Что-то еще хотел откомментить, вспомню напишу. С телефона неудобно очень

Hunta
17.11.2018, 20:01
Еще Hunta меня просил что-то сделать с масштабированием на больших мониторах, я билмч, бился, это пока не получается у меня, пока сектора так и останутся мелкими блохами.
Это терпит :)

у которой высмотрел по фото что там есть дисковод 2.88
Если проделать вторую дырку чуть выше дырки в правом нижнем углу (которая отвечает за 720 Кб (нету) или 1.44 Мб (есть)), теоретически дискету (на 1.44 Мб) можно отформатировать на 2.88 Мб. Но насколько она будет устойчиво работать - как свезёт

anasana
17.11.2018, 20:07
Не опасно ли для дисководов добавлять аж до 83 дорожки позиционирование? Я понтмаю что каждый сам решает будет он тестить или не тестить такой экстрим, просто для себя интересно. Я в интерфейс вопрос для подтверждения такой операции добавлю что бы случайно не жахать без надобности.

MiX
18.11.2018, 02:13
есть дисковод 2.88
Насколько я понимаю там применяется поперечная запись на дискеты с бариевым покрытием. Для кошки параметры будут 1000Kbps и 36 секторов.


Виртуальный дисковод который упоминал hobot крут
Не вариант для нестандартных емкостей образов. Просто не примет.


Не опасно ли для дисководов добавлять аж до 83 дорожки позиционирование?
Где то в описании FDA было упоминание что это типа скрытые дорожки используемые для защиты от копирования дискеты. То есть фактически дисковод умеет двигать головы дальше 80й дорожки. Но на практике мне не попадались сверх 80 дорожечные дискеты.

AFZ
18.11.2018, 07:56
Не опасно ли для дисководов добавлять аж до 83 дорожки позиционирование?Нормальн му дисководу это фиолетово. Более того, некоторые БИОСы старых компов таким образом определяли, 40-дорожечный у них дисковод или 80-дорожечный. Загоняли его куда-то далеко, а потом считали шаги назад до появления сигнала "Дорожка 00"

И, по крайней мере на MY, народ этим пользовался - все-таки лишних 40-60 блоков дискеты в 1600 блоков на дороге не валяются... :) (У некоторых дисководов было 83 дорожки, у некоторых 82. 81 дорожка была, практически, у всех.)

Ynicky
09.10.2019, 20:13
Алексей сделал версию 2.09.
Пробую с ее помощью прочитать образы с дискет Михаила Дябина.
При открытии (Open...) образа дискеты с логом из программы ukdskp, плохие сектора сдвинуты на единичку вправо.
Например, при открытии следующего образа:
D:\ukdskp>ukdskp.exe a: pzu160_nov_cop_rab_az2.dsk /300 /rt:8 /ac:3 /rm:1
Читается диск A: в файл "pzu160_nov_cop_rab_az2.dsk"
Дорожка 33 Сторона 1 Сектор 10 Чтение : Ошибка 4410 Блок 679, Попытка 2
Дорожка 69 Сторона 1 Сектор 9 Чтение : Ошибка 4410 Блок 1398, Попытка 8
Дорожка 69 Сторона 1 Сектор 10 Чтение : Ошибка 4410 Блок 1399, Попытка 1
Дорожка 72 Сторона 1 Сектор 1 Чтение : Ошибка 4410 Блок 1450, Попытка 1
Дорожка 72 Сторона 1 Сектор 10 Чтение : Ошибка 4410 Блок 1459, Попытка 2
Дорожка 77 Сторона 1 Сектор 1 Чтение : Ошибка 4410 Блок 1550, Попытка 6
Дорожка 78 Сторона 1 Сектор 1 Чтение : Ошибка 4410 Блок 1570, Попытка 1
Дорожка 78 Сторона 1 Сектор 3 Чтение : Ошибка 4410 Блок 1572, Попытка 1
Дорожка 78 Сторона 1 Сектор 5 Чтение : Ошибка 4410 Блок 1574, Попытка 1
Дорожка 78 Сторона 1 Сектор 9 Чтение : Ошибка 4410 Блок 1578, Попытка 1
Дорожка 78 Сторона 1 Сектор 10 Чтение : Ошибка 4410 Блок 1579, Попытка 1
Дорожка 79 Сторона 1 Сектор 1 Чтение : Ошибка 4410 Блок 1590, Попытка 3
Дорожка 79 Сторона 1 Сектор 4 Чтение : Ошибка 4410 Блок 1593, Попытка 4
Дорожка 79 Сторона 1 Сектор 6 Чтение : Ошибка 4400 Блок 1595, Попытка 1
Дорожка 79 Сторона 1 Сектор 10 Чтение : Ошибка 4410 Блок 1599, Попытка 1

показывает следующее:
70280
Курсор указывает на дорожку 34 сектор 1 вместо дорожки 33 сектор 10.
И так далее.

- - - Добавлено - - -

Читаю двумя дисководами. Раньше на одном дисководе первый сектор не читался, хотя на втором - читался. В этой версии первый сектор читают оба дисковода.

Hunta
09.10.2019, 20:29
В этой версии первый сектор читают оба дисковода.
Ну видимо ошибка из разряда soft, а за счёт лучшего и не одного алгоритма выхода на начало сектора (насколько я помню) - результат на мониторе :)

- - - Добавлено - - -

Перед особо тяжёлыми ошибками лучше помыть головки, а за счёт того, что Кошка умеет дописывать в образ - можно и в середине процесса. С 10-ок дискет я так вытянул

hobot
09.10.2019, 20:54
Алексей сделал версию 2.09.
Пробую с ее помощью прочитать образы с дискет Михаила Дябина.
огромная благодарность за старание, умение и адекватность.
а как у Кошки с MX-форматом? У меня тут есть КВАНТовский адос именно на 40-дор. флопах,
которые УКДСКП у меня в своё время строго ругался 4010 ошибкой, на каждый тик флопа.

Ynicky
09.10.2019, 21:19
Алексей поправил программу.
70282
После перечитки каждого плохого сектора:
70283

hobot
09.10.2019, 21:50
После перечитки каждого плохого сектора:
вместо на образе тупо наполняет "кошачьими" нулями - или я не уловил прогресса?

Ynicky
09.10.2019, 21:57
вместо на образе тупо наполняет "кошачьими" нулями - или я не уловил прогресса?
Нули - это там где остались плохие сектора. Если перечитка сектора успешна, то там не нули.
Интересно, два дисковода дают разные плохие сектора. А после перечитки на другом дисководе плохие сектора от первого перечитываются успешно.

Denkixot
10.10.2019, 07:28
Нули - это там где остались плохие сектора. Если перечитка сектора успешна, то там не нули.
Интересно, два дисковода дают разные плохие сектора. А после перечитки на другом дисководе плохие сектора от первого перечитываются успешно.

Было такое. Решается чисткой головок дисковода чистящей дискетой с изопропанолом.

Hunta
10.10.2019, 08:07
Нули - это там где остались плохие сектора.
Ну на самом деле - как минимум - не всегда. Наблюдал, как плохо прочитанный сектор содержит в начала норм инфу, а потом в каком то месте сбой считывания перехода бита - и пошёл мусор. Причём от считки к считке и место и мусор меняется.

- - - Добавлено - - -


Было такое. Решается чисткой головок
Экстремальный вариант - разрезать конверт, достать диск, аккуратно протереть, вставить в конверт от донора-нового диска :) Был один прецедент :)

- - - Добавлено - - -


чистящей дискетой
Ну, при прямых руках - деревянная линейка, белая бязь и изопропановый спиритус :) Вонючий он только :)

SuperMax
10.10.2019, 09:14
Экстремальный вариант - разрезать конверт, достать диск, аккуратно протереть, вставить в конверт от донора-нового диска :) Был один прецедент :)

когда мне попалась пачка дискет для УКНЦ с грутыми конвертами, я просто их разрезал и вставляли диски в дисковод прямо так
да, был опыт протирки самих дисков - те были дискеты с грязью и песком
(те если их вставить то убьешь и диск и дисковод)
тоже распорол, помыл с мылом, просушил - считал



- - - Добавлено - - -
Ну, при прямых руках - деревянная линейка, белая бязь и изопропановый спиритус :) Вонючий он только :)
фу - зачем изопропиловый - надо только этиловый, он и пахнет слабее
ну и дискеты чистящие imho не были редкостью

Hunta
10.10.2019, 10:53
фу - зачем изопропиловый - надо только этиловый
На СМ-1420 наши электронщики контакты протирали этиловым, а головки на дисководах - иэопропиловым (тогда и научился линейкой и бязью, бязь, кстати, тоже выделяли каждый месяц) - всё что могу сказать по поводу этиловый vs пропиловый

Arseny
10.10.2019, 11:47
А где, собственно, версия 2.09 то?

anasana
11.10.2019, 18:32
Вот такие на мне висят разные реальные дискетки от Э-85:
http://ipic.su/img/img7/tn/intr.1570804930.png (http://ipic.su/img/img7/fs/intr.1570804930.png)
Интересно, как можно получить такой "рисунок" если бы захотелось это сделать самому :)
это точно не защита. ошибки crc. интерливинг и особенности DZ хз как повлияло на геометрию... поверхность без царапин.
таких три рабоче-крестьянских дискеты, все остальные в той же пачке самые обычные, без приколов. ГМД-130, конверты ровные.

(полосатые сектора - те, что просто попадают под маску встретившихся мне паттернов заполнения при обычном форматировании/инициализации дискеток)

Ynicky
11.10.2019, 21:52
Поработал с версией 2.09.
Считывание проводил сначала дисководом Hewlett Packard, который и с ранней
версией Кошки читал первые сектора. Затем менял дисковод на Epson, который
раньше не читал первые сектора, а сейчас читает. Загружал ранее прочитанный
образ от Hewlett Packard и перечитывал сбойные сектора посекторно.
Если сбойный сектор был не первым, то он считывался нормально,
а если первым - то становился Bad.
Т.е. перечитывание первого сектора посекторно происходит так же,
как раньше было при чтении всего образа.
Архив во вложении:
70294
70295
70296
А еще хотелось бы иметь чтение не только отдельных секторов, но и целой дорожки.
И даже отдельной одной стороны при двухстороннем образе.

- - - Добавлено - - -


Пятничное обновление. v.2.09
https://www.dropbox.com/s/634t598i307tej8/RX50_DZ_koshka_v.2.09.zip?dl=0
Эта версия не находит дисковод.

Hunta
11.10.2019, 22:34
Я ещё использовал такие приёмы - читал какой нибудь другой сектор на дорожке, где сбойный (желательно гарантированно читающийся), а затем сразу сбойный. Или вообще на другой дорожке. Иногда помогало

AFZ
11.10.2019, 23:12
На СМ-1420 наши электронщики контакты протирали этиловым, а головки на дисководах - иэопропиловым (тогда и научился линейкой и бязью, бязь, кстати, тоже выделяли каждый месяц) - всё что могу сказать по поводу этиловый vs пропиловыйНа самом деле ИПС-ом мыли поверхности блинов. Больших, дюралевых, 355 мм. Действительно, деревянная линейка, бязь, ИПС, и вперед! А головки им мыли, вероятно, из экономии - этиловый-то можно и тонким слоем, а с изопропиловым такое не выйдет. :)

Denkixot
12.10.2019, 16:03
Я ещё использовал такие приёмы - читал какой нибудь другой сектор на дорожке, где сбойный (желательно гарантированно читающийся), а затем сразу сбойный. Или вообще на другой дорожке. Иногда помогало

Ещё один рецепт из личной практики:
Иногда помогало ЛЕГЧАЙШЕЕ давление пальцем на верхнюю головку дисковода при считывании*

*Не рекомендую использовать этот метод

- - - Добавлено - - -


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

Ещё один рецепт из личной практики:
Иногда помогало ЛЕГЧАЙШЕЕ давление пальцем на верхнюю головку дисковода при считывании*

*Не рекомендую использовать этот метод

Hunta
12.10.2019, 16:26
Иногда помогало ЛЕГЧАЙШЕЕ давление пальцем
Спичку положить :)

anasana
12.10.2019, 22:58
Пятничная версия не находит дисковод.
Угу (, когда выкусывал лишнее не вернул букву дисковода по умолчанию. Снова обновил и перезалил...
https://www.dropbox.com/s/k0vd0p4wdklwtzj/RX50_DZ_koshka_v.2.09.zip?dl=0
Всё-таки от дисковода очень многое зависит. И они разные все такие.. плюс лабиринты перемычек :).
Epson у меня работает если выставить скорость 250, с Canon-овскими головами у меня читают на 300. Кому нулевая сразу легко даётся, а кто круги наматывает...


А еще хотелось бы иметь чтение не только отдельных секторов, но и целой дорожки.
Добавил, из контекстного меню или по CTRL-click можно пытаться считать весь трек под курсором самостоятельно.
При успехе - он обновится в выбранном слоту (дамп не трогается) и создаст для каждого сектора этого трека традиционный файл "FN_success_H_T_S.dat" для группового Импорта. Если нет - ничего не изменится.
единственное, позиционирование на него чего-то всегда идёт через нулевую дорожку. хотя я принудительного IOCTL_FDCMD_RECALIBRATE не делаю, и как можно ускорить перемещение, особенно это бесит к последним дорожкам, пока не нашел.


И даже отдельной одной стороны при двухстороннем образе.
Нет, надо делать позиционно Select по "о Head 0" / "о Head 1", и считывать; или "Open..." или "Save as..." для каждой половинки в "о Both 01". Так же и в обратную сторону.
Кроме того, в меню Tools есть DS в SS. У меня было несколько специфичных кейсов, вроде выкручивался. Если что, кидайте в личку - я тоже поиграюсь как собрать или разобрать.


.Пронумеровать над "кубиками" по горизонтали - сектора, и вертикали - дорожки. Т.к. приходится считать вручную какой сектор не прочитался
Пока не очень наглядно, но внизу справа показывается адрес начала сектора в дампе, порядковый номер сектора, номер трека (поверхности) и дорожкового) сектора находящегося под курсором (если с Shift, то индексация не с нуля, а с 1), а так же пересчёт из DZ если с зажатым Control.
У меня есть идейка обыграть шапку "линейкой", как иногда у часов бывает циферблат "•...•...•", посмотрим. а то цифр не видно, а масштаб окна уже не укрупняется.


а как у Кошки с MX-форматом?
Не очень,... как и УКДСКП, Кошка это только оболочка с GUI над драйвером, в котором нет такой возможности. Так что для МХ - только известный хардкор )


по дорожкам: добавить до 83 дорожки (опцию).
Добавил второй чекбокс, каждый +1 cyl.

MiX
12.10.2019, 23:46
У меня есть идейка обыграть шапку "линейкой", как иногда у часов бывает циферблат "•...•...•", посмотрим. а то цифр не видно, а масштаб окна уже не укрупняется.
Да но это будет физический порядок секторов, а логический может быть по другому.

anasana
12.10.2019, 23:48
Да но это будет физический порядок секторов, а логический может быть по другому.
Да, точно, получается бесполезно. Lbn пока только снизу справа с Ctrl :( :(

MiX
13.10.2019, 00:10
Так что для МХ - только известный хардкор )
Теоретически небольшое шаманство в виде контроллера транскодера между выходом дисковода сигнала DATA и входом DATA контроллера дисковода.
На контроллер транскодера подаётся FM код (и индекс) от дисковода, а с выхода MFM код на вход DATA контроллера дисковода, но уже со 2го индексного импульса. То-есть с 1го индексного импульса записывает, со 2го транслирует.
Скорее всего это надо "упаковывать" в сектора...
Примерно так.

anasana
13.10.2019, 00:34
Может даже бюджетная ардуинка справится?
https://zx-pk.ru/threads/12842-zx-disk-studio-programma-dlya-raboty-s-obrazami-diskov.html?p=1023278&viewfull=1#post1023278
Тут есть ещё одна темка, в которой прикидывали, что там по скорости дискретизации впритык совсем для уверенного считывания,
https://zx-pk.ru/threads/30692-arduino-floppy-disk-reader.html
но у МХ и не 1.44

P.S. Я могу сделать из DZ отдельный вью сразу в логическом виде
Например та ХХХ-дискета справа (8)
http://ipic.su/img/img7/tn/intr.1570804930.png (http://ipic.su/img/img7/fs/intr.1570804930.png)
в логическом порядке секторов будет выглядеть вот так:
http://ipic.su/img/img7/tn/XXX8.1570916282.png (http://ipic.su/img/img7/fs/XXX8.1570916282.png)

MiX
13.10.2019, 00:53
Может даже бюджетная ардуинка справится?
Возможно.

MiX
13.10.2019, 01:19
Я могу сделать из DZ отдельный вью сразу в логическом виде
Нумерацию дорожек можно привязать, а вот нумерация секторов для каждой дорожки вроде как индивидуальна. Так? Возможно придётся делать междорожечную строку с нумерацией секторов для каждой дорожки.

anasana
13.10.2019, 01:28
здесь он уже полностью преобразован и по трекам (нулевой трек уходит в самый конец) и по номерам секторов (вся перемешка убрана) на каждой дорожке; одна последовательная колбаса.

MiX
13.10.2019, 01:42
и по трекам
А треки тут причем?

- - - Добавлено - - -

Кстати такое впечатление что дискета 8ми секторная.
Это я про картинки.

Ynicky
13.10.2019, 08:32
Добавил, из контекстного меню или по CTRL-click можно пытаться считать весь трек под курсором самостоятельно.
Работает. Перечитка на другом дисководе идет куда быстрее.

MiX
06.01.2020, 17:09
Должна читать-писать 5.25" одно-двусторонние дискеты от Электроники МС-0585, МС0515, ДВК MY (не МХ!), УК-НЦ (МС 0511), разное с DEC RX50-AA.
Вопрос по интерфейсу FDD PC.
По распиновке 2й контакт (Density Select) идет от дисковода к контроллеру сообщая плотность записи. В 5,25 дисководах это выставляется перемычкой (в 3,5 дисководах микрик).
Переводит ли программа контроллер в нужный режим не смотря на статус дисковода? При установке Биоса вроде как меняет ещё и шаг на 40 при 360Кб.
Влияет ли этот сигнал от дисковода?
Сам дисковод вроде скорость вращения не меняет, только наверное корректировка усилителей.

anasana
07.01.2020, 03:07
После праздников смогу поэкспериментировать с разными дисководами, а так я как-то был недавно вставил вывод какой-то величины а-ля rpm при обнюхивании трека
rpm = 60000 / (rotationtime(результат вызова IOCTL_FD_GET_TRACK_TIM) / 1000);
https://www.dropbox.com/s/4rqj5hddjd20c3q/RX50_DZ_koshka_spd.zip?dl=0
По нажатии Пробела, RPM выводится внизу слева в стороке статуса, перед перечнем обнаруженных секторов на интересующем треке.
И я не гонял, зависит от дисковода или нет, но у меня для чтения 10-секторных 1.2Мб дискеток Э-85 выставлено 300kbps и RPM выдал 361,
а в другом месте читали на чем-то другом, там я вижу выставлено 250kbps и RPM написало 300.
Только добавил, статистику не успел собрать.

А так перед любой операцией я всегда контрольно задаю запрошенную через GUI скорость потока 500/300/250kbps (IOCTL_FD_SET_DATA_RATE).
По Пробелу происходит попытка на каждой из этих трех что-то считать с трека (IOCTL_FD_SCAN_TRACK), на какой чтение прошло успешно то и выиграло... Через контекстное меню можно тестить выбирая вариант вручную.
БИОС, как мне казалось, не используется драйвером Саймона аж никак. Просто если в БИОСе указать что флоппи дисковод - None, то драйвер просто не будет активирован в системе, а любые остальные возможные там варианты я не заметил что бы как-то влияли. Чтение 40-дорожечных дискеток через драйвер получается физически на 1.2 дисководах "двойным шагом" мной самим при шагании на дорожку (IOCTL_FDCMD_SEEK).

MiX
07.01.2020, 04:54
при обнюхивании трека
rpm = 60000

Что я не понял, теперь кошка читает потреково? Я попробовал досовскую дискету прочитать, так кошка выдаёт весь трек за один проход!
Круто!

Кстати нашёл я страничку по 2,88 дисководу ( вроде как интересовались).
2,88 floppy (https://retrocmp.de/hardware/megamate28/megamate28.htm)

- - - Добавлено - - -

Попробовал отформатировать HD 5,25 дискету на 17 секторов, так вот вполне себе умещает. На 18 уже не читает первый сектор на каждой дорожке, скорее всего что последний сектор залезает за индексное отверстие и затирает первый.

Похоже что перестраховались перед созданием стандарта на 15 секторов и сделали некий запас. Так-же это создало возможность дополнительных вариантов по защите дискет от копирования.

MiX
08.01.2020, 14:24
БИОС, как мне казалось, не используется драйвером
Тут такое дело, при подключении старого 40 дорожечного дисковода кошка ругается что не вставлена дискета. На самом дисководе нет датчика вставленной дискеты, а готовность даёт после раскручивания диска. Так вот биос даёт загрузку дискеты без проблем, видимо делает проверку готовности после команды чтения.
Можно ли в кошке сделать кнопку типа "продолжить" поле того как говорит "нет дискеты".

Да и за одно сделать вариант чтения без создания образа!,так-как необходимо сделать несколько пробных чтений дискеты для подбора разметки.

SuperMax
08.01.2020, 15:10
Похоже что перестраховались перед созданием стандарта на 15 секторов и сделали некий запас. Так-же это создало возможность дополнительных вариантов по защите дискет от копирования.
ну так была утилита PU1700 которая как раз и обеспечивала работу с дискетами большего формата (с большим количеством секторов)

Hunta
08.01.2020, 16:10
Попробовал отформатировать HD 5,25 дискету на 17 секторов, так вот вполне себе умещает. На 18 уже не читает первый сектор на каждой дорожке, скорее всего что последний сектор залезает за индексное отверстие и затирает первый.


ну так была утилита PU1700 которая как раз и обеспечивала работу с дискетами большего формата (с большим количеством секторов)

Вариант поставки Windows 95 на дискетах (3.5 дюйма) - первая (загрузочная) дискета была обычная, а остальные были отформатированы, насколько мне не изменяет память - 18 секторов на дорожку.

anasana
08.01.2020, 17:22
> при подключении старого 40 дорожечного дисковода...
о, как, прикольно.. даже не ожидал, что такой режим может быть полезен для проверки, жаль я свой роботрон старенький куда-то уже сплавил.
Про 18 секторов на дорожку, у Microsoft был Distribution Media Format (DMF) штука которая успешно использовала особенности обработки mfm-потока контроллером и позволяла забить дорожку по-максимуму. А вообще-то, я для всех профилей чисел секторов на дорожку в программе задаю одно и то же значение 0x10 (gap3 size between sectors) врзятое с потолка, может его поуменьшать...

..Диалоги предупреждений попробую изменить.

> вариант чтения без создания образа
В диалоге "Save as..." под системными кнопочками "Сохранить" и "Отмена" можно нажать "Read to slot".

MiX
08.01.2020, 18:14
В диалоге "Save as..." под системными кнопочками "Сохранить" и "Отмена" можно нажать "Read to slot".
кошка 2.09 - с начало не было такого варианта, после когда я добавил Read to slot в название образа, кнопка появилась при повторном открытии.

В общем один раз получилось, и больше кнопка не появляется. Да и кнопку лучше вывести на основное окно.


даже не ожидал, что такой режим может быть полезен для проверки, жаль я свой роботрон старенький куда-то уже сплавил.
Я считаю что лучше 40 дорожечные дискеты читать на 40 дорожечном дисководе (особенно сбойные). Там головка шире, и вероятность прочитать плохо намагниченный участок повышается.

AFZ
08.01.2020, 22:23
Вариант поставки Windows 95 на дискетах (3.5 дюйма) - первая (загрузочная) дискета была обычная, а остальные были отформатированы, насколько мне не изменяет память - 18 секторов на дорожку.Стой! У 3" дискет HD всегда 18 секторов на дорожку. (У DD всегда 9). И PU1700 - одна из последних утилит такого рода, первой была 800.com, которая позволяла уложить на DD-дискету (MFM) 10 секторов на дорожку. Не помню, как она работала с HD, но отформатировать дискету 720К на 800К всегда было бкз вопросов. Единственным неудобством было то, что не все БИОСы это понимали, в результате не на всех компах удавалось загрузиться с дискеты на 800К.

Hunta
08.01.2020, 22:54
У 3" дискет HD всегда 18 секторов на дорожку.
Да, память подвела, но сколько то секторов на этих дискетах было добавлено. Насколько мне опять же не изменяет память, вроде на них было написано 1.8 мб. Если посчитать на пальцах, получается 21 или 22 сектора

CodeMaster
08.01.2020, 22:57
Насколько мне опять же не изменяет память, вроде на них было написано 1.8 мб. Если посчитать на пальцах, получается 21 или 22 сектора

у Microsoft был Distribution Media Format (DMF)
Смысл мучать старушку, если есть Вики (https://en.wikipedia.org/wiki/Distribution_Media_Format)? Там же написано, что прога 2M позволяла записать на HD соответственно ~2 метра данных.

anasana
09.01.2020, 19:45
По настроению мучаем что попалось :) :) :)

Попробовал отформатировать HD 5,25 дискету на 17 секторов, так вот вполне себе умещает. На 18 уже не читает первый сектор на каждой дорожке, скорее всего что последний сектор залезает за индексное отверстие и затирает первый.
А сейчас поигрался с GAP3, сбросил его с текущего 0х10 до 0х03 и на DS HD 96 tpi 1.2 дискете забегало как форматирование так и успешное чтение всех 18 секторов на дорожке включая первый.
P.S. Вариант с "Продолжить" из лички дал доступ к началу чтения на 40-ке?

hobot
09.01.2020, 22:00
anasana, я извиняюсь за критику, у меня не сложилось с кошкой по многим причинам,
сложный не понятный интерфейс, куча настроек неясно влиющих на что то и на что именно,
квадратики разноцветые, но главное ни одной прочитанной этой софтиной дискеты от УК-НЦ я не получил. Проехали. Вопрос такой - вот есть ukdskp - всем понятно под какой формат заточена,
вставил дискету - получил образ (с ошибками или без), можно ли и в кошке сделать для
стандартных изученных форматов просто кнопку (автонастройка) - УКНЦ(MZ80) - считать в образ,
УКНЦ(MZ40) - считать в образ , хотя сейчас это уже не слишком актуально и хотя ещё целый
перечень программ для УК-НЦ (Зеленоградских в основном) не обнаружен = шанс, что они вдруг всплывут стремится к нулю.

Я кстати склоняюсь больше считыванием по возможности не заниматься и постепенно
планирую от оборуд. под это дело избавиться.

Hunta
09.01.2020, 22:13
anasana, не слушай его, в Кошке всё понятно и последние дискеты (включаю большую коробку с более чем сотней дискет) вычитывал только Кошкой - ибо есть возможность понять - какой формат, где ошибки, и попробовать повторными чтениями снять таки инфу - что и было сделано :)

anasana
10.01.2020, 22:16
... вставил дискету - получил образ (с ошибками или без)...
так это можно прямо уже :)
а вот на синхронный разбор полетов - очень жду в личке-почте-скайпе :)
Контакты: скайп: ana-sana, почта: anasana@ukr.net, email: anasana@gmail.com

anasana
04.02.2020, 02:58
Обновлена Кошка по упорным изысканиям этого года ув. MiX различных режимов работы программы.
https://www.dropbox.com/s/8sfdatz52m2gii3/RX50_DZ_koshka_tdm.zip?dl=0

Так же добавлена функция (не новая есс-но, с IOCTL_FDCMD_READ_TRACK давно игрался, например, @Titus https://zx-pk.ru/threads/16133-tryuki-s-kontrollerom-fdd-82077.html );
сюда же комментарий от Simon Owen:
"Unfortunately, the PC floppy controller doesn't provide an official way to read the CRC bytes for each sector. It only reports whether the CRC found on disk is valid. : (

However, it is possible to read the CRC bytes for the first sector on each track, using the IOCTL_FDCMD_READ_TRACK command. This command works like a multi-sector read command, and uses the sector "size" parameter to determine how many bytes to read from each sector. If the disk contains 512-byte sectors (size=2), and you use IOCTL_FDCMD_READ_TRACK to read 1 sector with size=3, the FDC will return 1024 bytes of data from the sector data field. The bytes at offset 512 and 513 in the data will be the real CRC bytes.

If the disk tracks were created as a single bitstream write, it may be possible to see the CRC bytes for all sectors. If you use size=6 the FDC will return 8192 bytes of data, which can be parsed to extract the other CRCs. This is often possible for commercial disks that were created using a TRACE disk duplicator. Modified disks will introduce splice points in the bitstream, which will prevent this technique from working correctly."

В общем, понятно, что особо далеко не уедешь, но! мне давно хотелось найти ненапряжную, "бюджетную" для любого компа возможность под виндой по-ходу собрать статистику размера GAP3 реальных (пока только MFM) дискеток разных операционных систем при различных количествах секторов. И в принципе, если принять неизбежность ряда ограничений, она справляется с этим на ура не прибегая к аппаратным читалкам.
В архиве выше приложены примеры треков нескольких попавшихся дискеток.

Пока наблюдения:
- если сделать просто обычное форматирование дискеты на целевой системе, то инфа треков Кошкой читается идеально. И после разбора track_raw можно будет произвести запись 1-в-1 с разметкой оригинальной дискеты.
- некоторые дистрибутивные дискеты "от производителя" так же дямпятся треками идеально.
- у обычных "живых" рабочих дискеток в этом режиме читается стабильно первый сектор, два байта контрольной суммы этого сектора и следом первый байт '4E' блока GAP3, остальной поток идёт с битовыми сдвигами и порой удачными чётными секторами.
- хочется встретить дискеты с интерливингом.
- если у дискеты первый сектор трека, по какой-то причине, не распознан, IOCTL_FDCMD_READ_TRACK вообще ничего не возвращает.
- битые сектора сносят гармонию на треке напрочь.
- каждый трек сохраняется в отдельном файле, поэтому рекомендуется останавливать считывание через ESC по обстоятельствам для принятия решения.
- Правой кнопкой мыши на любом кубике, а там "Dump all (40/80/160) tracks from diskette*" (можно выбрать любую сторону дискеты или обе сразу). Размерности в байтах.
- косметические комментарии лучше в личку.

SECTORSIZE: '00' - 128, '01' - 256, '02' - 512, '03' - 1024, '04' - 2048, '05' - 4096, '06' - 8192
'sync 00...00'A1'A1'A1'FE - identification field start
'sync 00...00'A1'A1'A1'FB - data field begin

RS1SETUP4 (DEC RX50 software diskette):
{[Index-field section and ID-field of Sector 1 is not catched][sectordata 512][CRC16 2][GAP3 '4E'-48]} - сектор №1
{[SYNC '00'-8][A1'A1'A1'FE'CYL'HEAD'SECTOR'SECTORSIZE'CRC16-2][GAP2 '4E'-22][SYNC '00'-12][A1'A1'A1'FB][sectordata 512][CRC16 2][GAP3 '4E'-48]} - сектор №2
... остальные 8 секторов
[GAP4b '4E'-78]}

IRA (Э-85 @CodeMaster formatted diskette):
{[Index-field section and ID-field of Sector 1 is not catched][sectordata 512][CRC16 2][GAP3 '4E'-16]} - сектор №1
{[SYNC '00'-12][A1'A1'A1'FE'CYL'HEAD'SECTOR'SECTORSIZE'CRC16-2][GAP2 '4E'-22][SYNC '00'-12][A1'A1'A1'FB][sectordata 512][CRC16 2][GAP3 '4E'-16]} - сектор №2
... остальные 8 секторов
[GAP4b '4E'-208]}

typical used diskette:
{[Index-field section and ID-field of Sector 1 is not catched][sectordata 512][CRC16 2][GAP3 '4E'-1]далее расшифровка потока сбивается но сектора структурно различимы и угадываются}

Bolt
04.02.2020, 15:53
- у обычных "живых" рабочих дискеток в этом режиме читается стабильно первый сектор, два байта контрольной суммы этого сектора и следом первый байт '4E' блока GAP3, остальной поток идёт с битовыми сдвигами и порой удачными чётными секторами.
- битые сектора сносят гармонию на треке напрочь.
Когда-то писал читалку битых секторов на дискете. Читала сектор много раз, кодировала прочитанное обратно в MFM, и выводила для визуального редактирования. Если искажён хотя бы один бит, то дальше читается как бы мусор, но читалка позволяла найти правильную байтовую синхронизацию.

Поток с битовыми сдвигами и битыми секторами можно закодировать в MFM, а потом поискать в этих "RAW"-данных синхропоследовательности других секторов, с поправкой на некоторые искажения, внесённые декодером при чтении трека.



- если у дискеты первый сектор трека, по какой-то причине, не распознан, IOCTL_FDCMD_READ_TRACK вообще ничего не возвращает.

А IOCTL_FDCMD_READ_TRACK может читать не с первого сектора? А потом пройтись MFM кодером-декодером для получения всего что есть на треке.

xolod
05.02.2020, 15:11
anasana,
По поводу размера GAP3 мы уже выясняли он равен 38 на ДВК MY КМД(91) и УКНЦ MZ и у БК-001X КНГМД короче где К1801ВП1-097,-128.
https://zx-pk.ru/threads/29130-gotek-dvk-uk-nts-i-vse-vse-vse.html?p=963080&viewfull=1#post963080

https://github.com/keirf/FlashFloppy/blob/eb36d402b83e269172a1306b1ae3b1819698346a/src/image/img.c
https://github.com/keirf/FlashFloppy/commit/4e1f7b9291c617607e3e27979e728eb83a55666d#diff-e6e8a7686bbeb730ebabec5accb66f12

xolod
05.02.2020, 18:09
Все оказалось интересней:
Первый образ создан утилитой HxCFloppyEmulator v2.2.2.1
71450
Второй образ отформатирован на MY c 91 прошивкой и ВП1-128 + GOTEK
71449
Третий образ отформатирован на MY c 255 прошивкой и ВП1-128 + GOTEK
71451
И вот здесь почему-то только 24 дорожки отформатировались и дальше ошибки форматирования!!!

Еще есть образ от УКНЦ но его делал не я.
https://github.com/keirf/FlashFloppy/files/1988094/-.001.zip

hobot
05.02.2020, 19:50
Все оказалось интересней:
вот и мне по последним ссылкам стало интересно:
1. почему откуда и зачем .hfe
2. предназначение этих образов - они пустые или там что то есть?
3. почему размеры странные? особенно для образа УК-НЦ не понятно...
4. Ошибки при создании MY на готеке? Как так? Ошибка контроллера?

ИМХО: если это пустые образы - имхо - их лучше создавать в эмуляторе
средствами системы.
http://hobot.pdp-11.ru/ukdwk_archive/ukncbtlwebcomplekt/bolvanka/

У меня на USB-носителе для готека обычные .DSK, я по вопросу от anasana перепроверил этот факт )

xolod
05.02.2020, 19:55
Это низкоуровневый образ дискеты со всей информацией о ее формате.
Такие образы можно форматировать.

hobot
05.02.2020, 20:03
Такие образы можно форматировать.
я не проверял, хочу уточнить - а что DSK на готеке нельзя форматнуть, если "приспичит" ?
так по ссылкам (https://zx-pk.ru/threads/28146-koshka.html?p=1044620&viewfull=1#post1044620) пустышки или нет, и почему такие размеры???

Hunta
05.02.2020, 20:05
Там Страна монстров для ДВК. Но форматирование слетело :)

xolod
05.02.2020, 20:21
Там пустышки.

anasana
05.02.2020, 21:53
Там Страна монстров для ДВК. Но форматирование слетело :)
Очень жестко ))), но ведь правда, - если сделать полный перебор всех вариантов байт на дискете, в одной из комбинаций будет искомая Страна монстров...

Hunta
05.02.2020, 22:42
если сделать полный перебор всех вариантов байт на дискете,
А если знать хотя бы размер - то можно и меньший перебор сделать :)

MiX
05.02.2020, 23:04
если сделать полный перебор всех вариантов байт на дискете, в одной из комбинаций будет искомая
Таким образом можно восстановить испорченный сектор по КС, если конечно сама КС не испорчена.
Кстати, а как перезаписать сектор отдельно и/или дорожку?

- - - Добавлено - - -

...
Разные дискетки.
https://s7.hostingkartinok.com/uploads/images/2015/08/d49c5e6bb9a23ea382688919430ff2db.jpg

CodeMaster
05.02.2020, 23:22
Разные дискетки.
О_о, с 750МБ Zip'а цифровое audio должно быть более тёплым и ламповым чем с CD.

anasana
05.02.2020, 23:23
Да, борьба за достоверную КС безусловно стоит усилий. Код Хемминга показывал четные ошибки и позволял исправлять одиночные, а вот интересно, CRC16 который идет после данных сектора сколько может иметь неподходящих но сходящихся численно значений, совпадающей по КС я вот слышал, что подбор крипто хешей так делают подбирая часть данных так, что бы расчет в итоге совпадал для маскировки вмешательства.
Запись выборочно подорожечно будет в меню :) (#скоро)

blackmirror
05.02.2020, 23:43
anasana, для простого crc16 не имеющего делителей меньшей степени, каждый бит даёт уникальные остатки пока длина сообщения не превысит 65535 бит включая crc. Это означает, что для более коротких сообщений нельзя исказить два бита так, чтобы crc совпал, а вот если длина сообщения превышает 65535 достаточно исказить два бита отстоящих на данную величину. Если рассматривать составные crc, там максимальная длина сообщения будет меньше, но они могут обнаруживать и большее количество ошибок. К примеру 65535 делится на 1285, и есть составной полином с таким периодом, для которого нужно исказить минимум 5 бит чтобы crc не изменился, то есть он может обнаружить 4 искажённых бита в сообщении длиной до 1285. А вот если длины превысить, то обнаружение второй ошибки уже не гарантируется.

MiX
05.02.2020, 23:53
Запись выборочно подорожечно будет в меню
А посекторно?
Заодно, нужна возможность просмотра/редактирования образа. При открытии файла образа "Write disk" сразу начинает писать на диск, хорошо что у меня на дискете была выставлена защита от записи, иначе бы всё стерлось.

О_о, с 750МБ Zip'а цифровое audio должно быть более тёплым и ламповым чем с CD.
Ну так были диски MD (https://ru.wikipedia.org/wiki/MiniDisc), Hi-MD (https://ru.wikipedia.org/wiki/Hi-MD) от Sony.

MiX
06.07.2020, 00:54
Из того что меня особо смущает, так это параметр SECTOR_GAP3, в Интернетах предложили задать 0x10, вроде работает.
А для какого формата? RX50 14h и 18h(format)
форматы. (http://www.dbit.com/wilson/floppy.html)

kolk
07.07.2020, 21:01
Если ошибка одна или они рядом, с CRC поступают так: XOR-ят сохраненную и посчитанную заново, и откручивают назад по алгоритму CRC. Если в какой-то момент в слове 1-2 единицы, то это и есть произошедшие ошибки, и их можно исправить :)

SuperMax
05.08.2020, 17:38
какая версия последняя рабочая ?
а то взял RX50_DZ_koshka_2.08_35ready.zip - заявляет что нет диска
на другой машине диск видит но все помечает черным

нашел в архивах версию 2.06 - читает нормально

формулирую очень нужную фичу:
вот сейчас считываю дискеты и среди них попадаются те, на которых даже эта кошка не видит нулевые сектора на дорожках
я конечно решил проблему - сдвинув планку со светодиодом на дисководе в начало, но правильнее добавить программную регулировку момента отлова индексного маркера. можно кстати сразу вывести на экран дельту в мс и знак указать - опережает или отстает маркер от отверстия.
а то сейчас оно работает тупо - пришел сигнал от отверстия, начинаем искать индексный маркер и если в течении определенного короткого времени мы его не поймаем - нет нулевого сектора.

upd: причем на другой части дискет пришлось снова откручивать планку и двигать ее вперед до упора.
короче весело в школе жили - все дисководы были настроены неправильно и по-разному

anasana
16.10.2020, 22:43
Наткнувшись на:


Посоветуйте мат. плату которая точно поддерживает два дисковода ну и не древнее 775 сокета
Это только платы BIOSTAR характерного зелёного цвета.
https://www.ebay.com/itm/Biostar-865G-Micro-775-ver7-1-LGA-775-Intel-Motherboard/332444858122?hash=item4d6741f70a:g:TaAAAOSwPCVYBkQ P
https://www.ebay.com/itm/Biostar-GF7050V-M7-ver6-1-LGA775-Socket-Intel-Motherboard/333292500287?hash=item4d99c7f53f:g:FZsAAOSw4shYBkI w
https://www.ebay.com/itm/Biostar-945GC-M7-TE-ver-6-0-LGA-775-Intel-Motherboard/332780231934?hash=item4d7b3f5cfe:g:Kt4AAOSwT5tWHUv Z
Прям с местного OLX за $6 вместе с пересылкой получил рабочий комплект на базе Biostar 865GM micro775 (https://www.biostar.com.tw/app/ru/mb/introduction.php?S_ID=1).
Из подручных запасов довёл до ОЗУ 2 Гига, Пень 3.0 МГц с гипертрейдингом а-ля два ядра, последний биос с сайта обновился без проблем. 7-ку ещё не ставил (никак SSD-ху не высвобожу), но ХР летает уверенно даже на обычном винте, и все плюшки для IOCTL_FD_RAW_READ_TRACK имеются:
https://pic.maxiol.com/thumbs2/1602876216.3280623174.img20201012213353.jpg (https://pic.maxiol.com/?v=1602876216.3280623174.img20201012213353.jpg&dp=2)

hobot
17.10.2020, 10:38
довёл до ОЗУ 2 Гига

7-ку ещё не ставил
маловато вообще то для комфортной 7-ки, ей и 4 мало,
минимум 8, ещё лучше 16 надо бы. Тогда получше, получше )))

Radon17
21.10.2020, 00:38
Есть небольшое предложение относительно интерфейса "Кошки". Мне кажется, было бы неплохо сделать возможность добавлять программируемые пользователем "пресеты" вычитывания. Например, для МС 0515 - чтение двух сторон и сохранение в два файла по 400 кб, для МС 0585 - чтение одной стороны, для УКНЦ/ДВК (MY) - две стороны, 800кб, IBM (5.25, 720 кб) - две стороны, 9 секторов на дорожку, сохранять как .ima и т.д. Сделать "пресеты" отдельными пунктами в меню и обязательно при закрытии программы запоминать значение последнего выбранного.
При чтении пары дискет это конечно особо не играет роли, но когда этих дисков несколько пачек и все от разных машин, да ещё и не подписаны...

haywire
23.10.2020, 11:10
маловато вообще то для комфортной 7-ки, ей и 4 мало,
минимум 8, ещё лучше 16 надо бы. Тогда получше, получше )))

Существовали такие зелёные платы BIOSTAR на 965/975-х чипсетах... Только купить их сейчас невозможно, никак. Они все померли, из-за статики по USB.

anasana
01.03.2024, 16:04
Пятничное обновление Кошки.

https://www.dropbox.com/scl/fi/a8kn5udvajbjk1dkoenjd/RX50_DZ_koshka_2.10bta.zip?rlkey=al85i129ym83fuyxy 1arcmc2v&dl=0

выкладываю прямо тут, т.к. идёт экспериментальное тестирование парочки свежедобавленного:
+ выбор размера сектора (во всяком случае дискеты Роботрона 40-5-1024 и СМ1810 80-16-256 дампятся)
+ выделено поле выбора размеров межсекторного GAP3 (наполняется мной, по пожеланиям, пресеты тоже накапливаю)
+ добавлен переключатель режима FM/MFM (контекстное меню по ПКМ, а в заголовке программы отображается текущий)
+ интерлив и skew чувствует себя отлично, но в интерфейсе виден ненавязчиво (в статусе и в 'scanlog.txt' по "Пробелу").
пока лично у меня ещё явные вопросы
- с режимом FM
- MFM при размере сектора 128 байт (визуально всё форматится, детектится, но читает пока только если по одному сектору спрашивать, треком не хочет - постоянно явно какая-то коза в последнем секторе)

доделки будут в:
_ поле GAP3 - можете присылать на добавлять свои значения, если вдруг хотите сохранить, кроме самого дампа, чуть больше информации о своей считываемой дискете.
с реальных носителей их можно высмотреть в файлах 'ИФ_rawtrack_HeadX_TrackYY.dat' (после отработки по ПКМ "Dump all 40/80 tracks on diskette..."),
где чаще всего прям хорошо читается и наглядно видны данные с первого сектора дорожек (размером SectorSize), потом идут два байта КС (по CRC-16-CCITT),
и следом просто посчитать размер GAP3 - это количество "4E" до начала последовательности "00 00 00 00 00 00 00 00 A1 A1 A1 FE" (и далее продолжается заголовок второго сектора и т.д.).
если из-за сбоев синхронизации на дорожках сплошные следы сдвижкомусора, то это не проблема - цилиндров на дискете аж 40/80, а посчитать и перепроверить гапы достаточно с одной-двух прилично выглядящих дорожек.
_ учтении убольшенного системного шрифта (DPI детектится, но положения кнопок, что бы туда текст влазил будет позже)

все вопросы по пользованию лучше мне в любую личку, что бы не замусоривать саму тему (всё равно я отвечаю не здесь, а напрямую спросившему); пожелания - как Вам удобно.

anasana
02.07.2024, 11:53
Есть непонятный содержимый ,обычно вижу его в файле indexf.sys
https://pic.maxiol.com/thumbs2/1719907719.2997849269.fmtsct.png (https://pic.maxiol.com/?v=1719907719.2997849269.fmtsct.png&dp=2)
это как бы стандартное заполнение после инициализации, но обычные сектора полностью заполнены паттерном "0xB6 0x6D", а у этих на месте контрольной суммы и не обычно рассчитываемая additive checksum и не CRC-16-CCITT. Символы JH в подобных секторах порой встречаются не только под конец, но и в середине, причём считываются такие сектора без ошибок, как будто так и были штатно записаны.
Сектора по шаблонам после разных форматировщиков в кубиках я помечаю обратным слешем, а эти пока условно крестиком.

и ещё использую пометку прямым слешем чтобы было легче искать и наводить красоту:
https://pic.maxiol.com/thumbs2/1719908719.2997849269.fmtsctbad.png (https://pic.maxiol.com/?v=1719908719.2997849269.fmtsctbad.png&dp=2)
это когда сектор явно исходно был форматирован, но безопасно битый т.к. полезных данных в нём нет.
(всё поле диска зелёным здесь сделано специально, подчеркнуть случаи, когда дискету клонировали копировщиком с битого носителя на хороший носитель ещё в те времена, а сдампили уже сейчас)

Hunta
02.07.2024, 12:20
Есть непонятный содержимый ,обычно вижу его в файле indexf.sys
Для indexf.sys надо проверять по карте его(!, не bitmap.sys) занятости - блок занят или нет. Если свободен - игнорировать. Но что конкретно это - не скажу. Сбрось такой файл - гляну

Denkixot
11.07.2024, 06:55
Добрый день. Попадаются дискеты, на которых не считывается нулевая дорожка. Но и попадаются, на которых не читаются первые сектора. С чем это связано и как с этим бороться?

https://pic.maxiol.com/thumbs2/1720670025.776529447.1sect.jpg (https://pic.maxiol.com/?v=1720670025.776529447.1sect.jpg&dp=2)

dk_spb
11.07.2024, 11:34
не читаются первые сектора....С чем это связано и как с этим бороться?
Насколько мне известно это связано с особенностью обработки сигнала Index в Воронежских контроллерах.
Может ли Кошка на стандартном PC оборудовании обходить эту проблему - это только anasana скажет.
На нестандартном (всякие USB читалки) - проблема решаема.

iddqd
04.11.2024, 04:09
Пятничное обновление Кошки.
https://www.dropbox.com/scl/fi/a8kn5udvajbjk1dkoenjd/RX50_DZ_koshka_2.10bta.zip?rlkey=al85i129ym83fuyxy 1arcmc2v&dl=0


Почему то на этой версии интерфейс поехал, на предыдущей нормально.

https://pic.maxiol.com/thumbs2/1730682429.1550092679..jpg (https://pic.maxiol.com/?v=1730682429.1550092679..jpg&dp=2)

Hunta
04.11.2024, 10:55
интерфейс поехал
Похоже, проблема как-то связана со scale для монитора. Подключаюсь удаленно к виртуалке с Win2022, выставив разрешение 1920x1080 - всё ок. Подключаюсь к этой же виртуалке, выставив - полный экран (UHD, scale - 150%) - поплыли.

Похожее набллюдал для программ, графические библиотеки которых кривовато работают в случае дисплеев со scale