Прошивка К573РФ4А и К573РФ5 на XGecu T48
Как прошить советские УФ-ПЗУ К573РФ4 и К573РФ5 на XGecu T48 в macOS и Linux с помощью minipro
Восстановление советских компьютеров, реплик ZX Spectrum или винтажных промышленных контроллеров неизбежно ставит задачу прошивки микросхем постоянной памяти с ультрафиолетовым стиранием (UV-EPROM).
Отечественные микросхемы К573РФ4А / К573РФ4Б (а также их керамические военные версии с планарными и стандартными выводами, такие как М573РФ4А) — это функциональные аналоги популярного зарубежного чипа 2764 (8 КБ, DIP-28). Более ранняя К573РФ5 — аналог 2716 (2 КБ, DIP-24).

Однако попытка прошить такие чипы на современном программаторе «из коробки» гарантированно завершится ошибкой. В этом руководстве мы разберем аппаратные тонкости и пошаговый процесс записи на программаторе XGecu T48 в средах macOS и Linux без возни с виртуальными машинами Windows.
В чем главная сложность советских РФ4?
Микросхемы серии РФ4 выполнены по архаичному техпроцессу NMOS. Для надежной записи электронов на плавающий затвор им необходимы:
- Повышенное напряжение программирования ($V_{PP}$): Паспортное значение для этих чипов составляет около $21\text{ В}$ (у ранних ревизий до $25\text{ В}$). Программатор XGecu T48 умеет выдавать такое напряжение, а при достаточно длинном импульсе РФ4 уверенно пишется даже на $18\text{ В}$.
- Очень длинный импульс записи: Современным EPROM хватает сотен микросекунд, но советским кристаллам нужен огромный импульс длительностью $50\text{ мс}$ ($50\,000\text{ мкс}$).
- Отсутствие электронного ID: Микросхема не умеет отдавать программатору Device ID, поэтому автоматическое определение чипа не работает.
Почему minipro незаменима на macOS и Linux
Официальный софт для программаторов XGecu — утилита Xgpro — написан исключительно под Windows. Запуск под Wine или проброс USB в виртуальную машину (VirtualBox, UTM, Parallels) часто приводит к разрыву связи прямо посреди долгого цикла записи.
Решением проблемы является minipro — открытая консольная утилита для программаторов серии TL866 (TL866A, TL866CS, TL866II Plus) и актуального поколения T48 / T56.
Плюсы minipro:
- Нативная работа: без эмуляторов собирается и работает прямо в терминале macOS и дистрибутивах Linux.
- Полный низкоуровневый контроль: позволяет вручную переопределить напряжение $V_{PP}$, выставить любую длину импульса и принудительно отключить сверку ID.
- Надежность: никаких GUI-зависаний и сбоев USB-драйвера в фоне.
Установка:
- macOS (через Homebrew):
brew install minipro - Linux (Ubuntu / Debian / Raspberry Pi OS):
sudo apt install minipro
Пошаговая инструкция по прошивке
Шаг 1. Подготовка и правильная посадка в ZIF-панель
1. Питание
Подключайте программатор T48 только качественным кабелем Type-C напрямую в порт ПК или Mac. Категорически избегайте пассивных USB-хабов: процесс записи длится почти 14 минут, и малейшая просадка по питанию сорвет весь цикл.
2. Зачистка контактов
Керамические микросхемы за десятилетия хранения на складах покрываются окислом. Перед установкой обязательно зачистите ножки ученическим ластиком или мелкой наждачной бумагой и протрите изопропиловым спиртом.
3. Ориентация и ключ
Обратите внимание на распиновку и чертеж корпуса DIP-28:

Микросхема в корпусе DIP-28 устанавливается в 40-пиновую ZIF-колодку программатора T48 с выравниванием по верхней части (ключом вверх, к рычагу ZIF-панели и индикаторам).

Опустите рычаг вниз до щелчка для фиксации выводов.
Шаг 2. Проверка на чистоту (Blank Check)
Перед записью чип должен быть полностью стерт ультрафиолетом (все ячейки содержат байт 0xFF). Проверяем чистоту памяти:
minipro -p "2764@DIP28" -b
- Если проверка прошла успешно: переходите к следующему шагу.
- Если выдает
Verification failed: микросхема стерта не до конца. Положите ее под УФ-лампу для стирания EPROM на 15–25 минут (окошко должно быть полностью открыто).
Шаг 3. Команда записи прошивки
Так как советские микросхемы не поддерживают считывание сигнатуры, выбираем профиль зарубежного аналога 2764@DIP28, отключаем аппаратную проверку ID ключом -y, задаем напряжение программирования $18\text{ В}$ (--vpp 18) и импульс в $50\text{ мс}$ (--pulse 50000). С таким длинным импульсом 18 В хватает, а более высокое напряжение лишний раз нагружает старый кристалл:
minipro -p "2764@DIP28" -y --vpp 18 --pulse 50000 -w /путь_к_файлу/firmware.bin
Что происходит во время прошивки:
- Терминал выдаст предупреждение:
WARNING: Chip ID mismatch: expected 0x0000, got 0xFFFF (or similar)Это нормально: ключ
-yпринудительно велит утилите продолжать запись. - Начнется запись:
Writing Code...Для объема 8 КБ с 50-миллисекундным импульсом процесс занимает около 13 минут 40 секунд. Не трогайте кабель и программатор.
- По завершении записи утилита автоматически выполнит побайтовую сверку и выведет:
Verification OK
Шаг 4. Контрольная верификация дампа
Чтобы на 100% удостовериться в стабильности записанных данных, вычитайте прошивку обратно в отдельный файл:
minipro -p "2764@DIP28" -x -r verify.bin
Сравните полученный файл с исходным бинарником с помощью консольной утилиты cmp:
cmp -l firmware.bin verify.bin
Если команда завершилась без вывода ошибок — дамп побайтово идентичен оригиналу.
Прошивка К573РФ5

Тем же способом прошивается и более ранняя К573РФ5 — аналог 2716 (2 КБ, корпус DIP-24). Она также устанавливается в ZIF-панель с выравниванием по верхней части. Используем профиль M2716@DIP24, напряжение $21\text{ В}$ и импульс $10\text{ мс}$:
minipro -p "M2716@DIP24" -y --vpp 21 --pulse 10000 -w savia-2k.bin
Важный финал
Сразу после извлечения микросхемы из программатора заклейте кварцевое окно плотным непрозрачным стикером (лучше металлизированным/фольгированным). Обычный дневной свет и офисные люминесцентные лампы содержат долю ультрафиолета, который за несколько месяцев может повредить записанную прошивку.