Optron #14
03 июля 1998
  Железо  

Железо - Графические видеорежимы.

<b>Железо</b> - Графические видеорежимы.
<<
          ──══ Видеорежимы ══──


  Их два: MULTICOLOR и HIRES режимы графи-
ки.
  MULTICOLOR режим: 256*192 точки, 16 цве-
тов,  каждый байт графики имеет свой атри-
бут.  Графическая информация расположена с
адреса  #4000  и  устроена так же, как и в
нормальном  режиме.  Атрибуты  находятся с
адреса  #6000 и адресуются аналогично гра-
фике.  Сделать  это можно при помощи одной
555КП11  (три  перереза  на плате, которые
коммутируются с помощью мультиплексора).
  HIRES режим: 512*192 точки, 2 цвета (INK
7,  PAPER  0). Все нечетные столбцы (1, 3,
5...) расположены с адреса #4000 и адресу-
ются как графика в нормальном режиме, чет-
ные  -  с адреса #6000 и адресуются анало-
гично.   Как   установить  этот  режим  на
компьютер  "Pentagon",  написано в журнале
"ZX-Power  2".  Установка  на незатеняемый
"Львовский"  вариант имеет свои особеннос-
ти. Я не захотел ставить еще одну ИР23 для
считывания  дополнительного байта графики,
как  это сделано в схеме для "Pentagon", а
поступил  следующим  образом:  на тактовые
входы ИР16'х подал 14MHz, а на их разреша-
ющие  входы  подал импульсы, которые в два
раза  короче  и  приходят в два раза чаще,
чем те, которые были. То есть, сделал так,
чтобы  видеоинформация, считываемая видео-
контроллером, все время записывалась в ре-
гистр, в который в нормальном режиме запи-
сывается графика, отключил регистр атрибу-
тов   и  установил  с  помощью  резисторов
"жесткие атрибуты" экрана; подал на адрес-
ный  выход  А9  видеоконтроллера  сигнал с
частотой 0.875 MHz и подвинул сигнал -BOR-
DER  на  половину "нормального" знакоместа
влево.  Конечно, предложенный вариант реа-
лизации  не самый лучший и оптимальный, но
радует тот факт, что это вообще работает.
  Переключаются  эти два режима конфигура-
ционным  портом #EFF7. Назначение бит сле-
дуещее:

    D0 - Virtual ROM (1-On, 0-Off)
    D1 - HIRES (1-On, 0-Off)
    D2 - Защелка (как бит 5 в #7FFD)
    D3 - Третий экран (1-On, 0-Off)
    D4 - MULTICOLOR (1-On, 0-Off)

  Более-менее  стандартом  является бит D1
(он  предложен  в журнале ZX-Power 2), ос-
тальные же появлялись по мере модернизации
компьютера.
  Несколько слов о третьеm экране. При ра-
боте  с  дебаггером STS было очень большое
желание   отгрузить  его  на  какую-нибудь
"дальнюю"  страницу  памяти, так чтобы ос-
новные  128K  оставались  "чистыми"  и при
этом  экран,  который  использует STS, был
тем  же.  Реализовать это оказалось легко,
но для нормальной работы с STS нужно было,
чтобы экраны переключались следующим обра-
зом:

      ┌────────┬────────┬─────────┐
      │D3 #7FFD│D3 #EFF7│  Экран  │
      ├────────┼────────┼─────────┤
      │   0    │   0    │ первый  │
      │   0    │   1    │ первый  │
      │   1    │   0    │ второй  │
      │   1    │   1    │ третий  │
      └────────┴────────┴─────────┘

  Реализуется  это  на  одном элементе "И"
(555ЛИ1).
  Кстати,  под  HIRES (и не только) режимы
мною  сейчас  пишется  текстовый редактор,
которому   будут   присущи  такие  превос-
ходства, как многооконность и многотексто-
вость,  (максимальный размер одного текста
65280 байт, количество текстов будет зави-
сеть от размера памяти компьютера), а так-
же,   возможно,  и  многозадачность  (один
текст  набираем, в это время другой форма-
тируется,  а третий печатается). Уже напи-
сано  приблизительно  две  трети. Редактор
внешне похож на оболочку Turbo Pascal'я на
IBM PC.


            ──══ Джойстик ══──


  В качестве Kempston joystick'а я подклю-
чил  стандартный  джойстик  от Dendy. Этот
джойстик   передает  данные  в  последова-
тельном  коде.  Для  того, чтобы его можно
было  использовать как Kempston, я "соору-
дил"   схемку   из  2-х  555ИР16  и  одной
555ИР23, которая вставляется вместо "штат-
но" расположеной ИР22. В ИР16'тых происхо-
дит сдвиг и формирование данных, а потом в
нужной комбинации информация переписывает-
ся в ИР23.


             ──══ Мышка ══──


  В  журналах "Spectrofon 20" и "ZX-Format
5"  я  видел две схемы реализации Kempston
Mouse. За основу я взял схему из "Spectro-
fon'а"  (она проще), но сделал в ней неко-
торые изменения. Для дешифрации портов мы-
ши  там  используется  555ИД7.  Так как во
"Львовском   варианте"   схема  дешифрации
Kempston'а уже есть на плате "изначально",
то  в схеме контроллера мышки есть некото-
рое излишество. В общем, что я сделал: от-
резал сигнал дешифрации Kempston-а от ИР22
и пустил его на 4-ю ножку ИД7, пятую ножку
кинул на "землю", а на шестую подал сигнал
-DOSEN   с  контроллера  дисковода.  Ножки
15,14,13 и 12 микросхемы ИД7 соединил дио-
дами  по схеме "И" и этот сигнал пустил на
выборку джойстика. В итоге получилась схе-
ма выборки и мышки, и джойстика.
  Теперь,  собственно,  о мышке. Где можно
достать  Bus-mouse, я понятия не имею, так
что  мне  пришлось "поломать" Serial mouse
от  PC. Схема подобной переделки опублико-
вана   (правда,   с   ошибкой)  в  журнале
"ZX-Format  5", но есть одно "но": достать
во  Львове  микросхему 1561ТЛ3 или хотя бы
561ТЛ3 было в то время, да и сейчас, труд-
но, так что мне пришлось ставить микросхе-
mы 155ТЛ1, а на их вход "лепить" усилители
на  одном  транзисторе КТ315 и весьма кро-
потливо  подбирать  их коэффициенты усиле-
ния.  Непросто также сделать или найти но-
вый  "хвост"  для мышки, который бы имел 9
жил провода и при этом "приличный вид".
  Интересная  ситуация получается с назна-
чением  отдельных  бит  порта  кнопок мыши
(#FADF).  Дело  в том, что в "Спекторфоне"
указывается  что D0 - это правая кнопка, а
D1 - левая, а в "Формате" - наоборот: D0 -
левая,  а  D1  - правая. Усугубляется дело
тем,  что  одни  програмы (Format Utility,
DCU   2.32,   ZXZIP)  поддерживают  первый
стандарт,  a  иные (в основном демо версии
новых  программ) - второй. Кто прав - ска-
зать   трудно.   По   утверждениям  автора
статьи,  в "Формате" правильнее второй ва-
риант. Мне кажется, что второй вариант ло-
гичнее,  и  я  сделал себе именно его. Вам
рекомендую  сделать  так же. А в принципе,
лучше всего писать драйверы с автоконфигу-
рацией, а то вдруг кто-то из пользователей
левша?


              ──══════════──


  Уже  чувствую,  как многие начали искать
кусачки и паяльники. Советую убедится, что
Вы  действительно  хотите  переделать свой
компьютер,  что  у Вас достаточно времени,
нервов  и терпения, (а также опыта - прим.
ред.) чтобы это сделать.
  Если  у кого-то возникли вопросы и пред-
ложения,  то  я  их  выслушаю по телефону:
(03472)  5-20-65,  или на страницах газеты
"Оптрон".
  Пользуясь  случаем,  хочу  обратится  ко
всем, кто знает, как подключить к Спектру-
му  модули SIMM и как "общаться" на уровне
сигналов  с IDE HDD. А-у-у-у!!! Если знае-
те, то сообщите как нибудь мне или опубли-
куйте эти данные в "Оптроне".

                               Andy Nelson


        ──══ P.S. от Рашпиля ══──


  Андрей  представил  на суд читателей ре-
зультаты  своих  трудов.  Дело  читателей,
принимать  или не принимать, делать или не
делать. Я же только прокомментирую некото-
рые интерресные моменты.
  512K.  Я  в свое время тоже пытался сде-
лать их на 565РУ7 - не вышло. И вам не со-
ветую. На 41256 намного проще. Да и "жрут"
они  меньше  и  время  доступа у них всего
80нс  -  РУ7-м может турбо-режим не понра-
виться.
  Kemston mouse. Андрей, скорее всего, еще
не читал моей с Сергеем Филимоновым статьи
о переделке мышки. Так вот, лучше, проще и
правильнее  в качестве триггера Шмитта ис-
пользовать  два-три  инвертора  561ЛН2.  В
этом  случае,  нужно  подбирать всего один
резистор (поскольку вход у КМОП серии дос-
таточно  высокоомный,  отпадает  необходи-
мость  ставить усилители на транзисторах).
Проблема стандарта на кнопки мышки волнует
не  только  Андрея, но об этом я попытаюсь
рассказать в следующей статье.
  Кроме   всего   прочего,   заинтересовал
текстовый  редактор, который пишет Андрей.
А на него взглянуть можно?
  По поводу просьбы о SIMM'ах и HDD я ска-
жу только одно: Андрей, свяжись с редакци-
ей (телефон в страничке About).

                              С уважением,
                            Хакер Рашпиль,
                          Климус Владимир,
                  редактор газеты "Оптрон"

              ──══════════──


    



Другие статьи номера:

Kempston Mouse-2 - Определение наличия мышки. Обработка кнопок и координат.

Железо - Графические видеорежимы.

Железо - Макси-извращенные "прибамбасы" PowerZX.

Конкурс - Ваши хитрости и советы, которые могут быть полезны не только в области Спектрума, но и в домашнем хозяйстве.

Лит. страничка - Начало конца. Стихи: Дебит и кредит.

Реклама - Реклама и объявления...

Четыре килобайта - Новое название группы - Steel Falcons.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Listh language news - down pros and cons of lists vs. heap.
Рассказ - делаем бомбу.
body postbox - нам пишут.
V.I.P. - интервью с Arny и Mythos, создателями клона Elite игры Awaken.
Капля припоя - Дополнительные ОЗУ: кэш.

В этот день...   21 ноября