RUSH
#01
29 мая 1999 |
|
Развитие Spectrum - Блокировка порта клавиатуры SPECCY при подключении C-DOS модема.
БЛОКИРОВКА ПОРТА КЛАВИАТУРЫ SPECCY ПРИ ПОДКЛЮЧЕНИИ CDOS-МОДЕМА Написать данную статью я решил после того, как на протяжении месяца безуспешно пытался подключить к своему компьютеру "Compact-128" минский CDOS-модем. Теперь же эта проблема успешно решена, при помощи одного простенького приспособления, кото- рое придумал наш гомельский hard'er SSSR, за что я ему безмерно благодарен. Вообще-то я человек весьма далекий от железа, поэтому, когда я столкнулся с по- добным глюком, мне пришлось прибегнуть к помощи профессионального электронщика. Суть проблемы состоит в том, что на мо- ем "Компакте", который широко распростра- нен в Гомеле, а также на некоторых других компьютерах, из-за не до конца продуманной схемотехники возникает конфликт между пор- том клавиатуры и внешним устройством, на- пример модемом. Все порты либо оказываются занятыми, либо на них висит клавиатура. В результате внешнее устройство невозможно выбрать программным способом и, например, терминалка EMS просто виснет выдавая вмес- то номера порта "--". Подойдем к этой проблеме с точки зрения железячника. На первый взгляд ничего тут сложного нет: подключить модем, равно как и другое внешнее устройство довольно прос- то: ищем свободные порты, смотрим по прин- ципиальной схеме компа разводку шины дан- нных и припаиваем выводы согласно сигналам схемы на системный разьем, либо непосред- ственно на процессор. На всякий случай привожу распайку выво- дов модема разработанного ARS'ом. Первый вывод обозначен на плате, как "1". 01 - D7 (шина данных); 02 - +5V (питание); 03 - D6 (шина данных); 04 - D4 (шина данных); 05 - D5 (шина данных); 06 - GND (корпус); 07 - WR (запись); 08 - RD (чтение); 09 - IORQ (ввод/вывод); 10 - A4 (если на порт #EF); Всего существует несколько стандартных портов для подключения CDOS-модема: #EF (239) - наиболее широко используемый. #F3 (243) - для "Байта"; #77 (119) - для "GRM"; Найти свободный порт очень легко. Доста- точно из любого BASIC'а набрать следующую комбинацию: PRINT IN N; где N-номер порта в десятичной системе счисления. Если после всех этих манипуляций Вы увидите на экране число 255 - то вроде бы все в порядке - порт свободен. Однако не спешите радовать- ся надо еще проверить порт на запись. Это можно сделать подавая команды: OUT N, M, - где N-десятичный номер порта, а M-любое число (0,1,255 и т.д.). Если при этом с компьютером не происходит ничего странно- го: типа изменение цвета бордюра, писка в динамике и т.п, можете себя поздравить - порт действительно свободен и можно смело вешать на него модем. В противном случае, этот порт адресуется, как #FE и требуется либо искать другие свободные порты или же, если таковых не будет найдено - ужесточать дешифрацию портов (по двум битам): ┌─────┐ А0<────┤1 & │ А1<───────┤2 │ А2<────┤3 │ А3<───────┤4 │ к 9-й ноге микросхемы А5<────┤5 80──────> 555ЛЛ1 (DD1.3) А6<───────┤6 │ модема. А7<──*─┤11 │ └─┤12 │ 555ЛА2 └─────┘ Однако в моем "Компакте" это не являет- ся панацеей, т.к. тут начинает "пудрить мозги" kempston джойстик и шина данных засоряется, что ведет к различным глюкам и траблам. Конечно, можно этот kempston отрубить напрочь, как например, это сделал KVA из Гродно в своем "Компакте-128", и поставить тумблер. Мы позвонили KVA и попросили по- мочь со схемой доработки и новым драйвером для EMS. Виктор обещал прислать схемку обычной почтой и по Фидо, однако, за два месяца мы не получили от него ничего, нес- мотря на наши постоянные звонки и просьбы. Поэтому нам пришлось использовать старый, хорошо проверенный метод научного тыка. Делается сия кнопка следующим образом: D24 (К555КП11) D25 ┌─────┐ ┌─────┐ ────>KB0 ─┤02 │ ────>KB4 ─┤2 │ ────>KB1 ─┤05 │ ────>KB5 ─┤5 │ ────>KB2 ─┤11 04├──D0 ────>IN ─┤11 04│ ────>KB3 ─┤14 07├──D1 ────>KB7 ─┤14 07│ ────>DV0 ─┤03 09├──D2 ────>DV4 ─┤3 09│ ────>DV1 ─┤06 12├──D3 ┌──┤6 12│ ────>DV2 ─┤10 │ │─*──┤10 │ ────>DV3 ─┤13 │ └──┤13 │ ┌───>x┌────┤01 │ ┌────>x┌────┤1 │ │A0 ─┴─ ┌─┤15 │ │A0 ─┴─ ┌─┤15 │ │ -IORD0 └─────┘ │ -IORD0 └─────┘ │ │ └─────────────────────┘ Ищем на плате "Компакта" две микросхемы D24 и D25 (К555КП11). Перерезаем дорожки ведущие к первым ножкам обоих микросхем от контакта A0 и бросаем освободившиеся пер- вые ноги на корпус. Результат - кемпстона больше нет, ни одна тестирующая программа теперь его Вам не найдет. Сразу же начина- ют нормально работать "ZX-ELEMENT-1", где раньше курсор был постоянно активирован и некоторые другие программы. Тумблер ставим в разрез цепи: от A0 до выводов "01" микросхем. Для этого можно использовать любой двухпозиционный перек- лючатель, например на "микриках". Однако согласитесь, это несколько неудобно - вешать дополнительный тумблер, а потом каждый раз отключать kempston при работе с EMS, MMD, CDOS и им подобными. И тут, в голову SSSR приходит гениаль- ная мысль - поставить обычный инвертор на транзисторе, блокирующий чтение порта кла- виатуры (#FE), для того, чтобы запретить выбор портов, когда опрашивается модем. Собираем элементарную схемку: К __ +5B / ____ Б | / КТ315 (n-p-n) <───│_\\_│──────|< ------------ 1K | \ Э к модему: принимает \_____ к 15 ножкам значения "1" если он обоих микросхем выбран. D24,D25 на сиг- нал - IRD0. Если выбрано внешнее устройство, то че- рез транзистор порт клавиатуры блокируется и больше не мешает опросу того же модема. Смело вешайте модем на порт (#EF) и рабо- тайте на здоровье в EMS, MMD и CDOS. Теперь отпадает необходимость в уста- новке переключателя - блокировка происхо- дит автоматически и совершенно незаметно для пользователя. Никаких побочных эффек- тов эта переделка на "Компакте" не вызыва- ет. На компьютерах с правильным выбором портов, например, в фирменном "Скорпионе", данная доработка не требуется. Большое спасибо hard'ery SSSR за прек- расную идею и помощь в подключении моего модема.
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября