Тема про превращение унылой китайской железки Gotek в полноценный эмулятор дисковода для работы вместе с клонами ZX Spectrum (и не только).
Вариант 1. Прошивка HxC для USB Stick STM32 HxC Floppy Emulator
Последняя версия: 3.8.3.1a 19 September 2021 Firmware STM32 USB HxCFloppyEmulator v3.8.3.1a релиз ноты
HxC floppy emulator firmware for Gotek drives presentation
Онлайн конфигуратор касттомной прошивки
Автор: Jean-François DEL NERO
Прошивка bootloader ПЛАТНАЯ! 10 евро за одно устройство КУПИТЬ
(разовый платеж, дальше все обновления прошивки HxC - бесплатные)
Файлы формата ZX Spectrum (*.TRD, *.SDD, *.DSK, *.OPD) поддерживаются прошивкой напрямую начиная с декабря 2017 (v3.1.0.4)
Есть возможность собрать прошивку индивидуально под конкретное устройство (см. в ссылках ниже)
Делюсь опытом по перепрошивке на эту версию:
Скрытый текст
Для работы понадобится немного железа и/или денег.
1. Если еще не купили покупаем железку SFR1M44-U100K у китайцев. Например, тут. На тот момент стоимость была 1120р.
На PC проверил - работает, свои убогие функции выполняет.
2. Для прошивки bootloader понадобится кабель USB-RS232. Например, такой:
У меня его не было, поэтому взял самый дешевый у китайцев тут. На тот момент стоимость была 44р.
Тут есть тонкость: оказалось, свисток изготовлен на чипе pl2303hx (а не тот, что ревизия D). Microsoft беспощадна к подделкам и Windows 8.1 определяет девайс как Prolific-to-Serial Comm Port, но работать с ним не желает (горит желтый восклицательный знак в устройствах). Выход не сложный - нужно просто ставить более ранние дрова версии 3.3.2.105. Качать тут.
3. Разбираем Gotek, вот что внутри:
Для удобства программирования я аккуратно напаял контактную площадку на плату Gotek (J10).
4. Замыкаем перемычкой на плате Gotek ногу J3 и VCC3V (BOOT). Соединяем программатор с контактной площадкой проводами: 5V, GND, RX, TX. Последние два надо перевернуть, то-есть провод TX с программатора соединяем с RX на плате Gotek, а RX с TX.
Получается примерно так:
5. Качаем Online BootLoader programmer.
6. Сперва нам нужно прошить новый Bootloader. Это делается один раз и за это автор разработки берет плату. Дальнейшие обновления выполняются прямо с USB-флешки и они бесплатные. Связываемся с Jean-François DEL NEROпо почте hxc2001 собако hxc2001.com. Переводим сумму в 10 евро за одно устройство на его счет PayPal, он скажет на какой адрес. Он заводит ваш аккаунт на онлайн-сервере. Вышлет параметры подключения в виде: Server IP, Login, Password.
7. Подключаем USB-RS232 к PC, где заранее установили драйвер (п.2).
Запускаем Online BootLoader programmer. Наше устройство должно определиться по какому-то вирт. COM-порту.
Жмем Open для соединения.
8. Вводим Server, Login, Password жмем Connect. Должно установится соединение с сервером обновлений. Если установилось, будет показываться сколько устройств вы можете прошить. Далее жмем Program и ждем окончания процесса (2 - 3 минуты), должен начаться обмен пакетами и онлайн-прошивка.
9. На индикаторе Gotek должно появится слово 'Ldr' по окончании прошивки. Когда прошивка завершится, отключаем все соединения от Gotek.
10. Форматируем USB-флешку в FAT32. В корень кладем UPD-файл прошивки: скачать.
11. Вставляем флешку в USB-разъем Gotek. Зажимаем обе кнопки на передней панели Gotek и подаем питание (разъем для 3,5'' дисковода). Должен начаться процесс прошивки, он длится несколько секунд. В это время по индикатору бегут огоньки. По успешному завершению на индикаторе высветится 'hXc'.
Все, собственно сама прошивка завершена. Дальше расскажу как пользоваться, но это уже проще.
hXc работает с файлами формата HFE.
!ЭТОТ РАЗДЕЛ МАНУАЛА УСТАРЕЛ! Теперь поддержка формата TRD работает без конвертации!
Их будем класть в корень нашей USB-флешки. Примеры готовых файлов образов "Quick Install Disk Images" тут.
1. Качаем софтину HxCFloppyEmulator software тут.
2. Нам нужно создать специальный конфигурационный файл HXCSDFE.cfg в корне флешки. Запускаем HxCFloppyEmulator.exe . Жмем кнопку "SD HxC FLoppy Emulator settings":
Здесь настройки ставим такие:
Нажимаем "Save config file" и сохраняем конфигурационный файл.
3. Кнопкой "Load" загружаем файлы TRD, FDI и сохраняем их в формате HFE кнопкой "Export" опять же в корне флешки.
4. Очень важно!!! Файлы HFE должны называться обязательно DSKA0000.HFE, DSKA0001.HFE и т.п. Только в этом случае можно будет осуществлять по ним навигацию кнопками управление на морде Gotek. Как я понял, других вариантов нет.
5. Если планируем ставить эмулятор как диск "A", ставим перемычку на плате на джампер S0, если как диск "B", ставим перемычку на S1.
6. Подключаем эмулятор индексным кабелем к нашему клону ZX Spectrum, подключаем разъем питания. Я подключал в ZX-Evo вместо реального дисковода. Знаю, что это бесмыссленно, но это мой тестовый стенд.
7. Включаем компьютер, вставляем флешку. Если все правильно, вместо 'hXc' загорится '000' или тот номер диска, на котором прошлый раз остановились. Перебирать диски для монтирования можно кнопками на морде Gotek: назад, вперед. Монтирование мгновенное.
Итого: при самом плохом сценарии, когда покупать нужно абсолютно все, включая перемычки и программатор, финальная стоимость проекта составила 1990р, что хоть и равно стоимости двух реальных дисководов, но в три - четыре раза ниже цены оригинального авторского эмулятора hXc.
[свернуть]
Напрямую поддерживаются форматы:
• HFE: Universal support : All machines are supported by the native HxC Floppy Emulator (HFE) file format
• HFE (v3): Copy protected HFE images (HFEv3 converted from ipf & stream files)
• IMG: PC and compatibles (Computers, Synth and CNC machines…)
• IMA: PC and compatibles (Computers, Synth and CNC machines…)
• ADF: Amiga
• ST: Atari ST
• DSK: Microbee
• DSK: MSX
• IMG: MSX
• DSK (Normal): Amstrad CPC/ZX Spectrum/Tatung Einstein
• DSK (Extended): Amstrad CPC/ZX Spectrum/Tatung Einstein
• ADL: Acorn
• ADM: Acorn
• SSD: Acorn
• DSD: Acorn
• ADF: Acorn
• LDF: Camputer Lynx
• D81: Commodore C64
• FD: Thomson machines (MO5, TO7…)
• DSK: TI99/4A
• V9T9: TI99/4A
• SAD: Sam Coupé
• MGT: Sam Coupé
• TRD: ZX Spectrum
• SDD: ZX Spectrum
• DSK: ZX Spectrum
• OPD: ZX Spectrum Opus Discovery
• IMG: Akai (S900 / S950 / S01 / S20 / MPC…)
• AKAI: Akai (S900 / S950 / S01 / S20 / MPC…)
• FZ1: Casio
• IMG: Emax
• IMG: E-mu EOS / ESI
• IMG: Ensoniq
• IMG: General Music
• IMG: Korg
• OUT: Roland
• W30: Roland
• S50: Roland
• S33: Roland
• S55: Roland
• IMG: Robox RC9400
• DSK: Robox RC9400
• IMG: Kawai
• DSK: Kawai
• IMG: Yamaha QX3
Появилась поддержка USB Stick Image-less mode, это когда данные напрямую читаются с флешки, размеченной в FAT12.
Появилась возможность добавлять самому поддержку любого пользовательского формата (см. User defined raw file image/disk format)
Ссылки:
Страничка прошивок HxC2001
Последняя версия прошивки
Описание прошивки
Руководство HxC floppy emulator firmware for Gotek drives presentation
HxC Floppy Emulators supported machines/compatibility list
Сервис для самостоятельной сборки прошивки
Купить STM32 USB HxC Floppy Emulator Firmware
Вариант 2. Прошивка FlashFloppy
Последняя стабильная версия 3.29 2 October 2021
Support new Gotek board SFRKC30.AT2 using AT32F415KBU7-4 (QFN32)
v3.29 релиз нота
Стабильная версия второй ветки v2.14 релиз нота
Пререлиз 4-ой серии прошивки 4.3a 15 December 2021
v4.3a релиз нота
Альтернативная БЕСПЛАТНАЯ прошивка.
Автор: Keir Fraser
Плюсы:
- Не уступает по функциональности HxC, совместима с форматом HFE;
- Есть исходники;
- Умеет эмулировать Motor Signal на разъеме;
- Умеет эмулировать больше одного драйва при одном подключенном устройстве;
- Активно развивается автором, почти еженедельные обновления;
Можно/нужно отблагодарить автора
Напрямую поддерживаются форматы:
• ADF (Commodore Amiga)
• ADM, ADL, ADF, DSD, SSD (Acorn DFS and ADFS)
• ATR (Atari 8-bit)
• D81 (Commodore 64 1581)
• DSK (Amstrad CPC, Spectrum +3, Sam Coupe, Microbee)
• FDI, HDM (NEC PC-98)
• IMG, IMA, DSK (IBM MFM Raw Sector)
• JVC, DSK (Tandy Color Computer 'CoCo')
• MBD (Spectrum MB02)
• MGT (Spectrum DISCiPLE/+D)
• OPD (Spectrum Opus Discovery)
• OUT (Roland)
• SDU (SAB Diskette Utility)
• ST (Atari ST)
• TRD (Spectrum TR-DOS)
• V9T9, DSK (TI-99/4A)
• VDK (Dragon)
• HFE, HFEv3 (Universal)
• XDF (FAT-based eXtended Disk Format, 3.5" HD 1840kB)
Как прошивать:
Скрытый текст
Прошивать BootLoader можно двумя способами: так же как HxC через com-порт и второй вариант - через USB на лицевой панели устройства!
Обучающее видео:
Подробнейший мануал от автора по начальной заливке прошивки здесь.
[свернуть]
Ссылки:
GitHub FlashFloppy
FlashFloppy Wiki
Список поддерживаемых платформ
Группа поддержки в FB
p.s. Лично у меня одно устройство прошито HxC и два FlashFloppy. Обе прошивки отличные, на Spectrum работают без нареканий.
Поддержка новых моделей Gotek на базе чипа "Artery"
Схема обновленного GOTEk под спойлером
Скрытый текст
[свернуть]
Новые модели Gotek выпускает на основе более дешевых чипов. Прошивка для версий STM не совместима с AT!!! Проявляется в виде бесконесно мигающего индикатора после обновления. Авторы прошивок активно работают над исправлением.
В прошивку HxC firmware уже добавлена поддержка чипов AT32F415RCT7, AT32F415CBT7,...
Новость тут. Прошивка тут.
Для FlashFloppy firmware добавлена поддержка Artery в двух тестовых версиях:
v4 test
v3 test
Версия 4 все еще в статусе ранней альфы новой линейки прошивки FF.
Пошаговая инструкция по прошивке готеков на Artery обновленной прошивкой FlashFloppy в этой теме.
Установка OLED-дисплеев для Gotek
Варианты установки и подробная инструкция с модельками для 3d-принтера тут.