|
ZX Ferrum
#02
26 апреля 2004 |
|
Железо - схема блокировки глючных портов на Scorpion и Profi.

Материал взят из журнала ZX-Element #1
SpellBbinder present
REVOLUTION on Speccy !!!
Да простят меня читатели за столь громкое название , но идея
данной разработки несколько неординарна.
А теперь серьезно. Ни для кого не секрет, что дополнительные
порты в компьютерах кроме преимуществ ( дополнительная память,
отключение ПЗУ и т.д.) приносят пользователям и головную боль, а
именно необходимость их блокировки. В противном случае не идут
некоторые проги и демы. Предлагаемые схемы борьбы с этим
заключяются в жесткой дешифрации данных портов и являются
полезным дополнением к схеме компьютера, однако не решают
проблемы полностью. При обращении к портам по короткой адресации
все равно возникают проблемы.
Например: LD A,#DF
OUT (#FD),A
сработает порт у ПРОФИ (#DFFD). Еще более печальная ситуация на
СКОРПИОНАХ :
STS 3.3 делает так
LD A,#1F
OUT (#FD),A
он конечно-же хочет включить 7-й банк, но по иронии судьбы (или
создателей СКОРПИОНа) откликается порт #1FFD и компьютер
благополучно зависает. О ПЕНТАГОНАХ-512 я уже и не говорю.
Так вот товарищи теперь с этим покончено! Предлагаемая схема
"отслеживает" команды короткой адресации и блокирует, на время
ее выполнения, все критичные порты. Что позволяет не
пользоваться кнопками блокировки портов.
DD2
┌───┐ ┌─ +5V
D0 ─────────────┤ │ │
D1 ─────────────┤ & │ │ ┌─┬──┐
┌──┐DD1 │ │ ├──┤S│ │ _____
D2 ────┤1 o──┬──┤ │ └──┤R│ Q├─── BLOK
└──┘ └──┤ │ ├─┤ │
D4 ─────────────┤ o─────┤D│ _o-
┌──┐DD1 │ │ ┌──┤C│ Q│
D5 ────┤1 o─────┤ │ │ └─┴──┘
└──┘ │ │ │ DD3
D6 ─────────────┤ │ │
D7 ─────────────┤ │ │ DD1-1533ЛН1
_ └───┘ │ DD2-1533ЛА2
M1 ────────────────────┘ DD3-1533ТМ2
Схема работает элементарно: команд короткой адресации всего
две: это IN A,(NN) - #DB и OUT (NN),A - #D3. Они отличяются
всего одним битом - D3, его мы просто не заводим. При появлении
на шине данных байта #DB или #D3 на выходе ЛН2 появится
логический 0. Если этот байт код операции, извлекаемой
процессором, то сигналом М1 он зафиксируется в ТМ2 до следуюшего
цикла извлечения кода операции. Если процессор считает любую
другую команду, то в ТМ2 зафиксируется логическая 1. Данный
сигнал (BLOK) используется для блокировки критичных портов. А
так-же для управления жесткостью дешифрации других портов
(например #7FFD и муз.сопроцессора) позволяя иметь жесткую
дешифрацию при длинной адресации и упрощенную при короткой.
Данная схема опробована на компьютера ПРОФИ и СКОРПИОН и
показала прекрасные результаты.
Мнение редактора:
Просто уникальная и полезная разработка.
Другие статьи номера:
Похожие статьи:
В этот день... 13 ноября