Привет.
Загадка. Есть два FDS дисковода, оба без защиты от зиписи (на одном защита снята, на другом и не было). Оба дисковода без проблем читают лицензионные FDS дискеты.
Но если попытаться на них записывать дискеты, то каждый дисковод читает только те дискеты, что записал сам. Дискеты, записанные на первом дисководе, не читаются на втором. И наоборот. Выдаётся ошибка то 22, то 27.
Для записи я пробовал использовать и Disk Keeper, и Disk Hacker II (вроде известный и проверенный софт для копирования), и свой собственный дампер (
https://github.com/ClusterM/famicom-dumper-writer) - результат не меняется.
Поначалу я подумал, что это какая-то проблема с калибровкой на одном из дисководов. Я попробовал записать одну дискету первым дисководом с одной стороны и вторым с другой и отправил её почтой владельцу третьего дисковода. У него не читается ни одна из сторон.
Пробовал читать содержимое дискеты записанной на первом дисководе через второй используя дампер - некорректная CRC на первом же блоке (disk header block). Первые несколько байт читаются нормально, а дальше каша. Никаких закономерностей вроде сдвинутых или пропущенных битов не заметил.
При этом сохранения на лицензионной дискете работают нормально. Если я сохранился в игре на первом приводе, то на втором могу без проблем продолжить игру.
Во всех опытах использовался один и тот же RAM adapter, но я как-то сомневаюсь, что дело именно в нём. Я уже не знаю, куда копать. Видимо придётся подключаться к линии между RAM адаптером и дисководом логическим анализатором и смотреть, что же там происходит.
Есть идеи, почему творится такая мистика?