ZX Pilot
#35
27 ноября 1999 |
|
Hard & soft - безглючная схема подключения музыкального сопроцессора AY-8910.
H A R D A N D S O F T ────────────────────────────────────────── (C) MISHEL Как мне надоело слушать реплики друзей типа: "Ха, зависла!", а вот еще: "М-даа!" или еше хуже: "Да продавай ты свой глючный комп, купим тебе нормальный!". Ничего по- добного - если компьютер виснет, это не значит, что он плохой. Просто он неперева- ривает некоторые программы и по этому у него несварение памяти. Продолжаться так дальше не могло. Все эти наезды подтолкнули (толкнули) к тому, чтобы разобраться в чем тут дело. Позагружав виснущие проги выяснилось, что если отключить музыку, то они работают нормально. Вывод: выбрасываем музыкалку и работаем без глюков. Зная, что истина где-то рядом и, сделав компьютеру харакири, после покапавшись в вывалившихся внутренностях, составил схему подлючения музыкалки по дорожкам, за не- имением оной. Так подключается у меня: DD1.4 11┌───┐ А14 ────┬┤ле1│13 ││ █──────────────┐ DD1.1 └┤ │ │2┌───┐ 12└───┘ └─┤ле1│1 BC1 ____ 8┌───┐ 3│ █───── IORQ ─────┤ле1│10 ┌┤ │ 9│ █─┐ __ │└───┘ A1 ───────┤ │ │ WR 5│┌───┐ └───┘ │ ───────┤ле1│ BDIR DD1.3└─────┐ 6││ █───── DD2.3 DD2.4│ DD2.1┌┴┤ │4 9┌───┐ 12┌───┐ │1┌───┐│ └───┘ A15 ────┤ла3│8 ┌┤ла3│ └─┤ла3││ DD1.2 10│ █──┤│ █┐ 2│ █┘3 A13 ────┤ │ └┤ │└──┤ │ └───┘ 13└───┘11 └───┘ Чтобы разобраться как работает схема, пришлось пораскидывать порты обращения по битикам: А15 А0 #FFFD=1111111111111101 #BFFD=1011111111111101 системник для савнения #7FFD=0111111111111101 15-й бит отвечает только за запись дан- ных в выбранный регистр. Как работает схема распиноваться не бу- ду - больно сложно, но нарисую интересную табличку как происходит запись и чтение AY: запись чтение REC данных перевод D0-D7 РЕГИСТРА в рег. у AY в Z-сост. BC1 1 1 0 0 BDIR 1 0 1 0 УВАЖАЕМЫЕ КОДЕРЫ, ПОЛЬЗУЙТЕСЬ В ВАШИХ ПРО- ГРАММАХ ПОЛНОЙ ДЕШИФРАЦИЕЙ ПОРТОВ! Пораскинув мозгами (раскидывать приш- лось около трех дней) до меня дошло, что программы висли из-за того, что при обра- щении к другому порту при неполной диши- фрации почему-то не срабатывала защита от совпадения с другими портами на элементе DD2.1 в итоге музыкальный процессор заби- вал шину данных своими даннымие, происхо- дили (нежелательные моменты для цифровой техники, когда два выхода объединяются в один, при чем с разными логическими состо- яниями) маленькие, но очень страшные ко- роткие замыкания, из-за которых происходил почти аппаратный сброс компьютера! Поизвращавшись вдоволь, я все-таки на- шел недостающий сигнал в этой схеме. Это М1, что это за сигнал - я не знаю, но в итоге получилась небольшая доработка, за- ключающаяся в добавлении сигнала М1 в де- шифратор порта. Для этого нам понадобятся (нет, молоток нам не нужен, но если эта мысль вас не по- кидает, то можете ею воспользоваться :-) два кусочка провода и паяло: 1) разрываем дорожку, которая объединя- ет входы элемента DD2.4 так чтобы осталась связь одного входа с выходом DD2.3 (8). 2) входы DD2.2 объединяем и подаем на него сигнал М1. 3) подаем сигнал с выхода DD2.2 (6) на свободный вход DD2.4. Если же у вас схема другая и нет свобо- дного элемента то придется взять микросхе- мку ли1, ла3, лн1, 2, 3, короче, что у вас есть и собрать простенькие схемки: 1┌───┐ вместо А15 А15 ────┤ли1├─────── М1 ────┤ │3 2└───┘ 1┌───┐ 4┌───┐ А15 ────┤ла3│3 ┌┤ла3│6 туда-же 2│ █────┤│ █───── М1 ────┤ │ └┤ │ └───┘ 5└───┘ После доработки я досмотрел-таки демку "CONDOMMED", которая страшно висла и почи- тал нелько газет, которые висли, если их просматривать по строчкам. Буду рад если эта доработка кому-нибудь да поможет. Разбрасывался мозгами Mishka, добрасы- вал friend Sashka. P.S. Многие, наверное, замечали, что на плате компьютера микросхемы для принтера имеются, а тесты показывают, что его нет (бывает же). Ну так вот, дело в том, что разработчики схемы решили так (не будем на них злиться): если у вас нет принтера, то зачем вам порт. Чтобы порт заработал, нам понадобится залуженная пороволочка длиной примерно 1 см. Запаиваем ее так, как пока- зано на схеме: разьем на плате ┌─┐ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ D7 D0 __ ┌──┐ ┌────── WR───┤ 1├───┤ИР 23 ┌─┤ │ └────── │ └──┘ └──────┐ A2 ┌──┐ │ ───┤ 1├─┘ ┌─┤ │ Все дело в одном сопротив- +ИП│ └──┘ лении, которое мы и замыкаем, │ └──────┐ тем самым устанавливая на вхо- █ ┌──┐ │ де микросхемы логический "0" и ─┴───┤ 1├─┘ разрешаем работу порту (т.к. ┌─┤ │ ИР 23 управляется "0"). В этом │ └──┘ можно легко убедиться, если __ └──────┐ посмотреть немного левее, на IORQ ┌──┐ │ схему дешифрации порта. ТМ 2 ───┤ 1├─┘ этот тригер из ДОС, а на перк- ┌─┤ │ лючение страниц в ПЗУ если ДОС │ └──┘ то порт не работает. └──────┐ ┌────┐ │ │ТМ2─│ │ │ Q■─┘ └────┘
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября