Дорабатываем и подключаем к Amiga 1200 привод FDD от PC. Запись дискет на PC от параллельного порта компьютера с помощью утилиты ADTWin или с помощью микроконтроллера Arduino Pro Mini и утилиты Arduino Amiga FDD Reader/Writer.
Запись дискет на PC через параллельный порт
Ни каких оригинальных дискет от Amiga 1200 в наличии не имелось. Чтобы проверить работоспособность доработанного FDD и что-нибудь загрузить, предстояло их подготовить на PC. Для Windows имеется утилита ADTWin, которая позволяет управлять стандартным 3.5" дисководом через параллельный порт и записывать образы «амижных» дискет ADF в родном формате для «Амиги».
Для проверки способа потребовалось собрать старую машину с материнской платой, где есть в наличии параллельный порт. Установка ОС с флешки через USB не поддерживается. Сборка потянула за собой поиски CD или DVD привода и дисков с какой-нибудь подходящей операционной системой. Старое барахло не только греет душу, но и бывает полезным. Нашлись все компоненты, FDD дисковод попался от какого-то сервера. Инсталляция Windows XP прошла успешно.
Кабель FDD с разъёмом на параллельный порт, он же LPT, паялся по схеме с проекта ADTWin, там всё довольно подробно описано. Дело это муторное, жилы тонкие, иногда обрывались. Собственно, кроме старого железа, стандартного «писишного» FDD и спаянного кабеля ничего не требуется.
Я попробовал записать при Generic настройках пару новых дискет с оболочкой Workbench AmigaOS. Забегая вперёд, дискеты в модифицированном приводе на «Амиге» читались уверено. Конечно, многое ещё зависит от состояния носителей информации и оборудования. После пары перезагрузок на старом PC посыпался HDD Maxtor. WinXP запустить больше не получилось, компьютер уходил в перезагрузку. Замены жёсткого диска под рукой не оказалось и на этом опыты с данным способом записи завершились.
Запись дискет на PC с помощью Arduino Pro Mini
Следующий способ от разработчика Robert Smith построен на плате Arduino Pro Mini с микроконтроллером ATmega 328. Все схемы и исходники имеются на сайте Arduino Amiga Floppy Disk Reader/Writer, а также доступны в репозитории на Github с открытым исходным кодом.
Сначала я прошил Arduino Pro Mini с помощью Arduino IDE через адаптер USB -» UART. Потом собрал схему на проводниках. Интерфейсный шлейф к дисководу должен использоваться с прямым подключением без перекруток (как и на «Амиге»). Аккуратно разобрал один IDC разъём, обрезал использованные жилы с перекруткой и заново обжал IDC в тисках.
Стандартный PC FDD дополнительно запитал от блока питания зарядки телефона через изготовленный кабель с micro USB. Силы тока для питания привода только от компьютерного USB разъёма в 500 mA недостаточно. После подключения схемы можно пробовать запись дискет через софт Arduino Amiga Floppy Disk Reader and Writer.
Адаптер USB -» UART у меня висел на 3 COM порту, выбираем его. Прежде чем писать ADF образы, надо провести диагностику (Run Diagnostics). Для калибровки требуется дискета в формате «Амиги». Тут пригодилась дискета с Workbench, записанная первым способом через параллельный порт. Так как Amiga работает с дискетами только двойной плотности DD, я заклеил одно из сквозных окон на дискете HD (не путать с окном с защёлкой защиты от записи) изолентой. Так мы дадим понять FDD приводу, что используется дискета DD.
Диагностика прошла успешно. Дальше проводим запись ADF образа на дискету. А потом чтение с неё в файл. После каждой операции выводятся диалоговые окна. Не всегда сообщение о успешной записи соответствует действительности. Пара дискет у меня писались успешно, но читались с ошибками.
В итоге, помимо Workbench, я записал ещё несколько дискет с разным и работой от демосценеров Andromeda - Nexus 7. Способ с Arduino показался несколько капризным. Хорошо работал только на новых (не использованных) дискетах. Запись через параллельный порт, на мой взгляд, стабильнее.
Доработка привода FDD
Большинство «Амиг» были оснащены 3.5" дисководом для дискет двойной плотности DD (double density) максимальной ёмкостью в 880 KB при использовании стандартной файловой системы FFS. Аналогично, на своём промежутке времени, на PC могли использоваться дискеты DD максимальной ёмкостью в 720 KB со своей файловой системой. В пике развития этих носителей информации большее распространение получили дискеты высокой плотности HD (high density) ёмкостью 1.44 MB, которые будут применяться в данном случае.
В запасах нашёл привод FDD ALPS DF354H(121G), для корректной работы с компьютерами Amiga он требует небольшой переделки. Демонтируем нижнюю крышку, видим плату контроллера, которую и будем модифицировать. Процесс оказался не слишком сложным, главное проявить аккуратность. Схемы доработки разных дисководов нашлись на странице от каких-то немцев.
Первым делом нужно переключить режим определения привода с диска B на A в PC терминологии. У «Амиги» основной привод должен определяться как DF0. На плате я зачистил паяльником пятак DS1 и запаял DS0. Далее я соединил контакт 34 разъёма IDC дисковода и площадку RD на плате (чёрный провод) для подачи сигнала готовности READY.
Затем перерезал дорожку от 2 контакта IDC разъёма. Аккуратно с прогревом отпаял и отогнул контакт (5 нога получается от метки на фото) у контроллера SD705A, подложил изоляцию и запаял перемычку между этими контактами (синий провод) для подачи сигнала наличия дискеты DISKCHANGE. В итоге плату прозвонил, места пайки промыл спиртом от лишней паяльной пасты - флюса. На этом доработка завершилась.
Тестирование FDD на Amiga 1200
В наличии уже есть доработанный FDD, прямой кабель к нему и записаны несколько дискет. Собираем хозяйство и тестируем чтение. Все дискеты успешно считались. Будет с чего загрузиться и проверить работу будущих контроллеров клавиатуры и мыши.