Работа с ZX-Spectrum 1993 г.

Глава 22-23 - другое периферийное оборудование. Ввод и вывод.


ГЛАВА 22

ДРУГОЕ ПЕРИФЕРИЙНОЕ ОБОРУДОВАНИЕ

Имеется ряд других устройств, которые могут быть подключены к компь-
ютеру ZX Spectrum.

ZX Microdrive - высокоскоростное устройство памяти, может быть
использовано вместо кассетного магнитофона. Однако оно может управлять-
ся не только командами SAVE. VERIFY, LOAD и MERGE, но так же команд
дами PRINT, LIST, INPUT, INKEYS, CAT, OPEN#, CLOSE#, FORMAT, MOVE,
ERASE.

Interface 1 (Microdriver. RS-232 t, RS-232 b, RS-232 n).

При помощи этого устройства можно организовать сеть из нескольких
компьютеров ZX Spectrum (до 64).

Стандартным интерфейсом для ZX Spectrum является RS-232, посредст-
вом которого подключаются: клавиатура, принтер и любые другие устройства,
отвечающие стандартам этого интерфейса. При работе с такими устройст-
вами могут использоваться имеющиеся на клавиатуре дополнительные клю-
чевые слова: CLOSE#, OPEN#, MOVE, ERASE, CAT и FORMAT.

ГЛАВА 23

ВВОД и вывод

Краткое содержание: OUT, IN.

Компьютер может считывать некоторую информацию и записывать её в
свою оперативную память по командам РЕЕК и РОКЕ. Вся память компьюте-
ра, и ПЗУ, и ОЗУ представляется совокупностью адресов от 0 до 65535» каж-
дый из которых адресует один байт.

Таким же образом можно адресовать и ещё 65536 адресов, называемых
портами ввода-вывода. Они используются процессором для связи с клавиату-
рой и принтером и могут управляться операторами Basic'a IN и OUT.

IN аналогичен оператору РЕЕК:
IN addres

Он использует один аргумент - адрес порта, и позволяет считать один
байт из указанного порта.

OUT подобен оператору РОКЕ:
OUT addres, value

и записывает указанные данные в заданный порт вывода.

ZX Spectrum оперирует с шестнадцатиразрядными адресами, которые
мы будем обозначать буквой А:

А15,А14,А13,А12,А11,А10,А9,А8,А7,А6,А5,А4,АЗ,А2,А1,А0.

Биты адреса А0,А1,А2,АЗ и А4 очень важны. Как правило, они в "1", но
если хотя бы один из них в "О", это предписывает компьютеру некоторые
действия. Не более чем один из этих пяти битов может быть в "О .

Биты А6 и А7 игнорируются, так что если Вы знакомы с электроникой, то
можете использовать их по своему усмотрению.

Биты А8.А9 используются иногда для получения дополнительной инфор-
мации.

Информационный байт мы будем обозначать буквой D:
D7,D6,D5,D4,D3,D2,D1 ,D0

Теперь представим список адресов портов. Имеется целый ряд входных
адресов для чтения с клавиатуры, а также входного разъёма 'EAR'.
Сама клавиатура разбита на 8 полурядов по 5 клавиш е каждом.
IN 65278 считывает ряд от CAPS SHIFT до V ( А 8 )
IN 65022 считывает ряд от А до G ( А 9 )

IN 64510 считывает ряд от Q до Т ( А 10 )

IN 63486 считывает ряд от 1 до 5 ( А 11 )

IN 61438 считывает ряд от 0 до 6 ( А 12 )

IN 57342 считывает ряд от Р доУ(А13)

IN 49150 считывает ряд от ENTER до Н ( А 14 )
IN 32766 считывает ряд от SPACE до В ( А 15 )
Эти адреса могут быть вычислены из выражения:

254 + 256 * (25$ -2**N) при N пробегающем от 0 до 7
В байте, считанном с клавиатуры, биты от DO до D4 служат для обозна-
чения пяти клавиш в данном полуряду. DO для крайней клавиши, a D4 для той,
что ближе к центру. Состояние одного из этих битов "О" указывает, что соот-
ветствующая ему клавиша нажата. D6 принимает своё значение при чтении с
разъёма 'EAR'.

Выходной порт 254 обеспечивает громкоговоритель (D4) и разъём 'MIC'
(D3), а так же установку цвета BORDER (D2,D1,D0).

Порт 251 обеспечивает связь с принтером, как чтение так и
запись.Чтение для проверки готовности принтера к работе.

Порты 254, 247 и 239 используются для связи с дополнительными уст-
ройствами, описанными в главе 22.
Запустите следующую программу:

10 FOR п=0 ТО 7: REM helf-row number (номер полуряда)
20 LET a«254+256*(255-2**n)
30 PRINT AT 0,0;IN a: GO TO 30
и понажимайте по одной клавише в каждом полуряду. После нажатия
очередной клавиши введите BREAK, а затем NEXT п.

Ниже на рисунке показано распределение контактов разъёма:

ОПИСАНИЕ СИГНАЛОВ МИКРОПРОЦЕССОРА Z80, Z80A

Рис.1 Назначение выводов микропроцессора Z80, Z80A

Рис.1 Назначение выводов микропроцессора Z80, Z80A

АО - А15 (Адресная шина). Выходы с. тремя устойчивыми состояниями.
Активный уровень сигналов - высокий. Адресует ОЗУ или УВВ (до 64К для
ОЗУ).

DO - D7 (Шина данных). Входы-выходы с тремя устойчивыми состо-
яниями. '
Активный уровень - высокий.

М174 (Машинный цикл). Выход - активный сигнал низкого уровня. Указы-
вает, что в текущем цикле осуществляется выборка КОП.

MREQ^panpoc памяти]. Выход с тремя устойчивыми состояниями.
Активный уровень - низкий. Сигнал указывает, что на адресной шине установ-.
лен адрес для операции чтения или записи в память.

lORQ^Oanpoc ввода-вывода). Выход с тремя устойчивыми состояниями.
Активный уровень сигнала - низкий. Сигнал указывает, что младший байт
шины адреса содержит адрес УВВ, кроме того этот сигнал генерируется
после выдачи подтверждения прерывания, тем самым указывая, что вектор
прерывания Может быть помещён на шину данных.

РЭ^Чтение из памяти). Выход с тремя устойчивыми состояниями.
Активный уровень сигнала - низкий. Сигнал указывает, что ЦП готов к чтению
данных из памяти или из УВВ. Адресованное УВВ или память используют
этот сигнал для стробирования при подаче данных на шину данных ЦП.

УЛЖ'ЧЗапись в память). Выход с тремя устойчивыми состояниями.
Активный уровень сигнала - низкий. Сигнал указывает, что на шине данных
содержатся данные, предназначенные для записи в память или УВВ.

RFSH^BoccTaHOBfleHne). Выход, активный уровень - низкий. Сигнал ука-
зывает, что младшие 7 разрядов шины адреса содержат адрес
восстановления для ОЗУ и текущий сигнал MREQ'4 должен использоваться
для восстановления динамической памяти..

HALT^OcTaHoe). Выход, активный уровень - низкий. Сигнал указывает,
что ЦП выполнил команду HALT и ожидает появления либо немаскируемого,
либо маскируемого прерывания, после которого он продолжит работу. Перед
выполнением HALT, ЦП заносит в ОЗУ информацию, которая нужна для вос-
становления.

УУ/А^^Ожидание). Вход, активный уровень - низкий. Сигнал указывает
микропроцессору, что адресуемые,память или УВВ не готовы к передаче
данных. ЦП ждёт, пока активен этот сигнал.

ИЧТ^Запрос на маскируемое прерывание). Вход, активный уровень -
низкий. Запрос будет воспринят ЦП в конце выполнения текущей команды,
если триггер разрешения прерывания IFF, управляемый внутренними прог-
раммными средствами, установлен в определённое состояние.

NMI^anpoc на немаскируемое прерывание). Вход, активный уровень -
низкий. Это прерывание имеет более высокий приоритет чем INT. Распоз-
наётся в конце текущей команды. Сигнал автоматически переводит ЦП к вы-
полнению программы с адреса 0066Н.

РЕБЕТ^Сброс). Вход, активный уровень - низкий. При поступлении
сигнала выполняются следующие действия:

а) сброс триггера разрешения прерывания IFF;

б) очистка счётчика команд и регистров I и R;

в) шины адресная и данных в состояние Z;

г) для всех управляющих выходных сигналов устанавливается неактивный
уровень.

BUSRQ'4 (Запрос шин). Вход, активный уровень - низкий. Сигнал имеет
более высокий приоритет, чем NMI и всегда распознаётся в конце текущего
машинного цикла. Он используется для организации прямого доступа к
памяти (ПДП) и переводит в состояние Z все шины и тристабильные выходы
сигналов управления, после чего этими шинами могут управляться другие
внешние устройства.

В US АС ^(Подтверждение перевода шин в состояние Z). Выход,
активный уровень - низкий. Сигнал подаётся на запрашивающее внешнее
устройство.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



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

Похожие статьи:
CSP`00 reроrt - отчет с Crazy Siberian Party 2000.
Проходилка - Drunk Dizzy (demo)
Смак - Сервировка пивного стола.
Солдатский юмор - 400 афоризмов и высказываний.
Лаборатория - ZX-SPECTRUM и операционные системы.

В этот день...   26 апреля