Вложений: 1
ZX FDD Emulator. Эмулятор дисковода на Атмега328. Конструкция выходного дня.
Иногда смотря очередной ролик по сборке Спектрум-девайса говоришь себе - "Хочу себе такое!"
У меня нет ответа, почему одна конструкция цепляет, а другая нет...
Сегодня хочу рассказать об эмуляторе FDD. Сейчас меня забросают тапками. Ну сколько можно про одно и тоже? Неужели не хватает многих разновидностей Готека?
Соглашусь. Готек можно считать ультимативным девайсом в данной нише. Про его возможности и преимущества я писать не буду. Все это знают.
Но меня зацепил эмулятор дисковода на "народном" контроллере Atmega328P. Популярные платки Ардуино NANO сделаны именно на этом чипе.
Это старый проект. Его начал EvgenRU еще в 2016 году. Вот большая тема https://zx-pk.ru/threads/26328-plani...a-atmega8.html
В процессе разработки проект изменялся. На данный момент он поддерживает запись (раньше было только чтение).
Надо понимать, что этот FDD-эмулятор поддерживает только trd-образы, но большинству Спектрумистов только это и нужно.
Меня привлекли в этом проекте небольшой размер платы, минимум деталей, использование SD-карты, многострочный режим экрана (в отличие от однострочного экрана Готека).
Итак, схема:
https://i.postimg.cc/jS7rXb5c/shema.jpg
Плата (Автор Alex MicroDRV):
Герберы платы, схема в pdf-формате прикреплены к этому посту.
Пока ждал изготовление платы неспешно собрал все детали, благо их не очень много.
Спаять платку можно за 1-2 часа:
Для управления применяю кнопки. Энкодер не люблю. Раздражает выпирающий вал.
Индикатор I2C OLED 0.96" установил на разъеме. Заказал индикатор на 1.3" - будет крупнее.
https://i.postimg.cc/cHZZCbdm/fdd-5.jpg
Теперь надо прошить Atmega328P. С прошивкой мне помог Rahost. Архив с прошивками прикрепил снизу поста.
AVR USB ATMEGA программатор мне едет с Али уже третий месяц... Поэтому, использовал программатор T48 в режиме ICSP.
https://i.postimg.cc/52YfRzPw/fdd-1.jpg
Подключаем FDD-эмулятор к программатору согласно схеме:
https://i.postimg.cc/TPvvN456/Untitled-2.jpg
Внешнее питание на плату FDD-эмулятора подключать не надо.
Выбираем в программаторе чип ATMEGA328P TQFP32, загружаем дамп прошивки (файл с расширением .hex).
Ставим галку режима ICSP port.
Далее идем во вкладку Config и выставляем фьюзы (Fuse):
Fuse low byte - 0xFF
Fuse high byte - 0xD9
Extended byte - 0xFF
Lock bit byte - 0xFF
https://i.postimg.cc/LXHK2gVQ/Untitled-3.jpg
Все готово. Нажимаем Prog - Program. Если все подключено правильно начнется процесс программирования контроллера.
https://i.postimg.cc/Jh3Vf5jB/Untitled-1.jpg
Отключаем FDD-контроллер от программатора, подключаем внешнее питание 5 вольт со Спектрума на соответствующий разъем платы (он трехпиновый, + по центру). Втыкаем 34-пиновый шлейф флоппи-дисковода.
Включаем питание Спектрума. Если все собрано правильно, то видим надпись NO CARD и краткую информацию. Выключаем Спектрум.
https://i.postimg.cc/7hZkMJGJ/fdd-6.jpg
Записываем на SD-карту (FAT32) trd-файлы. Можно использовать папки.
Втыкаем SD-карту в ZX FDD Emulator. Включаем Спектрум. После загрузки эмулятор выводит на экран список из пяти образов. Перемещение по образам - кнопки верх/вниз. Выбор образа - кнопка OK.
https://i.postimg.cc/cCkND1w9/fdd-7.jpg
После выбора образа на экране будет отображаться его имя, а снизу текущий номер дорожки и головки (как на Готеке).
https://i.postimg.cc/ZKgSpRT0/fdd-9.jpg
При загрузке горит светодиод активности диска. Жаль нет звуковой имитации движения головки. Надо попробовать подключить пьезодинамик на выход STEP.
Диззи загрузился успешно. Субъективно, загрузка идет немного медленнее, чем на Готеке.
https://i.postimg.cc/QNfsNmwQ/fdd-8.jpg
Функция записи тоже работает, но надо еще тестировать.
Итог.
ZX FDD Emulator мне понравился. Вполне может найти применение в самодельных конструкциях Спектрум-клонов.
https://www.youtube.com/watch?v=PAP1Xg9hcUQ
Комплект документации из видео:
Архив с принципиальной схемой, прошивкой и герберами платы:
Вложение 82142