Видео с демонстрацией работы собранного устройства ZX FDD Emulator v1.0:
https://www.youtube.com/watch?v=w26ZNigpayE
Вид для печати
Видео с демонстрацией работы собранного устройства ZX FDD Emulator v1.0:
https://www.youtube.com/watch?v=w26ZNigpayE
Можите ли выложить прошивку для платы ревизии 1.0 в HEX или BIN
Да, конечно, надо только ее из Arduino'вской IDE как-то выудить :)
Вам под кнопки или под энкодер?
- - - Добавлено - - -
https://yadi.sk/d/ueRsEJRz3HNgNM - собрал и под кнопки, и под энкодер.
А затею с выбором образа непосредственно со Спектрума не стали развивать? В этом случае железо упрощается: - дисплей, - энкодер, наверняка можно освободить часть кода и тогда он, возможно, полезет и в меньшие ардуинки. Пины освободятся опять же для новых идей. Да и на экране список файлов всяко нагляднее.
CLR, это всё хорошо, но при запущенной программе невозможно сменить диск.
Зачем так надрываться и эмулировать дисковод с его сложным протоколом обмена с микросекундными и жёсткими времянками? На два порядка проще сделать аппаратный эмулятор IDE-винчестера, с его простейшим обменом в параллельном интерфейсе и без всяких привязок ко времени (особенно, если контроллер винта работает в 8-ми разрядном режиме). ДОС работают с диском через подпрограммы чтения и записи сектора и им без разницы как устроен физический носитель. Для этого сгодится не только atmega8, но и простейший контроллер на Z80 с ПЗУ на РФ2 и ОЗУ в 1 кб (на статике 6514). И скорость обмена будет на порядок выше.
Понятно, что эмуляция флопа даёт универсальность. Но в стране все КНГМД на базе ВГ93. Потому, если уж так надо иметь в системе дисковод (например, нет ДОС с поддержкой винчестера), то почему не эмулировать контроллер НГМД, вместо самого НГМД ? Причём это тоже может сделать любой низкоскоростной контроллер с минимумом ресурсов.
Можно, проблем никаких, только если размер сектора 256 байт, или хотя бы кратен, напишите какой там формат образа диска, может будет время - сделаю.
Тогда уж проще Z-Controller сделать на мелкой CPLD.
Тырдос с поддержкой HDD есть не под все модели памяти, к сожалению, а писать эмуляцию ВГ с нуля как-то затратно по времени будет.
Насчет эмуляции ВГ на МК, думаю это технически возможно, на какой-нибудь Atmega644 или Atmega1284P.