Продолжаю собирать и отлаживать ретро компьютер "ЮТ-88" из приложения "ЮТ для умелых рук" журнала "Юный техник". Решил вернуться к проблеме смещения изображения на экране вверх. На следующей фотографии хорошо видно, что верхняя строка файлового менеджера квази диска заходит за пределы экрана, заголовок с надписью "*** Менеджер SROM-диска..." не видно:
Различные манипуляции с изменением номинала деталей дисплейной части компьютера не привели к нужному результату. Вторая проблема - это периодические срывы изображения, конвертер AV2VGA с этим компьютером работает крайне не стабильно. С ранее собранным "Радио-86РК" он работает вполне хорошо. Вот такой конвертер:
Так оставлять я не хочу, нужно найти какое-нибудь другое решение. И тут я вспомнил, что у меня есть еще один комплект для сборки конвертера RGB в HDMI и VGA для компьютеров "ZX Spectrum". В телеграмм канале, посвященном этому конвертеру, есть сообщения, что его уже пытались использовать для подключения не только "ZX Spectrum", но и других ретро компьютеров.
Набор для сборки конвертера состоит из платы, нескольких конденсаторов и резисторов, микросхемы 74LVC245F и готового модуля Raspberry Pico Pi. Подключать буду через HDMI разъем, его и припаял, а зря, надо было внимательней читать телеграмм канал, но все по порядку:
Важный момент! В моем экземпляре компьютера у меня изначально не получились правильные размеры изображения и мне пришлось немного поправить схему: разъединил 1-ю и 2-ю ножки микросхемы D233 и первую ножку соединил с 9-й микросхемы D235. Убирать это соединение не стал и не знаю как бы отсутствие этого исправления повлияло на работу конвертера:
На следующей схеме я обозначил все точки подключения конвертера к компьютеру, питание к конвертеру я не подключал, только общий, на время экспериментов и настроек питаться конвертер будет от USB:
В гите по ссылке находятся исходники, документация и уже скомпилированная прошивка.
В настройках конвертера установил:
- видеовыход - HDMI;
- буферизация -1X (не увидел разницы с 3X);
- синхронизация - раздельная;
- источник пиксельклока - внешняя частота;
- делитель - 1;
- задержка захвата - 0;
- инвертирование входных сигналов - "F", "KSI", "SSI", "R", "G", "B" ("I" не надо инвертировать).
Результат просто шикарный. Картинка четкая, насыщенная. Вот только она не влезает в монитор, т.к. рассчитана на разрешение 640x480, а необходимо другое разрешение, все таки конвертер не для этого компьютера изначально разрабатывался (две фотографии):
Я же программист, исходники есть, быстренько поправлю и будет все влезать, подумал я, но не зная мат. часть не реально что-то сходу поправить. Тем более я раньше на Raspberry ничего не разрабатывал, да и хорошо бы изучить теорию формирования видео сигналов.
Все ровно немного расскажу как самому скомпилировать исходный код в прошивку, может кому-то пригодится.
Как я понял разработка велась в программе "Arduino IDE", судя по расширению ".ino" основного файла исходного кода прошивки. Скачать "Arduino IDE" можно с официального сайта бесплатно. После инсталляции "Arduino IDE" и загрузки всех пакетов, они устанавливаются автоматически при первом запуске, необходимо добавить пакет для Raspberry Pico Pi. Для этого необходимо открыть настройки в меню "File" - "Preferences...". В настройках в поле "Additional boards manager URLs" указать ссылку на github: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
Если поле "Additional boards manager URLs" не пустое, то ссылку нужно добавить в конец, отделив ее запятой:
Также в настройках можно изменить язык.
Далее следует установить пакет для разработки и поддержки платы Pico Pi. для этого в левой панели нажать на соответствующую иконку, ввести в поиске "PICO" и установить пакет "Raspberry Pi Pico/RP2040". На последней версии пакета скомпилировать прошивку у меня не получилось, методом перебора выяснил, что пакет версии 3.9.5 позволяет скомпилировать прошивку и она работает:
Далее следует подключить к компьютеру сам конвертер, в меню Tools-Board-Raspberry Pi Pico/RP2040 необходимо выбрать Raspberry Pi Pico, в меню Tools-Port указать порт к подключенному конвертеру, в меню Tools-Optimize выбрать Optimize More (-O2) или Optimize Even More (-O3). После этого можно скомпилировать прошивку и пробовать ее изменять.
Мои эксперименты с прошивкой к подключенному по HDMI конвертеру не принесли никаких результатов. Пару вечеров я потратил на эксперименты и, если бы продолжил, то может быть и получилось бы исправить отображение на экране. Но перечитывая сообщения в телеграмм канале я натолкнулся на альтернативную прошивку. Я не знаю кто автор, но хочу сказать спасибо большое за нее!
Работа альтернативной прошивки рассчитана на подключение через VGA разъем, пришлось выпаивать HDMI разъем и на это место установить VGA разъем. Контакты HDMI разъема в итоге испортил, да они уже и не будут использоваться. Подключение временное, потом сделаю надежную колодку:
На следующем скриншоте финальные настройки конвертера:
Результат отличный. Все изображение умещается на экран, изображение четкое и без помех (три фотографии):
Игра "Клад" (две фотографии):
В результате я получил картинку на экране даже лучше, чем ожидал. Кто-то скажет, что это не аутентично, но это просто мое хобби, так мне захотелось сделать.
Продолжение следует...