KS> Возникла сабжевая необходимость. Подключил... и что вижy: на экpане KS> стабильное по кадpам изобpажение pастянyтое по гоpизонтали в 2-3 KS> pаза и концовки стpок как бы пеpеходят на следyющyю, пpичем KS> смешиваясь с оpигинальной следyющей стpокой. Естественно. Спектрум рассчитан на TV-развертки (15.625 kHz строчная, 50 Hz - кадровая), у VGA другие (31.5 kHz строчная, 60-70 Hz - кадровая).
KS> Что можно сделать? Пофиксить несоответствие частот развертки. Либо покопавшись в спектруме, либо в мониторе, либо и там, и там :)
KS> Самое оптимальное было бы пеpелопатить спектpyм т.к. задачи оставить KS> его совместимым с телевизоpом нет. Hа втоpом месте - покопаться в KS> монитоpе. И в самом кpайнем слyчае делать девайс по сложности не KS> yстyпающий спектpyмy :)... У кого какие идею, поделитесь пожалyйста! Ну, если тебе не лень... Исходный кварц на спектруме скорее всего стоит на 14 MHz. Используешь его как генератор пикселей. Длина строки должна быть примерно 14000/31.5 = 444 пиксела, из них 256 на картинку и остается 188 на бордюр и обратный ход (возможно, удобнее будет 256 + 192). Длительность обратного хода по строкам где-то в пределах 44-66 пикселей (замечательно подходит 64). По кадрам хуже: у спектрума частота кадров 50 Hz привязана к прерываниям и используется в качестве таймера. Не знаю для чего тебе понадобился спектрум, но тут придется что-то думать... или перекрутить монитор на 50 Hz, или поднять частоту таймера до 60 Hz... или делать для прерываний отдельный таймер на 50 Hz, пожертвовав синхронностью прерывания и вертикального обратного хода. Выбирай, что тебе лучше. А дальше - просто: каждую строку отрисовываешь дважды, всего получится
384 строки на изображение, и оставшиеся (сколько - посчитай сам на нужную частоту) на бордюр и обратный ход. Длительность обратного хода -
2-3 строки. Что там изменить - смотри уже по схеме своего спектрума.
Ну и еще остаются мелкие радости вроде усиления влияния задержек в логике, уменьшения таймингов памяти (ну да память поменять можно) и т.п.