On-Line
#07
22 октября 1995 |
|
Железо - Доработка синхрогенератора компьютера "Profi" v5.03.
╔══════════════════════════════════════════════════════════════╗ │ ЖЕЛЕЗО │ ╚══════════════════════════════════════════════════════════════╝ СВЕРШИЛОСЬ! Как я писал уже раньше, я вел работы по изменению работы син- хрогенератора компьютера "ПРОФИ". Так вот, спешу порадовать - работа увенчалась успехом! Теперь подробнее. Изначально имелся синхрогенератор для версий плат 3.xx, это, пожалуй, самое мрачное творение и заострять на нем внимание я не буду. Скажу лишь, что распознать данную версию можно по черной рамке вокруг SPECTRUM растра, и в программе QARX буквы бегут не по верхней части бордюра, а где-то в середине экрана. Потом спе- циалистами фирмы "КОНДОР" была написана версия "SAMX6" в кото- рой был реализован полноценный SPECTRUM растр плюс правильное формирование сигнала INT. И хотя, вроде все было нормально, ме- ня не устроило положение верхних бордюрных эффектов. Мысль о том, что здесь "виноват" INT, оказалась неверной, де- ло было в системе пересчета строк. Как известно, правильно "раз- ворачивать" 312 строк SPECTRUM растра (экран + бордюр). Во мно- гих схемах, например в "ПЕНТАГОН 128", просчитывается 320 строк - это приводит к явному нарушению синхронизации. Наиболее замет- но это, если из BASICа отдать команду "SAVE" - вместо хорошо различимых, поднимающихся по бордюру полос, будет видна хаоти- ческая мешанина. В "ПРОФИ" дело обстояло почти как надо, толь- ко подсчет восьми тактов (16*19 + 8 = 312) происходил за кадро- вым импульсом, а не перед ним. Это приводило к тому, что форми- рование экрана начиналось на 8 строк раньше и выглядело так, как будто изображение на бордюре "спущено" на одно знакоместо. Хотя "SHOCK MEGADEMO" шел достаточно прилично, спрайты не пропадали. Так что первым проблемным моментом стало положение пересчета. Вот этот первый момент я и устранил. И тут получилась забавная вещь: картинки на экране/бордюре стали вылитые как на "ПЕНТАГОНЕ 128" с доработанным INTом, что навело меня на мысль, что "ПРОФИ" версий 3.xx - 4.xx не что иное, как улучшенный и навороченный "ПЕНТАГОН"! Правда, только по шине и времянке. Забегая вперед, скажу, что здесь играет важ- ную роль сигнал WAIT - в "ПЕНТАГОНЕ" и старом "ПРОФИ" он попрос- ту не использовался. Так получилась версия "SAMX6M". Хорошо иду- щим SHOCKом, к сожалению, пришлось пожертвовать. Зато, нако- нец-то встали на свои места верхние бордюрные эффекты и пошли "мультиколоры" в фирменных программах. Вторым моментом, который меня удручал, являлось то, что в QARXе был заметен ход луча, формирующий бордюр в правом верхнем углу. Практика показала, что здесь ключевую роль играла дли- тельность сигнала INT. Причем, что опять смешно, длительность, подобранная точно как в фирменном SPECCY, здесь оказалась не оп- тимальной. Видимо, за счет многих параметров схемы компьютера, более короткий INT обрабатывается точно так же, как и строго фиксированный INT в фирменном SPECCY. Кстати, то что INT форми- руется в начале кадра (то есть по заднему фронту инверсного кад- рового синхроимпульса) - не совсем верно. На самом деле он фор- мируется чуть-чуть раньше. Этот вывод я сделал, исходя из того, что схемы, реализующие принцип, описанный выше, дают в програм- ме ACADEMY следующий эффект - бордюрное изображение сдвинуто от- носительно экранного в левом верхнем углу ровно на один пиксел. Этот момент я не стал убирать, хотя теоретически это проделать можно. А вот видимый ход луча в QARXе я почти устранил, подби- рая экспериментально длительность INTа. Сейчас длительность INTа где-то в районе 8 - 8.6 мс. Хотя по теории "это не есть совсем хорошо", на практике никаких проблем с "критическими" программа- ми не было. На данный момент, две исправленные и доработанные версии син- хрогенератора носят названия "SAM7CS" - для версий плат 3.xx - 4.xx и "SAM14CS" - для версий плат 5.xx. Обе прошивки прошли все замеры на частоты и длительности синхроимпульсов, кадровые врез- ки и т.д., результаты оказались хорошими, и теперь все платы бу- дут комплектоваться данным синхрогенератором. "Пятая" версия платы принесла мне очень приятный сюрприз. За счет того, что в схеме процессору формируются сигналы WAIT от видеоконтроллера, получилась идеальная синхронизация. Такого я еще не видел! Во всех "критичных" программах ПОЛНОСТЬЮ совпа- дают ВСЕ бордюрные эффекты, работают ВСЕ "MULTICOLOR"ы, а прес- ловутый SHOCK MEGADEMO работает настолько идеально, что я сидел завороженный минут пять, не веря в происходящее. Тут, видимо, сказалось то, что примененная в последней версии асинхронная схемотехника, в SPECTRUM режиме позволила добиться полной эмуля- ции "непрозрачной" шины фирменного ZX SPECTRUM. Все это дает мне право сказать, что на сегодняшний день "ПРОФИ" версии 5.03 са- мая удачная и совместимая модель серийно выпускаемого компьюте- ра. Естественно, владельцы уже приобретенных плат всех версий могут обращаться ко мне для доработок своего компьютера. В принципе, в старых "ПРОФЯХ" можно попытаться скоммутиро- вать WAIT как в "пятой" версии. Это, я полагаю, даст несомненно полoжительный результат, но, в связи с большим количеством но- вых соединений, будет являться весьма затруднительным делом. Хо- тя энтузиасты могут заняться этим, заодно перенеся опыт на "ПЕНТАГОН", осчастливив владельцев этого самого распространенно- го 128Кб компьютера у нас в стране. Основное техническое резюме всего вышесказанного таково: дли- тельность INT в SPECTRUM совместимых компьютерах не фиксирован- на однозначно и подбирается экспериментально по устойчивой рабо- те "критичных" программ, несомненно так же то, что второй по значимости сигнал, ответственный за совместимость - это сигнал WAIT, и имеет место желание подумать, как его правильно скомму- тировать. Второй же вывод гласит: невозможно добиться 100% сов- местимости, а фирменную микросхему ULA можно проэмулировать мак- симум на 99%, и то с большой затратой времени и технических средств, что вряд ли основной массе пользователей и производите- лей покажется нужным. P.S. Для еще большей совместимости, на верхней плате проделайте следующее: Все версии: найдите на схеме подключения муз.процессора микрос- хему, где смешиваются A13 и A15, отсоедините ногу микросхемы от A13, и соедините ее с A15. У Вас пойдут оцифрованные мелодии (например BLAVA 128). Можно так же найти свободный элемент "И" (ЛИ1), и вместо A14 подать на инвертор смесь A14 и M1. Это под- страховка для исключения засорения шины данных муз.процессором. Для версии 5.03: Выпаяйте резистор R15 на верхней плате, соеди- ните 2 и 3 выводы м/схемы DD45 с сигналом CSAP6 (3 нога м/схемы DD39). После этого резко улучшится синхронизация. Громов Кирилл (C) CHUNG Software (FFC)
Другие статьи номера:
B.B.S. Новости - О работе B.B.S. |
WANTED !!! - Разыскиваются ... |
Железо - Доработка синхрогенератора компьютера "Profi" v5.03. |
Застрял ? - Описание игры "Ranarama".
|
Реклама - Реклама и объявления ... |
Хаккеры тоже люди - Советы редакции журнала "Cпектрофон". |
Похожие статьи:
В этот день... 21 ноября