Главная
Новости
Строительство
Ремонт
Дизайн и интерьер




26.09.2022


26.09.2022


26.09.2022


25.09.2022


25.09.2022





Яндекс.Метрика





БК (семейство компьютеров)

26.01.2021

БК (бытовой компьютер) — семейство советских 16-разрядных домашних и учебных ЭВМ, совместимых по системе команд и частично по архитектуре с СМ ЭВМ, PDP-11 и ДВК.

Разработка и производство

Семейство компьютеров БК-0010 было разработано в НИИ точной технологии НПО «Научный центр», г. Зеленоград. Главный конструктор от НИИТТ — Александр Н. Полосин, главный конструктор от завода «Экситон» — С. М. Косенков. В январе 1985 года разработчики машины опубликовали статью с описанием БК в журнале «Микропроцессорные средства и системы» (печатный орган Государственного Комитета СССР по науке и технике, номер 1 за 1985 год). Окончательная разработка БК была осуществлена в 1983 г. на заводе «Экситон», г. Павловский Посад, где и было налажено первое серийное производство в 1985 году. Впоследствии опытные партии модели БК-0010 выпускались на Казанском заводе радиокомпонентов (Завод № 7) и «Нуклон» в г. Шяуляй (Литва). Последующие модели серийно производились также на заводах «Завод № 7», г. Казань (только БК-0010-01 с жёсткой клавиатурой), «Экситон», г. Павловский Посад, «Нуклон» в г. Шяуляй (Литва) (только модель БК-0010-01), в Армении (только модель БК-0010-01), а также на Заводе полупроводниковых приборов в Йошкар-Оле (только модель БК-0011). Полный спектр моделей БК производился только на заводе «Экситон».

Всего было произведено более 162 тысяч БК-0010/0011; завод «Экситон» в 1985—1992 годы изготовил около 125 тысяч машин: около 78 тысяч для розничной продажи и более 44 тысяч в составе школьных классов. Последние произведённые экземпляры БК относятся к 1993 году.

Цены на компьютеры составляли:

  • БК-0010: 600 рублей (1985—1988 год).
  • БК-0010.01: 650 рублей, 750 рублей (1990 год).

Цены на БК-0010-01 были сопоставимы с ценой цветного телевизора или хорошего музыкального центра и были в 2—3 раза выше заработной платы инженера.

Технические характеристики и особенности

  • Процессор: К1801ВМ1 (совместим по системе команд с LSI-11/03 из семейства PDP-11) на тактовой частоте 3 МГц (в БК-0011/БК-0011М повышена до 4 МГц)
  • Оперативная память: первые 32 КБ адресного пространства, из которых 15,5 КБ отведено под программы и данные, 512 байт под стек и системные регистры, и ещё 16 КБ — под видеопамять. При нажатии определённой комбинации клавиш или выдаче специальной команды можно было увеличить объём оперативной памяти для программ с 15,5 КБ до 27,5 КБ за счёт уменьшения видеопамяти до 4 КБ. При этом на экране отображалось всего 4 строки текста. В языке «Фокал» БК-0010 командой «V» можно узнать количество свободной памяти (после включения отображает «СВОБОДНО 35776 Б. ОЗУ» — это в восьмеричной системе счисления, в десятичной — 15358 байт).
  • Постоянная память: последние 32 КБ адресного пространства. Из них 8 КБ отведено под драйверы клавиатуры, дисплея и магнитофона (фактически аналог BIOS) и мониторную систему (простой вариант операционной системы с командной строкой); небольшой диапазон адресов в конце адресного пространства процессора отводится под системные регистры, управляющие работой процессора, а также под порты ввода-вывода, такие как магнитофон и параллельный интерфейс (в БК нет отдельных команд для портов, как в PC; вместо этого порты встраиваются в адресное пространство процессора; за ними закреплены ячейки с фиксированным адресом);
  • Клавиатура: 92 клавиши; контроллер К1801ВП1-014
  • Блок питания — внешний трансформаторный

Стандартным устройством хранения данных служил бытовой кассетный магнитофон с функцией управления двигателем, или без неё. В компьютере имеется реле для запуска/остановки двигателя магнитофона.

В качестве дисплея использовался бытовой чёрно-белый или цветной телевизор (после доработки) или, реже, специальный монитор.

Устройство отображения

  • Особенность устройства отображения, собранного на контроллере К1801ВП1-037, заключается в наличии только графического режима. Текстовый режим отсутствует; буквы при выводе преобразуются в их графические изображения и выводятся как картинка.
  • Графический режим только один (если не считать режим сокращения графического ОЗУ в пользу памяти программ), с двумя способами вывода на экран телевизора. Для программ нет разницы, каким из них картинка выводится на экран — организация видеопамяти не меняется. Разницу ощущает лишь пользователь, смотрящий на экран. Компьютер имеет два разъёма для подключения к телевизору: чёрно-белый (телевизионный сигнал с яркостной составляющей) и цветной (синхронизация + RGB). Способ вывода на экран определяется только тем, к какому из разъёмов подключён телевизор.
  • При первом способе каждый бит ОЗУ видеопамяти кодирует ровно одну точку на экране. Соответственно, точка имеет два состояния: чёрное и белое. Полутона достигаются дроблением изображения (дизеринг). Каждое машинное слово кодирует 16 точек в строке, начиная с левого верхнего угла экрана. Предполагается съём видеосигнала с чёрно-белого разъёма. Если вывести сигнал через цветной разъём, то на экране будет читаемая, но неудобная для восприятия цветовая «каша».
  • При втором способе та же самая информация графического ОЗУ имеет иное значение: каждая точка кодируется двумя соседними битами. Соответственно, возможно 4 цвета: чёрный, красный, зелёный, синий (базовые цвета); белый цвет отсутствует. Каждое машинное слово кодирует 8 соседних точек в строке. Предполагается съём видеосигнала через цветной разъём. Если вывести сигнал через чёрно белый разъём, то на экране будет чёрно-белое изображение с яркостью, никак не соответствующей яркости реальных цветов.
  • При чёрно-белом способе вывода можно отобразить 512 × 256 точек, при цветном — 256 × 256.
  • Драйвер дисплея может выводить в графическое ОЗУ текст двумя способами, адаптированными под два способа вывода информации графического ОЗУ на экран. При первом способе матрица символа из ПЗУ выводится так, что каждая её точка попадает ровно в один бит ячейки графического ОЗУ (64 символа в строке, оптимизация под чёрно-белый режим). При втором способе каждый бит матрицы транслируется в два соседних бита памяти (32 символа в строке, оптимизация под цветной режим, учитывается информация о текущем цвете букв). Режимы переключаются с клавиатуры или передачей специального кода драйверу дисплея.
  • В таблице матриц символов изображение символа с кодом 36, которое в кодировке ASCII соответствует символу доллара ($), заменено на изображение общего знака денежной единицы (¤).
  • Чёрно-белый режим отображения

  • Чёрно-белый режим отображения через цветной разъём

  • Цветной режим отображения. Горизонтальное разрешение снижено вдвое по сравнению с выводом через чёрно-белый разъём

Клавиатура

  • Контроллер клавиатуры не воспринимает одновременного нажатия нескольких клавиш. Каждое нажатие клавиши сопровождается коротким звуковым сигналом, аналогичным команде «ВЕЕР» во встроенном языке Бейсик.
  • Не все клавиши при нажатии передают коды в компьютер. Некоторые из них являются чистыми коммутаторами электрических сигналов на входе микросхем: ⇓, АР2, ЗАГЛ, СТР, СУ. Клавиша СТОП в компьютере «Электроника МС 0513» аппаратно вызывает немаскируемое прерывание.
  • Штатный режим ввода — ввод заглавных букв. Вводить строчные можно, удерживая клавишу ⇓, которую условно можно назвать «Shift наоборот», или включением соответствующего режима клавишами ЗАГЛ и СТР.
  • В драйвере клавиатуры не реализован автоповтор нажатия клавиши при её удержании. Штатная функция автоповтора последнего введённого символа достигается нажатием и удержанием клавиши ПОВТ.
  • Компьютер имеет встроенный пьезокерамический динамик. Драйвер клавиатуры БК, размещённый в ПЗУ, при нажатии каждой клавиши генерирует звук, напоминающий английское слово «quick».

Модели

Предположительно, модели БК нумеровались в двоичной системе счисления: 0010 (2), 0011 (3), 0100 (4).

Предшественницей БК, по-видимому, была «Электроника НЦ-8010», разработанная в НИИТТ в 1981 году. Эта модель на основе двух процессоров К1801ВЕ1 так и не была запущена в производство.

БК-0010

Базовая модель с мембранной клавиатурой и интерпретатором языка Фокал в ПЗУ.

Конструктив БК-0010 не предусматривал расширения ОЗУ. Периферийные устройства (принтер, НГМД с контроллером) существовали, но в продажу поступали редко и были дефицитными.

Мембранная клавиатура представляла из себя печатную плату с установленными на ней 92 переключателями ПКН-150, закрытую цветным плёночным шильдом. На шильде были нанесены обозначения клавиш и функциональных зон. Предполагалась возможность замены шильда в соответствии со спецификой используемого программного обеспечения.

БК-0010.01

Также называлась «Электроника МС 0510».

Вариант БК-0010 с механической клавишной клавиатурой МС7008 вместо плёночной и языком BASIC-86 («Бейсик Вильнюс») в ПЗУ. Интерпретатор языка Фокал перенесён в ПЗУ специального подключаемого модуля МСТД (мониторная система тестирования и диагностики). Этот модуль, помимо запуска тестовых программ, позволяет вводить программы в кодах и работать с магнитофоном.

В целях экономии памяти, тексты ошибок Вильнюсского Бейсика не были зашиты в ПЗУ, поэтому ошибки выдаются не текстом, а кодами, например, «ОШИБКА 4». Коды ошибок Вильнюсского бейсика совпадают с кодами ошибок MSX BASIC.

Компьютер получил механическую 74-клавишную клавиатуру. Хотя она была и более удобна, чем плёночная, кнопки этой клавиатуры были достаточно тугими и подверженными дребезгу. Из конструкции исключена крышка отсека ПЗУ и панелька для подключения дополнительной микросхемы.

БК-0010Ш и БК-0010.01Ш

См. также: Комплект учебной вычислительной техники

«Школьные» модификации, дополнительно комплектовались блоком ИРПС для соединения в комплекс КУВТ-86, состоящий из ДВК-2МШ или ДВК-3 в качестве файлового сервера и до двенадцати БК-0010Ш. ПЗУ содержало Фокал (пpошивка 084, поддеpживающая пpеpывания от ИРПС 3608, 3648). Отличительный пpизнак 084 пpошивки — пpи отключенном ИРПС — в служебной стpоке надпись ТЛГ ОТКЛЮЧЕH. Эта пpошивка позже ставилась куда угодно, даже в БК0010-01 в блок МСТД, где ИРПС было пpосто некуда втыкать.

БК-0011

Выпускалась с конца 1989 года. Отличия от БК-0010:

  • процессор стал работать на частоте 4 МГц
  • больший объём оперативной памяти — 128 КБ, постраничная организация памяти, две страницы памяти можно было поочерёдно отображать на экран, что обеспечивало мгновенное обновление информации
  • цветной экран по-прежнему 4-цветный, но появилась возможность включить одну из 16 экранных палитр, но палитры № 9 и № 10 были полностью одинаковыми, а палитры № 5, 6, 7 и 8 содержали только по два цвета, уже имевшихся в других палитрах — таким образом, действительно полезных палитр было 11.
  • контроллер дисковода стал входить в стандартную поставку
  • на разъёмы МПИ и УП выведено больше сигналов
  • возвращена панелька для сменного ПЗУ и крышка соответствующего отсека.

Из-за замены стандартной PDP-11-совместимой мониторной системы на собственную, на данной модели загрузка программ осуществляется путём ввода команды L, а запуск — вводом адреса программы.

БК-0011M

Исправленная версия БК-0011. Также называлась «Электроника МС 0513».

Под БК-11 обычно понимается БК-0011М, так как БК-0011 было выпущено немного. Одно из заметных исправлений — на БК-0011 не работал звук в программах, написанных для БК-0010; в БК-0011М эта ошибка была исправлена.

БК-0100

Эта машина в корпусе от УКНЦ, по всей видимости, не пошедшая в серию, упомянута в статье А. Люкшина «Тернистый путь БК в наш дом» и С. М. Косенкова «Новые модели семейства БК». В неё, помимо 16-разрядного процессора К1801ВМ3, предполагалось ставить второй процессор — 8-разрядный КР580ВМ80А либо 16-разрядный (x86-совместимый) КР1810ВМ86, для совместимости с имеющимися наработками, предназначенными для этих процессоров.

Модули расширения

Параллельный 16-разрядный программируемый порт ввода-вывода, выведенный на разъём СНП-58 с обозначением «УП», позволял подключать принтер и другие периферийные устройства по интерфейсу ИРПР. Также в компьютере реализован последовательный интерфейс ИРПС, который при минимальной доработке компьютера выводился на тот же разъём программируемого порта ввода-вывода.

Системная шина частично реализует интерфейс МПИ, выведенный наружу через другой разъём СНП-58. Фактически это аналог разъёма расширения на материнских платах современных ПК.

Выпускалось несколько стандартных заводских модулей, подключаемых к разъёму расширения МПИ:

  • МСТД (Мониторная Система Тестовой Диагностики) — блок для БК 0010-01, в ПЗУ блока размещался Фокал и диагностические тесты (децимальный номер 3.069.007, прошивка № 018 и № 019); также существуют МСТД для БК-0011 (децимальный номер 3.069.009, прошивка № 203) и БК-0011М (децимальный номер 3.069.010, прошивка № 330), содержащие только тесты.
  • ИРПС — блок последовательного канала для сети КУВТ-86 с топологией «звезда» (на основе К1801ВП1-035; децимальный номер 2.165.001 отсутствовал на корпусе, но был указан на коробке)
  • КЛС — контроллер локальной сети кольцевой топологии, токовая петля 60мА, скорость 57600 бод, сетевой адрес станции в диапазоне 0-255 (на базе К1801ВП1-065, децимальный номер 2.165.002)
  • КМК — Контроллер МоноКанала для связи до 30 штук БК в школьную сеть «ШКОЛОК-0011» aka «КУВТ УКНЦ-01» с топологией «общая шина», скорость 57600 бод, сетевой адрес станции в диапазоне 1-31 (децимальные номера 2.165.004 — «Блок КМК», 2.165.006 и 2.165.010 — «Блок КМК10», 2.165.007 — «Блок КМК11»).
  • КНГМД — интерфейс дисковода (децимальный номер 3.059.001 для БК-0011, ПЗУ № 253, 3.059.014 для БК-0011М, ПЗУ № 326). Штатные блоки КНГМД содержали только контроллер дисковода и ПЗУ драйвера дисковода (без ОЗУ), поэтому не годились для БК-0010 и требовали доработки; также продавались контроллеры КНГМД «Альтек» с 16КБ дополнительного ОЗУ.
  • КРМП — Контроллер Рабочего Места Преподавателя, подключение дисковода и школьной сети КНГМД+КМК (децимальный номер блока 3.059.007 для БК-0011, 3.059.015 для БК-0011М).
  • «Менестрель» — музыкальная приставка на основе двух КР580ВИ53
  • Блок дополнительного ОЗУ 32К Саратовского завода «Эридан» (КР565РУ6 x16 + КР1801ВП1-030 + КР1801ВП1-034)

К разъёму УП подключались:

  • Блок КПУ с интерфейсом ИРПР — подключение принтера («ПУ»); децимальный номер 3.059.003.
  • Блок КМ — подключение принтера («ПУ») и мыши «Марсианка» («УВК»); децимальный номер 3.059.016.
  • Блок КМ10 с подключением только к «УВК» (без подключения к «ПУ»); децимальный номер 3.059.017.
  • Манипулятор игровой «Электроника»

Кроме того, силами энтузиастов и кооперативами выпускались блоки расширения, подключалась периферия:

  • Альтек, АльтПро, «самарский» КНЖМД, «Опток» — контроллеры дисковода и винчестера
  • Блоки дополнительного ОЗУ
  • Приставка «Телефонный секретарь» с АОН
  • Covox (моно и стерео)
  • Sound-Drive
  • Трёхканальный генератор звука AY-3-8910
  • Модем
  • Блок АЦП/ЦАП для «УП», индекс БИКТ.469552.001.
  • Джойстики, световой пистолет
  • Программаторы ПЗУ

Программное обеспечение

В поставке БК-0010 был минимальный набор программ — кассета с примерами на Фокале или Бейсике, игра Тетрис и тесты оборудования. Позже для него был также адаптирован простой Бейсик с ДВК (он загружался с магнитофона в ОЗУ, занимая около 8 Кбайт и оставляя для программ порядка 7 Кбайт), а с 1985 года упрощенную (не полностью соответствующую стандарту MSX) версию «вильнюсского Бейсика» поместили в основное ПЗУ. Однако приобрести профессионально написанное ПО для БК изначально было негде, даже при желании завод-изготовитель не мог распространять ПО самостоятельно из-за отсутствия правовой базы. Основной объём программного обеспечения создавался самими пользователями — с нуля, либо путём адаптации с других ЭВМ близкой архитектуры, например с ДВК. Распространялись программы путём обмена на встречах энтузиастов — обычно на радиорынках. Рынок ПО для БК начал формироваться лишь к концу 80-х, с появлением кооперативов, однако для них более выгодным было тиражирование иностранных программ (в основном игр) для ZX-Spectrum. Тем не менее, из ПК оригинальной, разработанной в СССР архитектуры, БК отличался наиболее богатым набором программного обеспечения, включая:

  • Операционные системы
  • Систему «Рига» со встроенным языком программирования «Т-язык» (интерпретатор) для создания интерактивных приложений учебного и игрового характера
  • Расширения встроенного Фокала (FOCOD, XFOCAL, ФОНД, МИФ, СФМ2)
  • Встроенный Бейсик Вильнюс, размещенный вместо Фокала
  • Языки программирования высокого уровня: несколько реализаций Форта, вариант Си, адаптированный Бейсик ДВК, Т-язык, языки поставки RT-11
  • Средства программирования на низком уровне: ассемблеры (АСМ, МИКРО), дизассемблеры (АНТИАС, КОДЫ, КОД24, REASS, ASC11, MESSA, ДИЗАКС), отладчики (ГРОТ, OTL, PROT, MIRAGE)
  • Игры: более 800 названий, в том числе неавторизованные порты известных игр с других платформ: Arkanoid (1990), Bolder Dash, Digger (1990), Military Marathon (1987), Monkey Island, UFO («НЛО: Враг неизвестен», 1998) и UFO 2, Prince of Persia, Lode Runner и др.
  • Демонстрационные программы
  • Текстовые редакторы (БЛОКНОТ, ЭКРЕД, EDASP)
  • Графические редакторы (ГРЕДО, ГРЕД3)
  • Музыкальные редакторы (КЛАВЕСИН (три дорожки), МЕЛОМАН, MUSIC), синтезаторы речи, цветомузыка — ЦМУ (используя магнитофонный разъём))
  • Справочники и словари
  • Программы для печати на матричных принтерах
  • Программы для инженерных расчётов
  • Учебные программы

Аппаратные доработки

Несколько несложных полезных доработок делалось, как правило, самими пользователями.

  • Кнопка сброса. Некоторые программы часто зависали, не все игры имели правильно работающую функцию выхода. Без кнопки сброса перезагрузить компьютер можно было выключением и включением питания, но это нередко приводило к преждевременному износу выключателя на блоке питания и к тому же очищало ОЗУ.
  • Переключатель паузы. Переключатель аппаратно приостанавливал выполнение инструкций процессором. Это было удобно для временной приостановки игр, не имеющих встроенной функции паузы. К сожалению, отдельные игры не возвращались после этого к работе корректно, так как программируемый аппаратный таймер в компьютере продолжал работать даже когда выполнение программы центральным процессором было заморожено.
  • Переключатель тактовой частоты процессора (переключатель «турбо»). Позволял изменить тактовую частоту со стандартной 3 МГц (в серии БК-0010*) на 4 либо 6 МГц, или со стандартной 4 МГц (в серии БК-0011*) на 3 либо 6 МГц. Не все экземпляры процессоров надёжно работали на частоте 6 МГц; пригодность каждого определялась опытным путём. Изменение тактовой частоты изменяло скорость игрового процесса в динамичных играх. Переключатель частоты обычно ставился вместе с переключателем паузы, так как в простейшей схеме переключателя частоты неизбежный дребезг контактов механического переключателя искажал форму тактового синхросигнала и мог привести к зависанию программы в результате сбоя процессора, если процессор не был остановлен на время переключения.
  • Выключатель звука, либо плавный регулятор громкости встроенного пьезоэлектрического динамика. Одновременно в корпус мог быть установлен более громкий динамик.

БК-0011M-01

Непринципиальная модернизация версии БК-0011М, выполненная в 2013 году неформальным объединением инженеров «Пульсар»[значимость факта?]. Основные изменения:

  • 16 микросхем ОЗУ КР565РУ5 заменены одной DRAM TC511664BJ-80 / TC511664BJ-60
  • на освободившееся место по «самарской» схеме интегрирован музыкальный сопроцессор AY-3-8910 / 8912
  • выполнена разводка переключателя тактовой частоты 4/6 МГц для любителей оверклокинга

Эмуляция

В настоящее время с компьютером БК можно ознакомиться с помощью одного из программных эмуляторов БК для современных компьютеров:

  • Эмулятор Алексея Савельева (DOS, Windows 95/98/ME), старый сайт, архивная версия сайта
  • Эмулятор Сергея Камнева, присутствуют исходные коды на ассемблере (DOS)
  • Эмулятор Леонида Брухиса, с открытым исходным кодом (Linux)
  • Эмулятор Юрия Калмыкова, с открытым исходным кодом (Windows); Доработанный эмулятор Юрия Калмыкова 2012 года (Windows)
  • Эмулятор Андрея Грабовец (Windows), старый сайт
  • Эмулятор 3000 Евгения Троицкого (Windows) — среди прочих машин, эмулирует и БК-0010/0011
  • Эмулятор «Башкирия-2М» Дмитрия Целикова (Windows) — среди прочих машин, эмулирует и БК-0010/0011
  • Эмулятор ASV Corp. (Mac OS X)
  • Эмулятор Александра Тишина (Java)
  • Мультисистемный эмулятор MAME содержит драйвер bk0010
  • Эмулятор BkEmu, с открытым исходным кодом (Android)

Существовал эмулятор БК для компьютера УКНЦ, что позволяло запускать на УКНЦ ряд программ и игр.