Радио 86РК

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Радио 86РК
Radio86RK.png
Тип Персональный компьютер
Выпущен 1986
Процессор КР580ИК80А либо КР580ВМ80А
Память ОЗУ: 16—32 КБ, ПЗУ: 2 КБ, с возможностью расширения
ОС RadioDOS, BOS
Предшественник Микро-80

«Радио-86РК» — советский самодельный 8-разрядный персональный компьютер, предназначенный для сборки опытными радиолюбителями (отсюда буквы РК в названии — радиолюбительский компьютер). Описание компьютера впервые было опубликовано в цикле статей в журнале «Радио» № 4-6/1986 г. Авторы статьи — Д. Горшков, Г. Зеленко, Ю. Озеров, С. Попов.

Сборка[править | править код]

Для сборки компьютера требовалось приобрести необходимые радиодетали, изготовить две печатные платы и смонтировать на них все компоненты. Кроме того, необходимо было с помощью ручного программатора записать прошивку в две микросхемы стираемого ПЗУ, а также изготовить блок питания, клавиатуру и корпус компьютера. Компьютер использовал в качестве монитора бытовой телевизор, подключаемый через видеовход или через радиотракт. Многие отечественные телевизоры не имели видеовхода и требовали установки специального модуля[1] или доработки схемы[2].

«Радио-86РК» не был первой конструкцией любительского компьютера. В начале 80-х годов журнал «Радио» уже публиковал описание любительского компьютера на процессоре КР580ИК80. Это был «Микро-80», состоящий из нескольких модулей и насчитывавший порядка 200 микросхем. Компьютер был сложен как в сборке, так и в наладке. Из-за своей сложности, а также из-за практически полного отсутствия цифровых микросхем в свободной продаже, «Микро-80» собрали лишь немногие энтузиасты. «Радио-86РК» частично совместим с «Микро-80», благодаря чему программы адаптировались как со старой модели на новую, так и обратно.

Схема «Радио-86РК» в варианте с ОЗУ 16К состояла всего из 29 микросхем, поэтому он был намного проще для повторения. Однако в розничной продаже микросхемы были дефицитным товаром и ограниченно доступны только в Москве и крупных городах СССР[3]. Наиболее дефицитной деталью была микросхема видеоконтроллера КР580ВГ75, которая в 1987 году выпускалась промышленностью ещё в ограниченном количестве. Известный радиолюбитель А.Долгий разработал заменявшую эту БИС дополнительную схему из 19 более доступных микросхем[4], которая через панельку БИС включалась в шину и по сути являлась текстовым адаптером со счётчиками и своей экранной памятью, используя из схемы РК только видеовыход.

Но это не стало полноценным решением, т.к такой вариант замены БИС ВГ75 позволял прогонять лишь корректные программы, т.е программы выводящие в экран только стандартными подпрограммами ПЗУ (а это лишь системные программы: бейсик, текстов редактор, ассемблер, отладчик, редактор дампа и форт). А 99% РК-игр, в том числе даже самые примитивные, используют прямую запись символов в экранный буфер, потому с такой аппаратурой не работали.

Поскольку в письмах, поступавших в редакцию журнала «Радио» после публикации цикла статей о «Радио-86РК», радиолюбители жаловались на трудность приобретения комплектующих, редакция журнала обратилась к промышленности с предложением начать выпуск наборов-радиоконструкторов[5]. Вскоре промышленность наладила выпуск наборов для сборки РК86, называвшихся "Электроника КР-01"... "Электроника КР-04". Однако их стоимость обычно составляла 395 рублей и выше. А к концу 80-х годов производство корпусов, клавиатур и плат для «Радио-86РК», а также торговля компонентами уже осуществлялись многочисленными кооперативами.

К началу 90-тых уже с десяток промышленных предприятий наладили производство готовых компьютеров РК86, хотя в ряде случаев выпускался не полный клон, а лишь частично совместимый более развитый вариант. Наиболее продвинутыми клонами РК86 стали "Апогей", "Партнёр" и "Электроника КР-04". За всё время общее число произведённых в стране РК-подобных компьютеров достигло несколько сотен тысяч.

Технические характеристики[править | править код]

Печатная плата «Радио-86РК»
  • Процессор: КР580ВМ80А) — советский клон i8080А, тактируемый клоком 1,78 МГц. Однако реальное быстродействие в базовом видеорежиме на 25 видимых строк соответствует такту CPU ~1.31 МГЦ. Торможение вызывается тем, что для работы видеочасти ПДП по запросам ВГ75 периодически останавливает работу процессора захватом шины. Причём это торможение меняется в зависимости от установленного числа строк. В режиме с 30-тью строками быстродействие падает ещё на 20%, а в псевдографическом режиме с 50-тью видимыми строками быстродействие падает до ~700 КГЦ эффективного такта.

Для ЭВМ с текстовым адаптером этого вполне достаточно, т.к критична только скорость вывода на экран, а в текстовой машине это происходит почти мгновенно, в сотни раз быстрее, чем в графической. Соответственно уменьшив константы торможения можно играть в большинство РК-игр при эффективном такте CPU всего в 250 КГЦ. В текстовом компьютере ZX80 быстродействие ~вдвое ниже, чем в РК86, но это не помешало для него создать несколько тысяч увлекательных и вполне динамичных игр.

Для экономии в РК используется общий генератор для процессора и видеоконтроллера. Так как для соблюдения ТВ-стандарта видеоконтроллер требует строго определённую частоту, тактовая частота процессора была занижена на 30% от максимально допустимой.

Впоследствии в ж.Радио было опубликовано описание простой доработки, что позволяет произвольно увеличивать частоту кварца и максимально поднять такт процессора. Таким способом реальное быстродействие (без наличия периферийных плат) можно увеличить с 1.3 МГЦ до 2.2 МГЦ. Но в случае подключения контроллера дисковода, такт приходится сознательно снижать, т.к на высокой частоте ОЗУ, применённые в РК без буферов, уже не тянут увеличенную нагрузку шины. [6]

  • ОЗУ: в оригинальном варианте — 16 КБ на микросхемах DRAM К565РУ3. Также могли применяться К581РУ4, К565РУ6 или отбраковка, «половинки» и «четвертинки» 565РУ5. Конструкция позволяла нарастить память до 32 КБ, напаяв дополнительную банку 565РУ3 «вторым этажом» (что часто делается в любительских ЭВМ), или заменив 565 РУ3 на РУ5. Соответственно, было опубликовано две версии ROM-BIOS — для объёма памяти 16 и 32 кб.
  • ПЗУ: 2 кб — стираемое ПЗУ К573РФ2 или К573РФ5, в котором размещен ROM-BIOS, часто называемый «Монитор», т.к кроме подпрограмм ввода/вывода в нём содержится RAM-монитор, выполняющий функции простой ОС. Код ПЗУ F800 предполагал его расширение до 4 кб (установкой второй РФ2 на F000, как сделано в Микроше), - в случае отсутствия директивы, монитор делал JMP F000. Видимо предполагалось, что сам пользователь установит на F000 пользовательское ПЗУ. В литературе встречалось только упоминание, что во втором ПЗУ может размещаться драйвер принтера (но т.к принтеров в 80-тые годы практически ни у кого не было, то этот вопрос не поднимался).
  • Видеоподсистема: текстовый режим на 64 символа в строке. Число видимых строк можно программно менять от 16 до 50. «Контроллер алфавитно-цифрового терминала» КР580ВГ75 работает совместно с «контроллером прямого доступа в память» КР580ВТ57. ВТ57 каждые 640 МКСЕК считывает из экранного ОЗУ 78 байтов текущей строки (пачками по 8 байт) и загружает их в ВГ75, для каждой пачки останавливая процессор на 18 МКСЕК. Периодическое считывание экранного ОЗУ попутно регенерирует динамическую память. Знакогенератор прошит в ПЗУ (К573РФ1, 1 КБ). Курсор формируется аппаратно КР580ВГ75. Он может отображаться тонкой чёрточкой, сплошным знакоместом или быть выключен.

Из-за случайного, но постоянного прерывания работы процессора, РК86 не может работать в реальном времени, т.е нельзя предсказать сколько маш.тактов будет прогоняться фрагмент кода. Для точного счёта времени, что необходимо при выводе на МГ-ленту, ПДП отключают из-за чего при вводе/выводе с МГ-ленты экран РК гаснет. Впоследствии в 1991 году была разработана и применена в многоблочных коммерческих защитах от копирования процедура ввода с МГ-ленты работающая без гашения экрана. При отключенном экране регенерацию динамической памяти приходится осуществлять программно (выполняя 64 POP каждые 2 МСЕК).

  • Клавиатура: контактная матрица 8*8 +3, обслуживаемая процессором через ППА КР580ВВ55. Позднее в ж.Радио 12.1991 году был опубликован совместимый вариант подключения качественной промышленной клавиатуры MS7007 с матрицей 11*8.
  • Звук: в качестве однобитового порта для выдачи звука использовался вывод INTE процессора (разрешение прерываний), переключаемый командами EI/DI. Поскольку прерывания в компьютере не используются, это не вызывает проблем. Однако из-за постоянных и случайных (т.е без чёткой периодичности) остановов процессора видеосхемой, программно формируемые звуковые тоны звучат не как чистый тон, а с хрипом. Чистый тон можно сформировать только отключив видео (т.е с погашенным экраном). Потому в более развитые РК-клоны ставили 580ВИ53, который давал 3 канала чистого тона.
  • Внешние устройства: в качестве устройства для хранения программ применялся бытовой кассетный магнитофон. Применённый формат записи отличается высокой надёжностью и обеспечивает ввод со скоростью ~150 байт в секунду. К порту пользователя ППА D14 могло подключаться внешнее устройство. Обычно туда подключался ROM-диск и/или символьный принтер, в качестве которого обычно использовался узел печати от АЦПУ Консул (настоящие принтеры появились в магазинах лишь в 1992). Уже в 90-тые годы для РК86 был опубликован эл.диск на статических ОЗУ и контроллер дисковода.
  • Существенным недостатком архитектуры РК86 считается нерациональное расходование адресного пространства на порты. Для упрощения схемы порты включены в адресное пространство памяти и им расточительно отдано целых 32 кб ячеек. Такая архитектура препятствует совместимому расширению памяти. В литературе описано несколько вариантов жёсткого (т.е некоммутируемого) расширения ОЗУ до 60 кб. При этом можно использовать CP/M и её компиляторы, но полностью утрачивается всякая совместимость с программами оригинального РК. Выходом может быть только более громоздкая коммутируемая архитектура, т.е введение двух режимов - один базовый с ОЗУ 32К и портами в середине памяти и режим расширенного ОЗУ (56 или 60 кб). Была предпринята попытка сделать такую доработку (вариант РК-Макси), но в силу сложности переделок успеха не имела.

Псевдо-графические возможности и доработка до цвета[править | править код]

Псевдографические возможности «Радио-86РК» реализуются с помощью 16-ти псевдографических символов, хранящихся в ПЗУ знакогенератора. Для этого матрица знакоместа 6*8 делится пополам по горизонтали и вертикали. Получившиеся участки 3×4 точки растра образуют в знакоместе 4 пикселя. Чтобы можно было выводить графику без вертикальных разрывов, игры, использующие псевдографику, обычно включают видеорежим с высотой знакоместа в 8 точек, т.к тогда исчезает межстрочный интервал между строками в 2 линии растра, существующий при стандартном знакоместе высотой в 10 точек. Число видимых строк при этом увеличивается до 30 (иногда используют 31).

При 30 строках графическое разрешение составляет 128*60. В таком режиме работают почти все игры с псевдографикой и граф.редактор (от Микроши). В графическом режиме на 30 строк вывод на экран символов стандартными подпрограммами ПЗУ невозможен (только прямой записью в экранный буфер). Потому оператор PLOT в бейсике поддерживает псевдографику в неудачном для псевдографики режиме в 25 строк с разрывом в 2 линии между строками.

ВГ75 в РК86 использует 7-ми битовый код, что даёт 128 символов (коды выше $80 используются для управления атрибутами и развёрткой). ВГ75 имеет 4 атрибута, что предназначены для переключения фонта, подчёркивания, подсветки и инверсии знакомест. Но разработчики РК эти возможности почему-то проигнорировали (хотя доп.микросхем это не требовало, а возможности расширило бы существенно). Возможно они решили, что столь сложное программирование не по зубам любителям или просто не знали о этих возможностях ВГ75.

Но это обстоятельство, позволило впоследствии разработать очень простую доработку добавляющую в РК цвет (ж.Радиолюбитель 04.1992)[1]. Эта идея впервые была применена в конце 80-тых в цветной версии компьютера Апогей. В статье упоминается, что более 40 РК-игр были оцвечены под данную схему и этот процесс оцвечивания несложный. Тем не менее на архивных сайтах можно найти очень небольшое число цветных игр и почти все они сделаны энтузиастами уже в 21-ом веке или адаптированы от Апогея.

Дополнительные видеорежимы[править | править код]

Простым изменением 16-ти графических символов фонта можно увеличить псевдографическое разрешение до 128*86 и 128*100, а применив альтернативный фонт и до 192*100. Это было сделано в производных от РК продвинутых клонах. Но в РК86 этого нет (и программ для этого нет), хотя ряд любителей экспериметально опробовали режимы псевдографики более высокого разрешения и на тематических форумах можно найти "демо" таких режимов.

Псевдографические режимы большего разрешения требуют применения альтернативного знакогенератора, в котором для псевдографики используется знакоместо с разложением не на 2*2, а на 2*3 или 3*2 пикселя. БИС ВГ75 позволяет изменять высоту знакоместа от 4 до 16 линий растра (задать можно высоту и в 1 линию, но знакоместо высотой менее 4-х линий не отображается, т.к 78 байт ПДП пересылает за 3.5 строчных периода). При наличии в альтернативном фонте 64-х псевдографических символов, можно получить разрешение 128×129 (матрица знакоместа 2*3, 43 строки высотой 6 линий) или 192×100 (матрица 3*2, 50 строк высотой 4 линии).

Эти видеорежимы возможны только при наличии альтернативного фонта, а этого в базовом РК86 нет и потому программами не используется. К сожалению, несмотря на множество статей в ж.Радио о изменении и расширении числа символов за счёт альтернативного фонта (и простоту доработки, даже не требующей деталей), никто из авторов публикаций в конце 80-тых не взял на себя смелость задать стандарт для программного переключения фонтов. Из-за этого, каждый любитель мог делать это по своему. В итоге нельзя было делать программы использующие альтернативный фонт и псевдографику более высокого разрешения, чем стандартные 128*60. Но такие фонты есть и такие режимы были использованы на промышленных более продвинутых клонах РК86.

Программное обеспечение[править | править код]

Скриншот игры «Клад»

Базовая конструкция «Радио-86РК» включала в себя только «Монитор» в ПЗУ, который содержал только драйверы периферии и загрузчик. Также «Монитор» поддерживал простейшие функции отладчика, позволял просматривать и видоизменять ячейки памяти, вводить и запускать программы. Журнал «Радио» публиковал дампы наиболее важных программ, однако ввод их в компьютер был весьма трудозатратным. Таким образом, все остальные программы необходимо было загружать с кассеты.

Системное программное обеспечение публиковалось в журнале «Радио» в виде шестнадцатеричных дампов и включало в себя:

Остальное программное обеспечение создавалось и распространялось на кассетах добровольцами, а с началом кооперативного движения в СССР — кооперативами. Имели хождение следующие программы:

Промышленное производство[править | править код]

Успех «Радио-86РК» привёл к появлению серийно выпускавшихся заводских моделей полностью или не полностью аппаратно совместимых с оригинальной конструкцией.

  • Альфа-БК
  • Импульс
  • Микроша
  • Электроника КР-01/02/03/04 (конструктор для самостоятельной сборки)
  • Партнер 01.01
  • Спектр-001
  • Апогей БК-01
  • Криста — выпускался заводом РИП в г. Муроме
  • УМПК-Р-32 — выпускался заводом Мукачевприбор
  • Согдиана-1
  • Mikro-88 — выпускался одним из рижских кооперативов, отличался от оригинала клавиатурой и небольшими изменениями в ПЗУ, плата компьютера не отличалась от оригинальной версии на 32 КБ.

См. также[править | править код]

Примечания[править | править код]

  1. Ельяшкевич С. А., Пескин А. Е. Устройство и ремонт цветных телевизоров. — «Стелс», 1993. — С. 475. — 496 с. — ISBN 5-85496-001-X.
  2. Савельев Е., Ворон Г. Цветной телевизор — монитор бытовой ПЭВМ // журнал «Радио». — 1991. — № 6. — ISSN 0033-765X.
  3. Как собирают компьютеры в «глубинке» // журнал «Радио». — 1991. — № 2. — ISSN 0033-765X.
  4. А. Долгий. Если нет КР580ВГ75... // журнал «Радио». — 1987. — № 5. — ISSN 0033-765X.
  5. «Твоя персональная ЭВМ» // журнал «Радио». — 1986. — № 9. — ISSN 0033-765X.
  6. «Радио-86РК — без проблем» // журнал «Радио». — 1991. — № 1. — ISSN 0033-765X.

Литература[править | править код]

  • Процессорный модуль микро-ЭВМ // журнал «Радио». — 1986. — № 4—7.
  • Различные статьи о Радио-86РК // журнал «Радио». — 8/1986-1/1998.

Ссылки[править | править код]