﻿TYT MD-UV990
Rebuild 1.1 by Valdis87 — FULL FLASH, 3 МиБ
Самодостаточный установочный комплект от 9 ноября 2026 года

ВНИМАНИЕ! ДАННАЯ СБОРКА ТЕСТОВАЯ.
Перед прошивкой рекомендую сделать все возможные бэкапы своей рации.
Аппаратные проверки основы сборки выполнялись после установки поверх
firmware_tyt_uv990_BS_UV990_DMR_V001_021_102.
Полный установщик с перезаписью boot/auth на рации ещё не испытывался.
Если не уверены, что сможете восстановить станцию, не прошивайте её
в числе первых.

Предварительно устанавливать заводскую .102 НЕ НУЖНО.
Полный LOD за один запуск Fastpf записывает базу .102 и все изменения
согласованного Rebuild 1.1. Содержимое прежнего кода в первых 3 МиБ
не используется для дополнения образа.

ПАМЯТЬ, КОТОРАЯ ПЕРЕЗАПИСЫВАЕТСЯ
Flash 0x000000–0x2FFFFF включительно: ровно 3145728 байт (3 МиБ).
В LOD это адреса 0x08000000–0x082FFFFF. Все байты входят в файл.
ВКЛЮЧЕНА загрузочная область boot/auth 0x000000–0x03FFFF (256 КиБ).
Она совпадает с публичным заводским эталоном BS_UV990_DMR_V001_021_102,
но при полной установке всё равно стирается и перезаписывается.

Flash 0x300000–0x3FFFFF, последний 1 МиБ, в LOD НЕ ВХОДИТ.
Сюда относятся пользовательские данные, кодплаг и калибровки; последние
16 КиБ 0x3FC000–0x3FFFFF не адресуются ни записью, ни стиранием этого LOD.
В архиве нет личного/чужого 4-МиБ дампа. Используется публичный 3-МиБ
заводской исходник с нашими изменениями.
Это полный образ области прошивки, а не команда полного стирания чипа.

ТРИ ФАЙЛА КОМПЛЕКТА
UV990_Rebuild_v1_1_by_Valdis87_FULL_3MiB.lod
  Полная прошивка для поля LOD FLSH.
a6_8809p_spi32m_release_ramrun.lod
  Проверенный RAM-программатор для поля DRV FLSH.
README-RU.txt
  Эта инструкция.

ВОЗМОЖНОСТИ REBUILD 1.1
• «Меню → Настройки → Блок.клав +»: независимые флажки PTT, SK1, SK2,
  «Валкодер». Они действуют вместе с общей блокировкой клавиатуры.
  OK меняет флажок, красная кнопка выходит; выбор сохраняется.
  После разблокировки повороты валкодера, сделанные под блокировкой,
  не вызывают отложенного переключения канала.
• Английский/Русский, Стандартный/Terminus с сохранением выбора.
• Пробел 6 пикселей, ускоренная шкала громкости 0–19 с калибровкой по углу.
• Согласованные подписи: «Совпад. личн. ID», «Совпад.ID группы»
  (один пробел убран для лимита 16 символов), «Прямой разговор».
• Громкость регулируется штатным способом; её блокировка не добавлена.

Полный LOD содержит тот же BIN, что согласованный выпуск Rebuild 1.1
с правками перевода. Меняется полнота установочного файла, а не функции.
Заводская строка версии в «О радиостанции» сохранена.

СОВМЕСТИМОСТЬ
Комплект рассчитан на аппаратную платформу TYT MD-UV990, совместимую
с данным эталоном .102 и RAM-драйвером 8809, с flash 4 МиБ.
Другая версия прежнего кода сама по себе не требует предварительной .102:
вся область прошивки заменяется полностью.
При этом полный файл не доказывает совместимость неизвестной аппаратной
ревизии. Проверен один экземпляр MD-UV990; одно название модели на корпусе
не подтверждает совпадение платы, периферии и схемы пользовательских данных.
Запись не сбрасывает и не преобразует автоматически сохранённый кодплаг.

ПЕРЕД УСТАНОВКОЙ
Сохраните два независимых полных чтения 4 МиБ своей станции и кодплаг CPS.
Они нужны для восстановления её исходного состояния, особенно потому,
что полный комплект перезаписывает boot/auth. Сохраните исходные файлы.
ПОРЯДОК ЗАПИСИ В УСТАНОВЛЕННОМ COOLWATCHER
1. Распакуйте все три файла в короткую папку с латинским именем,
   например C:\UV990_Rebuild_1_1_FULL.
2. Выберите профиль 8809 и фактический COM-порт кабеля CH340.
   В проверенных прежних сеансах использовались 921600, 8N1, XON/XOFF.
3. В DRV FLSH укажите a6_8809p_spi32m_release_ramrun.lod.
   В LOD FLSH укажите именно UV990_Rebuild_v1_1_by_Valdis87_FULL_3MiB.lod.
   Сверьте полное имя в журнале. Старые INSTALL_6X64K/INSTALL_7X64K —
   другие, частичные установщики; в этом комплекте используется FULL_3MiB.
4. Используйте обычный полный Fastpf / кнопку прошивки (fastpfGo,
   FastPf::FULLFASTPF). Этот режим сохраняет в плане нулевой boot-сектор.
   Режим исключения boot-сектора и команда стирания всего чипа не подходят.
5. Выключите станцию. Включите и нажмите Go с промежутком примерно
   не более секунды, как в штатной инструкции загрузочного интерфейса.
6. Сохраняйте питание и кабель до полного завершения. Записывается и
   загрузочная область, поэтому прерывать процесс нельзя.
   Одной строки Verify succeeded недостаточно: после неё идут Finalizing...
   (загрузочная метка), Resetting the chip и Fastpf done.
   При ошибке финализации запись не считается успешно завершённой.
7. После запуска проверьте экран, меню, подписи, четыре блокировки,
   язык/шрифт и сохранение выбора после выключения.
   Для проверки звука извлеките разъём кабеля программирования из рации.
8. Контрольное чтение первых 3 МиБ должно иметь SHA-256, указанный ниже.
   LOD и план стирания не затрагивают последний 1 МиБ; сама запущенная
   прошивка впоследствии может сохранять туда обычные настройки.

ЧТО ПРОВЕРЕНО АВТОНОМНО
• BIN → полный LOD → BIN: точное совпадение всех первых 3 МиБ.
• Все байты покрыты ровно один раз; адресов последнего 1 МиБ нет.
• Родной парсер CoolHost принял 48 блоков по 64 КиБ.
• Применение к нулевому, стёртому, случайному и известному прежнему коду
  даёт один точный целевой образ и сохраняет контрольные данные последнего 1 МиБ.
• В модели памяти исполнены настоящий расчёт границ, обработчики стирания
  и программирования RAM-драйвера: ровно 48 стираний по 64 КиБ и 96 частей
  записи по 32 КиБ. Нижние операции SPI заменены моделью NOR flash.
• Финализация записывает и проверяет D9EF0045 по смещению 0; дополнительно
  проверены ответы драйвера при отказе записи и неверной загрузочной метке.
• Проверка бэкапов принимает неизвестное прежнее содержимое кода без
  предварительной .102; отклоняет неполные/различающиеся бэкапы и плохие файлы.

АППАРАТНЫЙ СТАТУС
Основа RC2 с четырьмя блокировками испытана на нашей станции и подтверждена
полным чтением. Исправленные подписи Rebuild 1.1 проверены автономно.
НОВАЯ ПОЛНАЯ ПРОЦЕДУРА С ПЕРЕЗАПИСЬЮ BOOT/AUTH НА РАДИОСТАНЦИИ ЕЩЁ
НЕ ИСПЫТЫВАЛАСЬ. Описанные модели не являются аппаратной проверкой.
КОНТРОЛЬНЫЕ СУММЫ SHA-256
Полный LOD:
877b9a713f4e5b4f2c2cc03d54f14e4a72943bb91ae459b4d7392e20c625f6cd
RAM-драйвер:
ec63cfa9bb3326d699bb65f745ec8524bd532b92362d9bf8555085cd2a040080
Целевой BIN / первые 3 МиБ после записи:
8e337df4fcec848a561a05f893478e6c3f6e5b4b3ac6e98b89ab8512755d58fa

Штатная прошивка — TYT; автор модификации — Valdis87.
Terminus — SIL OFL 1.1; UniCyr — сопровождающая GPL-2.0.
Описание и обратная связь: https://valdis87.ru/
