Amiga 1200 #02: подключение и доработка FDD, запись дискет на PC

Hardware
DIY
Amiga
Retro
Arduino
[ 18.05.2020 ]

Дорабатываем и подключаем к Amiga 1200 привод FDD от PC. Тестируем запись дискет на PC двумя способами.  Первый способ записи от параллельного порта компьютера с помощью утилиты ADTWin. Второй способ с помощью платы Arduino Pro Mini и утилиты Arduino Amiga FDD Reader/Writer.

Доработка привода FDD

Большинство «Амиг» были оснащены 3.5" дисководом для дискет двойной плотности DD (double density) максимальной ёмкостью в 880 KB при использовании стандартной файловой системы FFS. Аналогично, на своём промежутке времени, на PC могли использоваться дискеты DD максимальной ёмкостью в 720 KB со своей файловой системой. В пике развития этих носителей информации большее распространение получили дискеты высокой плотности HD (high density) ёмкостью 1.44 MB, которые будут применяться в данном случае.

В запасах нашёл привод FDD ALPS DF354H(121G), для корректной работы с «Амигой» он требует небольшой переделки. Демонтируем нижнюю крышку, видим плату контроллера, которую и будем модифицировать. Процесс оказался не слишком сложным, главное проявить аккуратность. Схемы доработки разных дисководов есть на ещё живой странице на немецком языке.

Amiga 1200 #02

Первым делом нужно переключить режим определения привода с диска B на A в PC терминологии. У «Амиги» основной привод должен определяться как DF0. На плате я зачистил паяльником пятак DS1 и запаял DS0. Далее я соединил контакт 34 разъёма IDC дисковода и площадку RD на плате (чёрный провод) для подачи сигнала готовности READY.

Затем перерезал дорожку от 2 контакта IDC разъёма. Аккуратно с прогревом отпаял и отогнул контакт (5 нога получается от метки на фото) у контроллера SD705A, подложил изоляцию и запаял перемычку между этими контактами (синий провод) для подачи сигнала наличия дискеты DISKCHANGE.

Amiga 1200 #02

В итоге плату прозвонил, места пайки промыл спиртом. На этом доработка завершилась. Для следующих экспериментов нужно будет подготовить два типа интерфейсных шлейфа для подключения FDD. Один для пайки разъёма параллельного порта к компьютеру, другой для прямого подключения привода FDD к Amiga.

Запись дискет на PC через параллельный порт

Ни каких оригинальных дискет от «Амиги» в наличии не имелось. Чтобы проверить работоспособность доработанного FDD и что-нибудь загрузить, предстояло их подготовить на ПК. Для Windows имеется утилита ADTWin, которая позволяет управлять стандартным PC дисководом (без доработок) через параллельный порт и записывать образы «амижных» дискет ADF в родном формате для Amiga. Она работает только на запись.

Amiga 1200 #02

Для проверки способа потребовалось собрать старую машину с материнской платой, где есть в наличии параллельный порт. Установка ОС с флешки через USB не поддерживается. Сборка потянула за собой поиски CD\DVD привода и дисков с какой-нибудь подходящей операционной системой. Старое барахло не только греет душу, но и бывает полезным. Нашлись все компоненты, FDD дисковод без переделок попался от какого-то сервера. Инсталляция Windows XP прошла успешно.

Кабель FDD с разъёмом на параллельный порт, он же LPT, паялся по схеме с страницы ADTWin, там всё довольно подробно описано. Дело это муторное, жилы тонкие, иногда обрывались. Собственно, кроме старого железа с LPT, стандартного «писишного» (без переделок!!!) FDD и спаянного кабеля ничего не требуется.

Amiga 1200 #02

Я попробовал записать при Generic настройках в программе ADTWin пару новых дискет с оболочкой Workbench AmigaOS.  Забегая вперёд, дискеты в модифицированном приводе на «Амиге» читались уверено.  Конечно, многое ещё зависит от состояния носителей информации и оборудования.

После пары перезагрузок на старом ПК посыпался старый HDD Maxtor. WinXP запустить больше не получилось, компьютер уходил в перезапуск. Замены жёсткого диска под рукой не оказалось и на этом опыты с данным способом записи завершились.

Запись дискет на PC с помощью Arduino Pro Mini

Следующий способ от разработчика Роберта Смита (Robert Smith) построен на плате Arduino Pro Mini с микроконтроллером ATmega 328. Все схемы и исходники имеются на сайте Arduino Amiga Floppy Disk Reader/Writer, а также доступны в репозитории на Github с открытым исходным кодом.

Amiga 1200 #02

Сначала я загрузил исходник от Роберта в Arduino Pro Mini с помощью Arduino IDE через адаптер USB -» UART. Потом собрал схему на проводниках. Интерфейсный шлейф к дисководу должен использоваться с прямым подключением без перекруток (как и на «Амиге»). Аккуратно разобрал один IDC разъём, обрезал использованные жилы с перекруткой и заново обжал IDC в тисках.

Стандартный PC FDD (без переделок) дополнительно запитал от зарядки телефона через изготовленный кабель с micro USB. Силы тока для питания привода только от компьютерного USB разъёма в 500 mA недостаточно. После подключения схемы можно пробовать запись через спец софт Arduino Amiga Floppy Disk Reader and Writer.

Amiga 1200 #02

Адаптер USB -» UART у меня висел на 3 COM порту, выбираем его. Прежде чем писать ADF образы, надо провести диагностику (Run Diagnostics). Для калибровки требуется дискета в формате «Амиги». Тут пригодилась дискета с Workbench, записанная первым способом через параллельный порт. Так как Amiga работает с дискетами только двойной плотности DD, я заклеил одно из сквозных окон на дискете HD (не путать с окном с защёлкой защиты от записи) изолентой на всякий случай. Так мы дадим понять FDD приводу, что используется дискета DD.

Amiga 1200 #02

Диагностика прошла успешно. Дальше проводим запись ADF образа на дискету. А потом чтение с неё в файл. После каждой операции выводятся диалоговые окна. Не всегда сообщение о успешной записи соответствует действительности. Пара дискет у меня писались успешно, но читались с ошибками.

Amiga 1200 #02

В итоге, помимо Workbench, я записал ещё несколько дискет с демо версией игры Flashback и работой от демосценеров Andromeda - Nexus 7. Этот способ показался несколько капризным. Хорошо работал только на новых (не использованных) дискетах. Запись через параллельный порт, на мой взгляд, стабильнее.

Тестирование FDD на Amiga 1200

Amiga 1200 #02

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

Amiga 1200 #02