╔══════════════════════════════════════════════════════════════╗
│ ЖЕЛЕЗО │
╚══════════════════════════════════════════════════════════════╝
И СНОВА О СОВМЕСТИМОСТИ
Меня в последнее время часто спрашивают: "Почему у нас в не-
которых программах не работает KEMPSTON JOYSTICK?". Причин тут
несколько, и я спешу их разьяснить. Для этого окунемся немного в
схемотехнику нашего обожаемого SPECCY.
Первое, изначально в родном SPECCY все порты дешифрировались
грубо, по одному разряду младшего байта шины данных. Это станет
понятно из следующей таблицы:
Порт #FF 11111111 O-O-O-H, MY GOD!
Порт #FE 11111110 BORD,MAG,BEEPER,KEYB
Порт #FD 11111101 ! ЧИТАЙ НИЖЕ !
Порт #FB 11111011 ZX-PRINTER
Порт #FF на самом деле читается не только по своему истори-
ческому адресу, а вообще по любому незадействованному. Порт #FD
на самом деле нельзя использовать напрямую, так как возможен
"ответ" сразу нескольких устройств - порт конфигурации ZX 128,
муз.сопроцессор. Хотя его очень часто используют для переключе-
ния страниц памяти. На компьютерах, где он реализован как в фир-
менном SPECCY, эти номера проходят. Зато на горе-компьютерах ти-
па "АТМ" и так далее (вы меня поняли) это приводит к печальным
результатам.
Это были основные порты, теперь далее.
Порт #F7 11110111 \
Порт #EF 11101111 } ZX LPRINT 3
Порт #E7 11100111 /
Как видите, остались адреса с #1F до #DF. В двоичном виде это
выглядит так:
Порт #1F 00011111
Порт #3F 01011111
Порт #9F 10011111
Порт #DF 11011111
Это адреса по которым можно обращаться, избегая конфликтов на
шине данных. Легко заметить, что во всех адресах разряд A5 ра-
вен 0. Именно по принципу грубой дешифрации этот разряд "отве-
чает" за KEMPSTON JOYSTICK. То есть, значения джойстика теорети-
чески должны читаться по всем этим адресам. На деле же, у кого
KEMPSTON JOYSTICK выполнен на м/схеме КР580ВВ55, значения джой-
стика будут читаться ТОЛЬКО по адресу #1F (31). Именно по этому,
в некоторых программах, где идет опрос по маске #DF, джойстик
работать не будет. Решение проблемы видится в замене маски на
#1F. Действительно, зачем городить лишнюю логику и мучить ком-
пьютер, когда адрес #1F стал фактически стандартом в нашей стра-
не. Я полагаю, что дал исчерпывающий ответ на данный вопрос.
В заключение, хочется сказать, что все кому не безразличны
вопросы железа, и у кого есть собственные находки, могут зво-
нить ко мне на мою ZX, повторяю, именно ZX, а не PC (вонючая ма-
шина), BBS. Свои находки желательно оформить в виде файла в ZX
WORD и поместить мне на сервер. Это касается, правда, только жи-
телей Москвы и области. Остальные могут мне писать.
Громов Кирилл (C) CHUNG Software (FFC)