Мультирежимные контроллеры дисковода "A16" и "A16M": техническое описание

(В.Е.Новак, фирма “АльтПро”)

A16 предназначен для подключения от одного до трех дисководов к БК0010(-01); A16M - для подключения 1 или 2 дисководов к БК0010(-01) или БК0011М, на БК0011М обеспечивает доступ к HALT-режиму.

В А16М реализована защита от стирания информации на дискетах при выключении питания (без использования потребляющих большую мощность микросхем 531 серии).

  • Как различить контроллеры “К+16”, А16 и А16М: если у Вас А16 или А16М, то при включении питания (без нажатия каких-либо клавиш) на экран автоматически выводится сообщение о контроллере. Если у Вас А16М, то в сообщении сказано, что контроллер годится и для БК0011М ( А16 - только для БК0010(-01) ).

ПЕРЕЗАПУСК компьютера, осуществляемый нажатием кнопки “RESET” контроллера, возможен двух типов: кратковременное нажатие на кнопку работает традиционно и приводит к выходу в текущий режим; длительное удержание кнопки (1 сек и более) приводит к установке стандартного режима работы ДОЗУ (режимы описаны ниже) и:

  • запуску тестов, если ни одна клавиша в момент отпускания RESET не нажата;

на А16:

  • загрузке операционной системы, если нажат “пробел”;
  • сохранению регистров R0-R6 в ячейках 37762-37776 и выходу в монитор БК, если нажат “0”;
  • сохранению регистров R0-R6 в ячейках 7762-7776 и областей памяти 0-10000 в 10000-20000 и 120000-140000 (или 140-160000) в 20000-40000, если нажата клавиша “1” (или “2”);
  • передаче управления на адреса: 130000 при нажатой клавише “3”, 140000 - “4”, 150000 - “5”, 137000 - “6”, 157000 - “7”, и на адрес, содержащийся в ячейке 376, если нажата клавиша “8”;

на А16М:

  • старое значение SP сохраняется в 37776, SP устанавливается на 37776; если установлен признак “перехвата перезапуска” - содержимое ячейки 137720 “стартового” режима = 37776, то управление сразу передается на 137722; иначе устанавливается стандартный для данной модели БК (10-01 или 11М) режим работы доп. ОЗУ и:
  • если нажата клавиша “0” или “1” - произойдет попытка загрузки с соответствующего привода;
  • если нажата клавиша “2” - передается управление на 100000 (таким образом на БК0011М достигается “перезапуск на 100000”);
  • клавиши “3”-”8” обрабатываются так же, как и на А16.

И на А16, и на А16М команды монитора БК10 “T0”, “T1” (а на А16 и “T2”) вызывают загрузку с привода с соответствующим номером; “T3”-”T7”, “T10” работают аналогично перезапуску с нажатием клавиш 3-7, 8 соответственно; “Т2” на А16М передает управление на 100000.

Примечания:

  1. Встроенный тест включает в себя проверку программируемого таймера, который находится в процессоре БК 1801ВМ1 и к контроллеру отношения не имеет. В случае появления сообщений об ошибках других узлов необходимо обратиться к изготовителям.
  2. В тесте корректно определяется тактовая частота БК 3 МГц, 4 МГц и 6 МГц. При использовании неправильной схемы “турбирования” БК, опубликованной в журнале “ИНФО”, точность определения тактовой частоты не гарантируется. Если ваш экземпляр контроллера на повышенной тактовой частоте не работает, обратитесь в фирму-изготовитель.
  3. Наращивание памяти до 64 или 128 Кбайт можно произвести в фирме “АльтПро” или у официальных дилеров на льготных условиях.

Назначение контактов выходного разъема контроллера

(выход к дисководу)

Контакт Сигнал Назначение контакта
8 ИНД Индексный маркер
10 ВН0 Выбор накопителя 0
12 ВН1 Выбор накопителя 1
14 ВН2 Выбор накопителя 2
16 МВК Включ. двигателя
18 НПШ Направление шага
20 ШАГ Шаг
22 ЗПД Данные записи
24 РЗП Разрешение записи
26 Д00 Нулевая дорожка
28 ЗЗП Запрет записи
30 ДЧТ Данные чтения
32 ВП0 Выбор поверхности
34 ГОТ Готовность

Все нечетные - ОБЩИЙ.

В А16М сигнал ВН2 незадействован.

Первый провод в плоском кабеле соответствует 8-му контакту разъема. Используется кабель 2 видов: 27 жил или 26 жил. В случае, если в кабеле 26 жил, 33 контакт разъема пропускается.

Назначение контактов входного разъема контроллера (МПИ)

Сигнал Контакт
AD0 A31
AD1 B31
AD2 B29
AD3 B30
AD4 B28
AD5 A28
AD6 B27
AD7 B32
AD8 B26
AD9 A27
AD10 B25
AD11 A26
AD12 B24
AD13 A25
AD14 B23
AD15 B7
SYNC B22
RPLY B20
DIN A23
DOUT B21
WTBT B11
RESET B19
RESTA A1
BAS1 A14
BAS2 A29
MON10 B1
GND AB2,3
+5V AB12
+5V A4
MON11 B6
RAM11 A22

AD0-AD15-...-RESET - стандартные сигналы шины;

RESTA - перезапуск процессора (низким уровнем);

BAS1,BAS2 - блокировка ПЗУ Бейсика на БК0010(-01) (высоким);

MON10 - сигнал отключения ПЗУ монитора БК0010(-01) (высоким), схема отключения реализована не на всех БК (зависит от завода-изготовителя - см. ниже);

MON11 (только для A16M) - сигнал отключения ПЗУ монитора БК11М (высоким), для отключения требуется доработка БК0011М;

RAM11 (только для А16М) - сигнал отключения верхней страницы ОЗУ (100000-140000) БК0011М (низким); при выставленном сигнале RAM11 потребление увеличивается на 30-50 мА.

Дополнительные возможности

На БК0010-01 последней версии, выпускаемой заводом “Экситон” с 1991 года, возможно программное отключение монитора-ПЗУ БК и подключение на его место вторых 8 Кбайт ДОЗУ, что дает возможность внесения изменений в монитор БК, максимально надежного перехвата обращений программ к магнитофону за счет изменения содержимого ячейки 100036, загрузки любых экранных шрифтов.

Доработка БК0010-01 предыдущих выпусков заключается в следующем: 1) отсоединить от схемы вывод B1 разъема МПИ и вывод 23 микросхемы 1801РЕ2-017; 2) в образовавшийся разрыв между выводом 23 и “общим” впаять резистор 1 кОм и соединить вывод 23 с контактом B1 МПИ.

По многочисленным просьбам в А16М предусмотрена возможность отключения монитора БК0011М, сигнал отключения выведен на контакт B6 разъема МПИ (как было предложено в статье в журнале “Персональный компьютер БК”). Контакт B6 в БК незадействован - для того, чтобы отключение монитора БК11М работало, необходимо сделать доработку, аналогичную предложенной для БК0010 - только B6 отделять от схемы не надо и номер микросхемы другой: DS17 (1801РЕ2-324 или 1801РР1).

Сигнал отключения верхней страницы ОЗУ БК0011М используется при обмене данными с дополнительной памятью контроллера.

Режимы подключения ОЗУ контроллера A16M

Название режима Start Std10 ОЗУ10 Basic Std11 ОЗУ11 ОЗУзз Hlt11
Код включения 160 60 120 20 140 40 100 20000
Откл. мон. БК10 + + + +
-/- мон. БК11М + + + +
-/- верх.ОЗУ-11М + + + +
170000-177777 ПЗУ - - - - - - 3W
160000-167777 ПЗУ ПЗУ ПЗУ - ПЗУ 2 ПЗУ 2
150000-157777 1 1 - - - 1 - 1
140000-147777 0 0 - - - 0 - 0
130000-137777 3 3 3 - - - 3 -
120000-127777 2 2 2 - - - 2 -
110000-117777 - - 1 1 - - 1 -
100000-107777 - - 0 0R - - 0R -

Обозначения: ПЗУ - ПЗУ объемом 10000; 0,1,2,3 - 4 сегмента ОЗУ по 10000 (по 4 Кб); R,W (0R,3W) - указанный сегмент доступен только по чтению или записи соответственно.

Назначение режимов:

  • Start - аппаратно подключается при вкл. питания и “длинном” перезапуске, перехватывается управление при запуске;
  • Std10 - стандартный для БК10 с доп. ОЗУ 16 Кб;
  • ОЗУ10 - для БК10: вместо монитора подкл. вторые 8 Кб ОЗУ; этот же режим используется на БК0011М для доступа к доп. ОЗУ контроллера (верхняя страница ОЗУ БК11М отключается);
  • ОЗУзз - то же, но нижние 10000 ОЗУ подключаются в режиме квази-ПЗУ (с запретом записи - отсюда “зз”), что позволяет обеспечить максимально надежную эмуляцию БК0010 с магнитофоном - работают даже савинские программы, стирающие экран до прерывания по вектору 4;
  • Basic - режим для подключения ПЗУ Бейсика БК0010-01;
  • Std11 - стандартный для БК0011М - ОЗУ отключено (при запуске подключается стандартный для каждой модели БК режим!);
  • ОЗУ11 - на место монитора БК11М и ПЗУ-160000 подключается ОЗУ, на МПИ выставляется сигнал отключения монитора БК11М;
  • Hlt11 - то же, плюс обеспечивается доступ к HALT-режиму.

Режимы включаются следующим образом:

      MOV     #6,@#177130     ;стробирующий код
      MOV     CODE,@#177130   ;код включения режима
      MOV     #0,@#177130     ;очистка

Для очистки в данной модели контроллера можно использовать и команду CLR, команда “MOV #0,...” приведена для совместимости с контроллерами с доп. ОЗУ 128 Кб и выше - там CLR использовать нельзя (MOV #0 и CLR - не одно и то же).

ПЗУ Бейсика БК0010-01 подключается традиционно установкой 3 разряда регистра 177130, правда при этом, как видите, режим работы ОЗУ не меняется. Регистры контроллера дисковода отключаются по чтению установкой 2 разряда того же регистра. (Т.е., для подключения Бейсика после соотв. подготовки используется команда MOV #14,@#177130; для работы в Бейсике есть готовая программа - BASIC16M).

Режимы подключения ОЗУ контроллера A16

Название режима Start Std ОЗУзз ОЗУрз - Std ОЗУзз ОЗУрз
Код включения 140 40 100 0 /150 /50 /110 /10
Откл. мон. БК10 + + + +
170000-177777 ПЗУ - - - BAS BAS BAS BAS
160000-167777 ПЗУ ПЗУ ПЗУ ПЗУ BAS BAS BAS BAS
150000-157777 1 1 - - BAS BAS BAS BAS
140000-147777 0 0 - - BAS BAS BAS BAS
130000-137777 3 3 3 3 BAS BAS BAS BAS
120000-127777 2 2 2 2 BAS BAS BAS BAS
110000-117777 - - 1 1 - - 1 1
100000-107777 - - 0R 0 - - 0R 0

Назначение первых четырех режимов совпадает с назначением аналогично названных режимов контроллера A16M (зз = запрет записи, рз = разрешение записи). Их включение тоже выполняется аналогично контроллеру A16M.

Установка 3-го разряда регистра 177130 автоматически увеличивает номер режима на 4 (т.е. перебрасывает в правую половину приведенной таблицы режимов), отключает регистры контроллера (177130,177132) по чтению и подключает ПЗУ с Бейсиком.

Нумерация версий контроллеров "АльтПро"

Номер версии доступен программно - он содержится в последнем слове ПЗУ (по адресу 167776). В старшем байте закодирован номер модели контроллера, в младшем - номер версии прошивки ПЗУ:

  • 174000 - A16;
  • 174400 - A16 + контроллер “винта” с доп. ОЗУ 4 Кб (170-177000);
  • 175000 - A16M;
  • 175400 - не использ.;
  • 176000 - 64 Кб
  • 176400 - 128 Кб
  • 177000 - 256 Кб
  • 177400 - 512 Кб

Для четырех последних: если младший байт > 0 - то это старая версия ПЗУ совмещенного контр. винчестера и дисковода SMK64, ее нужно заменить (ПЗУ установлено на панелях); если мл. байт имеет значение от 200 до 300 - это номер версии ПЗУ контроллера SMK с указанным объемом ОЗУ; если > 300 - это номер версии ПЗУ дисководного контроллера A..M с указанным старшим байтом объемом памяти.

 
proj/bk/bk-a16tech.txt · Последние изменения: 2006/10/31 22:01
 
Copyright (C) 1996-2009 Serge Vakulenko
serge@vak.ru