foto1
foto1
foto1
foto1
foto1
Здравствуйте, меня зовут Юрий. Два выходных дня стоят больше того, чтобы всецело посвятить их решению бытовых вопросов или, чего доброго, походу на "любимую" работу. Спасением от рабочих и бытовых проблем, от извечного слова "надо", станет замена этого слова на слово "хочется". Как это получается, представлено на страницах моего блога.Два выходных дня

Два выходных дня

Устройство предназначено для записи дискет формата 3,5 дюйма на PC-совместимом компьютере, не оснащённом дисководом. Позволяет записывать файлы для ретро-компьютеров, таких ZX-Spectrum, Amiga, Amstrad, БК0010, Агат и других.

Поводом для изготовления послужило сообщение в телеграмм-канале пользователей компьютера ZX-Spectrum. Некоторое время назад я завершил изготовление Spectrum-совместимого компьютера одной из популярных моделей под названием "Scorpion ZS 256 Turbo+". При эксплуатации компьютера сразу появилась необходимость переноса на него программ, игр, музыкальных файлов из Интернета, а дисковод на моём PC-совместимом компьютере отсутствовал, как и место, куда его можно подключить, в результате чего, появилось данное устройство

Устройство состоит из платы, которая называется "Blue Pill", содержащей микроконтроллер STM32F103C8T6, и дисковода для записи дискет формата 3,5 дюйма.

 

Рисунок 1 - Плата "Blue Pill" 

Принципиальную электрическую схему устройства, опубликованную на сайте автора, я перерисовал для лучшего понимания.

Рисунок 2 - Принципиальная электрическая схема

Инструкция по сборке и прошивке также опубликована на сайте автора. Там же можно скачать чертежи печатной платы, так называемые gerber-файлы для изготовления, но на мой взгяд, ввиду простоты устройства, достаточно собрать его на макетной плате и поместить в подходящий корпус, что я и сделал (рисунки 3 - 6).

 

Рисунок 3

 

Рисунок 4

Рисунок 5

 

Рисунок 6

Корпус склеен из пластин акрила и немножко обработан наждачкой, чтобы не красить. Плата контроллера закрыта прозрачной  акриловой крышкой, в которой сделана прорезь для доступа к кнопке сброса, джамперам для программирования и разъёму подключения MicroUSB-кабеля. Шлейф подключения дисковода используется стандартный, перекрученный. Дисковод также самый обычный, но переделан в A: удалением перемычки внутри его.

Питание платы "Blue Pill" осуществляется от PC-совместимого компьютера, через кабель MicroUSB, а дисковод питается от зарядного устройства для смартфона напряжением 5 Вольт и выходным током 2 Ампера. Попытка запитать дисковод от менее мощного зарядника с выходным током 1 Ампер успехом не увенчалась. Появлялось сообщение управляющей программы "No Index". Пожалуй, об аппаратной части всё, переходим к программной.

Прежде всего, необходимо запрограммировать микроконтроллер, находящийся на плате "Blue Pill". Это можно сделать, как через UART, используя встроенный загрузчик, так и через переходник-отладчик. Оба способа программирования описаны в этой статье. Я использовал второй способ. Единственное, смутило то, что после программирования плата перестала видеться отладчиком. Поиском в интернете нашёл, что автором устройства не была снята какая-то галочка при компиляции прошивки, и что, если надо вернуть плату в первоначальное состояние, можно воспользоваться программированием через UART.

Как бы то ни было, проверка на "железе" показала, что микроконтроллер запрограммировался правильно, и больше я его не трогал. Прошивку greaseweazle-firmware-f1-1.4.hex я скачал с сайта автора.

Далее следует скачать управляющую дисководом программу. Для этого опять заходим на сайт автора и берём свежий релиз программы Greaseweazle Host Tools для своей операционной системы. Программа не требует инсталляции, архив следует распаковать и запустить исполняемый файл gw.exe.

Программа запускается в консольном режиме, то есть без графического интерфейса. Для удобства пользования можно скачать с этого сайта программу-графическую оболочку "GUI" и распаковать её в папку с консольной программой. Программу-оболочку следует взять для ранее скачанной версии "Greaseweazle Host Tools". Например: GUI v2.116 – Host Tools 1.15.

Далее запускаем исполняемый файл "GreaseweazleGUI.exe" и получаем графический интерфейс. Устройство записи дискет должно быть предварительно подключено к USB-разъёму PC-совместимого компьютера.

Рисунок 7 - Стартовое окно программы

 

Рисунок 8 - Окно выбора опции и порта 

В этом окне выбираем требуемую опцию "Read from Disk" или "Write from Disk". Я ещё проверял "Erase Disk" - она просто стирает данные. Далее - выбираем виртуальный порт, который появляется при подключении устройства к USB-разъёму. В моём случае, это COM8, кликаем "Select" и попадаем в следующее окошко (рисунок 9).

Рисунок 9 

Здесь кнопкой "Select File" выбирается путь к файлу-образу диска для записи, формат записи - для zx-spectrum это "zx.trdos.640" и "Disk Type" - "img". При этом в поле "Command Line" появляется командная строка, которая автоматически подставляется в консоль программы "gw.exe". Далее кнопкой "Launch" запускается процесс записи дискеты (рисунок 10).

Рисунок 10

Рисунок 11 - Начало процесса записи

Рисунок 12 - Окончание процесса записи

"Disk Type" - "img" получается просто изменением расширения .trd на .img в проводнике или в любом файловом менеджере, например, в Total Commander-е (рисунок 13). Дискеты форматировать и стирать не надо, все происходит в процессе записи файла-образа. Кроме этого, на дискете должно быть закрыто окошко выбора двойной плотности (рисунок 14).

Рисунок 13

Рисунок 14

С образами типа SCL такой фокус не прокатывает. Выходом может стать создание пустого TRD-образа файловым менеджером FAR с плагином "xCreate" и перетаскивание в него файлов из SCL-образа. Вот наш Dizzy благополучно скопировался (рисунки 15,16).

Рисунок 15

Рисунок 16

При выборе опции "Read from Disk" файл-образ может быть считан с дискеты при помощи данного устройства и записан на жесткий диск компьютера, что может быть полезно для сохранения уникальных файлов. Думаю, что разобраться с процессом чтения будет несложно. 

Перерисованная принципиальная электрическая схема в формате PDF.

Умный поиск