Из писем В. Чистякова Можно ли переделать ОРИОН для работы на VGA?

Copy Right Чистяков Владимир

Продаю платы и наборы микросхем, куплю микросхемы Продаю печатные платы ПК Ори сериион-128

Можно ли переделать ОРИОН для работы на VGA?

Форум служит для обмена идеями. Потому хочу поделиться одной идеей и обсудить, т.к не всё ясно (не вполне понимаю временные соотношения в видеосигнале для VGA).

У меня нет цветного CGA монитора, тогда как неиспользуемых VGA мониторов много. Так что желательно (но это не горит прямо сейчас) использовать VGA-дисплей для 8-ми разрядок. VGA уже подключили к РК86. Но "лобовым" способом, просто повысив частоты ВГ75.

Также можно попробовать сделать и для ОРИОНА, СПЕЦИАЛИСТА, соответственно изменив частоту кварца. Но это так просто вряд-ли получится. Я обдумал вот такой вариант.

Современные мониторы - мультисинки, т.е самосинхронизируются в широких пределах. Чтобы был захват картинки надо приблизить частоту строк к 31.5 МГЦ и частоту кадров к 70 ГЦ.

Как многие знают на ОРИОНЕ с Z80 многие люди имели двойное ТУРБО, когда RAS-CAS ОЗУ и такт Z80 удваиваются. Т.е нет проблем с работой схемы на высоких частотах. Я например, без проблем в базовом ОРИОНЕ (2.5 МГЦ) на Z80 менял кварц 10 МГЦ на 16 МГЦ, естественно, при этом перекручивая частоты строк и кадров в CGA видео мониторе, и всё работало, хотя картинка на экране почему-то становилась такой же маленькой, как на Синклере.

Идея заключается в том, чтобы удвоив кварц добавить один каскад в счётчик кадров, причём выходы этого каскада не подаются на адресный мультиплексор. Отчего две расположенные рядом строки будут просто повторяться, а общее число строк удвоится. Идея заимствована из того, как на VGA отображается графический видео режим 640*200. Он в действительности отбражается в растре 640*400, но соседние линии растра дублированы. Дублирование строк визульно лучше, но при желании можно или выводить погашенную строку либо просто запрещать ССИ для этой строки (и тогда её вообще не будет на экране). Главная проблема в том, чтобы МП ядро работало на высоких частотах. А это в ОРИОНЕ обычно требует подгонки фронтов. Потому лучше иметь ОРИОН, где изначально такт понижен до 2 или 2.25 МГЦ

Проще всего опробовать данную идею на плате СПЕЦИАЛИСТА на Z80 с тактом ОЗУ и Z80 в 2 МГЦ (у меня как раз есть такая). Заменяем кварц на 8*2*(70:50) = 22.4 МГЦ. Это чтобы получилась частота кадров 70 ГЦ. При переделке получится число строк в 512, но в VGA есть только режим 640*400. Не знаю как поведёт себя VGA-монитор при числе строк в 512. Только для ИРИШИ, где 200 строк растра при переделке на VGA получится ровно 400 строк.

Если при 512 строках синхронизации не будет, то схему придётся усложнить. Тогда в чётной строке выводится линия растра с видео информацией. А нечётная строка не отображается (для неё не формируется ССИ и луч не стартует), а просто обеспечивает паузу для сдвижки луча вниз по вертикали до следующей линии растра (иначе при 256 линиях экран плющится). Т.к режим рассчитан на 400 строк, то думаю, что нечётную невидимую строку надо выводить наполовину. Тогда за это время луч сместится на половину вертикального интервала между строками в режиме отображения 512 строк. Это приведёт к большему расстоянию по вертикали между соседними строками (которых 256) и растр по вертикали не будет сплющенным. Время занимаемое на вывод этих 256 строк будет в 1.5 раза больше, т.е столько же сколько занимали бы 256*1.5= 384 линии растра. Это как раз близко к требуемым 400-там. При этом надо применять кварц на 8*1.5*(70:50) = 16.8 МГЦ. При этом частота строк будет 15.625*1.5= 23.43 КГЦ, что ближе к EGA (21.85 КГЦ), чем к VGA. Можно поставить кварц 24-25 МГЦ и тогда возможно хороший VGA-монитор уже сможет синхронизироваться.

Разумеется, можно использовать и ОРИОН. Для ОРИОНА лучше сразу заменить кварц 10 МГЦ на 8 или 9 МГЦ (естественно, перекинув при этом один проводок в счётчике строк, чтобы изменить коэфф-т деления). Это немного отплющит растр по горизонтали, но главное понизит частоту RAS-CAS ОЗУ и сократит его разогрев. Получив исходный ОРИОН с пиксель клоком в 9 МГЦ, начинаем последовательно увеличивать кварц, синхронно перестраивая частоты строк и кадров в CGA дисплее. До тех пор пока тест перестанет проходить. Тогда, подгоняя времянки, пытаемся добиться устойчивой работы ОРИОНА на такой частоте. Только добившись устойчивой работы на 14-15 (если хотим режим 256 линий) или 18 МГЦ (если для схемы в 512 линий) можно приступать к следующей модификации схемы видеогенератора (т.е к введению лишнего ТМ2 в схему счётчика кадров и для варианта в 256 линий узла формирования сброса счётчиков и запрета ССИ для нечётных строк).

Теоретически можно реализовать эту идею и при КР580, т.е не меняя такт CPU. Тогда такт CPU оставляем 2.5 МГЦ, а RAS-CAS ОЗУ удваиваем до 5 МГЦ и делаем указанную доработку видео. Такой вариант сложнее, т.к при этом ОЗУ и CPU уже не синхронны, хотя частоты кратны.

Кто-нибудь может указать, что не так в данной идее или дать полезные советы. Может быть кто-то хочет сам реализовать эту идею на своём ОРИОНЕ.

 

Доработки и схемы прочие... непроверенные

 

 

Купить платы на Орион ПРО, классический Орион, Орион Восточный Экспресс 512, наборы микросхем на Орион-128, КР565РУ5В, КР565ру7В, к565ру5г AU, к565ру7г Au в позолоте к1818вг93, Z80, куплю микросхемы

 

Полезные и интересные статьи

На предыдущую страницу  На главную страницу  На следующую страницу