БК-0010
Группа: БК-0010-совместимый
Процессор: К1801ВМ1 16 бит 3 МГц
ОЗУ: 32 Кб
ПЗУ: ПЗУ 24 Кб (программа Монитор, плюс в БК0010 Фокал и тесты, а в БК0010.01 Бейсик)
Разъемы: Системная шина, параллельный порт (16+16 бит), магнитофон, НЧ видео 256x256, НЧ видео 512x256, блок питания
Видео: Контроллер К1801ВП1-037. 256x256 4 цвета (красный, синий, зеленый, черный). 512x256 2 цвета.
Звук: бипер
Внешние устройства в комплекте: МСТД с компьютером БК0010.01
Разработан: 1983 год
Содержание
О компьютере
Компьютер был разработан в 1983 году в Зеленограде (НИИ Точной технологии, сейчас ОАО «Ангстрем»). Прототип этого компьютера (Электроника НЦ-8010) был разработан в 1979 году по собственной инициативе работников предприятия. Но руководство отказывалось запускать его в серию.
С 1983-1992 годы было выпущено более 162000 компьютеров, из которых 44000 поступило в школы.
В этом компьютере использован 16-битный процессор К1801ВМ1. Этот процессор совместим по системе команд и системной шине с процессором LSI-11/03 (PDP11). Но это единственные общие черты БК0010 и PDP11. В компьютере установлено 32 Кб ОЗУ из которых 16 Кб отводится под видеопамять. В качестве накопителя используется магнитофон или внешний дисковод.
Компьютер может работать в локальной сети. Стандартный класс, включал в себя до 12 компьютеров БК0010 учеников объединенных в локальную сеть. И один компьютер ДВК-2МШ (с дисководами и 2-мя 6-канальными контроллерами локальной сети) в качестве сервера и компьютера преподавателя. В этом случае БК0010 мог загружать программы с сервера, а преподаватель мог удаленно контролировать работу ученика.
Модификации
Выпускалось несколько моделей этого компьютера: БК0010, БК0010Ш, БК0010-01, УИВ. При этом, под одним именем могли продаваться значительно отличающиеся компьютеры.
- Мог различаться цвет корпуса и клавиш.
- Могла быть установлена клавиатура: пленочная (плоские кнопки закрытые пленкой), мембранная или клавишная.
- ПЗУ могло содержать язык программирования Фокал, Бэйсик или оба одновременно (язык выбирался перемычкой).
- В комплекте с компьютером мог идти контроллер локальной сети.
- В компьютере мог быть отсек со сменными ПЗУ.
- В БК0010 (без -01) не было разъема разъема ЦТВ.
- В БК0010 (без -01) блокировка встроенного ПЗУ не была предусмотрена (поэтому дополнительное ОЗУ вместо ПЗУ) было не подключить.
Клавишная клавиатура удобна и надежна. "Удобна и надежна" за исключением дребезга контактов. Если медленно нажать клавишу до упора, то на экране вы увидите примерно 8 букв. Печатать на этом компьютере можно только резкими и легкими ударами пальцев по кнопкам.
Компьютер имел очень приятный и быстрый интерпретатор Бэйсика, похожий на MSX Basic. Бэйсик занимал 24 КБ ПЗУ, что было больше, чем в аналогичных компьютерах. Программы, написанные на Бэйсике не интерпретировались, а компилировались в "шитый код". То есть в программу на ассемблере, состоящую из команд "поместить в стек" и "вызвать подпрограмму".
Видеорежимы
Компьютер поддерживает четыре видео режима:
- 512x256 2 цвета.
- 512x64 2 цвета.
- 256x256 4 цвета.
- 256x64 4 цвета.
В режимах 64 пикселя по вертикали, графика/текст отображается в верхней четверти экрана. Нижние 75% экрана всегда черные. Этот видеорежим использует всего 4 Кбайт памяти, то есть для пользователя остается 28 Кб ОЗУ. (Видео режим высотой 256 пикселей использует 16 Кб памяти и пользователю остается только 16 Кб)
В 4-х цветных режимах используются цвета: черный, красный, синий, зеленый. Программной возможности изменить эти цвета нет.
Видео контроллер формировал сразу два видео сигнала 512x256/64 и 256x256/64. И каждый видео сигнал был подключен к собственному разъему на задней стенке компьютера. Пользователь должен был перетыкать вручную провод от монитора при использовании различных программ.
Пример изображения, если монитор подключен к выходу ЦТВ, когда требуется ТВ:
Если же подключить монитор к выходу ТВ, когда требуется ЦТВ, то синий и зеленый цвета будут отображаться в виде штриховки, одинаково для пользователя.
Переключить видеорежим (512x256/64 и 256x256/64) в Бейсике можно комбинацией клавиш АР2 ; (в эмуляторе CTRL ;)
Что бы подключить компьютер к телевизору через разъем SCART, на 16 вывод SCART требуется подать напряжение 5 Вольт (это включит режим RGB). Это напряжение можно взять с разъема ТВ.
Недоработка генератора случайных чисел
Если вы запустите эту программу, то увидите ровные полосы.
10 CLS 20 FOR I%=0% TO 32766% 30 PSET (RND(1)*256%, RND(1)*240%), RND(1)*3%+1% 40 NEXT
Системная шина
Шина данных и адреса была совмещена и обращение к любому устройству происходило в два этапа, сначала отправлялся адрес, а затем записывались/читались данные. Например, что бы подключить к этому компьютеру дополнительное ОЗУ / ПЗУ имеющее раздельные шины данных и адреса (обычную 27С256 например), требовалось установить 16-битный регистр для временного хранения адреса.
Команды монитора
M[адрес] | Загрузка программы с магнитофона. Адрес можно не указывать. После загрузки в ячейке 264 содержится адрес загрузки, а ячейке 266 длина. |
L[адрес] | Загрузка программы с линии. Адрес можно не указывать. После загрузки в ячейке 264 содержится адрес загрузки, а ячейке 266 длина. |
S[адрес] | Запуск программы. Адрес можно не указывать, тогда используется адрес из ячейки 264 |
P | Запуск пользовательского ПЗУ (аналогично команде S140000) |
F | Запуск ПЗУ с Фокалом / Бейсиком (аналогично команде S120000) |
T | Запуск ПЗУ с тестами (аналогично команде S160000). |
Выход из Бейсика в монитор по команде MO. Выход из Фокала в монитор по команде PASS MONITOR.
Карта памяти
Адрес | Модель БК0010 | Модель БК0010.01 | |
000000o-000777o | 0000h-01FFh | ОЗУ. Вектора прерываний, системные переменые и стек. | |
001000o-037777o | 0200h-3FFFh | ОЗУ пользователя | |
040000o-077777o | 4000h-7FFFh | ОЗУ экрана | |
010000o-117777o | 8000h-9FFFh | ПЗУ. Монитор и драйверы | |
120000o-137777o | A000h-BFFFh | ПЗУ Фокал | ПЗУ Бейсик |
140000o-157777o | C000h-DFFFh | - | ПЗУ Бейсик |
160000o-177577o | E000h-FEFFh | ПЗУ Тесты | - |
177600o-177777o | FF00h-FFFFh | Системные регистры |
Карта УВВ
Адрес | Описание | |
177660o | FFB0h | Регистр состояния клавиатуры.
|
177662o | FFB2h | Регистр данных клавиатуры.
|
177664o | FFB4h | Регистр смещения
|
177714o | FFCCh | Регистр программируемого порта ввода-вывода.
|
177716o | FFCEh | Регистр системного порта.
Чтение
Запись
|
Стандартный набор программ ввода-вывода
адрес | ЕМТ | описание | вход | выход |
Драйвер клавиатуры | ||||
100742o | ЕМТ 4 | инициализация драйвера клавиатуры | ||
101010o | ЕМТ 6 | чтение кода символа с клавиатуры | R0 - символ | |
101724o | ЕМТ 10 | чтение строки с клавиатуры | R1 - адрес буфера строки R2l - длина строки R2h - символ-ограничитель |
|
102004o | ЕМТ 12 | установка ключей клавиатуры | R0 - номер ключа (1-10) R1 - адрес текста ключа |
|
Драйвер ТВ-монитора | ||||
100140o | ЕМТ 14 | инициализация драйвера ТВ-монитора | ||
102234o | ЕМТ 16 | вывод символа и переключение режимов</tdr> | R0l - код | |
107050o | ЕМТ 20 | вывод строки символов | R1 - адрес строки символов R2l - длина строки R2h - символ-ограничитель |
|
107106o | ЕМТ 22 | запись символа в служебную строку | R0 - код символа (0-сброс строки) R1 - номер позиции в служебной строке |
|
107272o | ЕМТ 24 | установка положения курсора | R1 - координата х R2 - координата y |
|
107502o | ЕМТ 26 | не используется | ||
107612o | ЕМТ 30 | рисование точки | R0 - цвет R1 - координата х R2 - координата y |
|
107776o | ЕМТ 32 | рисование линии | R0 - цвет R1 - координата х R2 - координата y |
|
110310o | ЕМТ 34 | чтение слова состояния дисплея | R0 - слово состояния дисплея | |
Драйвер магнитофона | ||||
116076o | ЕМТ 36 | передача управления драйверу магнитофона | R1 - адрес блока параметров | |
Драйвер ТЛГ-канала | ||||
117462o | ЕМТ 40 | инициализация драйвера | R0 - номер скорости обмена | |
117474o | ЕМТ 42 | передача байта на линию | R0l - байт | |
117566o | ЕМТ 44 | прием байта с линии | R0l - байт | |
117704o | ЕМТ 46 | передача блока данных на линию | R1 - адрес R2 - длина в байтах |
|
117722o | ЕМТ 50 | приём блока данных с линии | R1 - адрес R2 - длина в байтах |
Фото
Ссылки
http://zx.pk.ru/forumdisplay.php?f=59 - Форум
http://archive.pdp-11.org.ru/ - Архив программ и документации для УК-НЦ / ДВК и БК0010(11)(11М)