Радио-86РК

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

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

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

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

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

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

Но это не стало полноценным решением, т. к. такой вариант замены БИС ВГ75 позволял прогонять лишь корректные программы, т. е. программы, выводящие в экран только стандартными подпрограммами ПЗУ (а это лишь системные программы: Бейсик, текстовый редактор, ассемблер, отладчик, редактор дампа и Форт).

Поскольку в письмах, поступавших в редакцию журнала «Радио» после публикации цикла статей о «Радио-86РК», радиолюбители жаловались на трудность приобретения комплектующих, редакция журнала обратилась к промышленности с предложением начать выпуск наборов-радиоконструкторов[6]. Вскоре промышленность наладила выпуск наборов для сборки Радио-86РК, называвшихся «Электроника КР-01»… «Электроника КР-04». Наборы содержали плату компьютера, а также, в зависимости от модификации, блок питания и корпус. Стоимость набора составляла 395 рублей, в то время как промышленные аналоги стоили 500...650 рублей. К концу 1980-х годов производство корпусов, клавиатур и плат для «Радио-86РК», а также торговля комплектующими уже осуществлялись многочисленными кооперативами.

К концу 1980-х годов уже с десяток промышленных предприятий наладили производство готовых компьютеров Радио-86РК, хотя в ряде случаев выпускался не полный клон, а лишь частично совместимый более развитый вариант.

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

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

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

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

Впоследствии в журнале «Радио» было опубликовано описание простой доработки, что позволяет произвольно увеличивать частоту кварца и максимально поднять такт процессора. Таким способом реальное быстродействие можно увеличить с 1,3 МГц до 2,2 МГц. Но в случае подключения контроллера дисковода такт приходится сознательно снижать, т. к. на повышенной частоте ОЗУ, применённые в РК без буферов, уже не тянут увеличенную нагрузку шины.[7]

  • ОЗУ: в оригинальном варианте — 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 пользовательское ПЗУ. В литературе встречалось только упоминание, что во втором ПЗУ может размещаться драйвер принтера (но т. к. принтеров в 1980-е годы практически ни у кого не было, то этот вопрос не поднимался).
  • Видеоподсистема: текстовый режим на 64 символа в строке. Число символов в строке изменить нельзя, но число видимых текстовых строк можно программно менять от 16 до 51, соответственно изменяя высоту знакоместа так, чтобы число отображаемых линий растра оставалось в пределах 250-260. «Контроллер алфавитно-цифрового терминала» КР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. Позднее в журнале «Радио» был опубликован совместимый вариант подключения качественной промышленной клавиатуры MS7007 с матрицей 11 × 8.
  • Звук: в качестве однобитового порта для звука использовался вывод INTE процессора (разрешение прерываний), переключаемый командами EI/DI. Поскольку прерывания в компьютере не используются, это не вызывает проблем. Однако из-за постоянных и случайных (т. е. без чёткой периодичности) остановов процессора видеосхемой программно формируемые звуковые тоны звучат не как чистый тон, а с хрипом. Чистый тон можно сформировать, только отключив видео (т. е. с погашенным экраном). Потому в более развитые РК-клоны ставили 580ВИ53, который давал 3 канала чистого тона.
  • Внешние устройства: в качестве устройства для хранения программ применялся бытовой кассетный магнитофон. Применённый формат записи отличается высокой надёжностью и обеспечивает ввод со скоростью ~150 байт в секунду. К порту пользователя ППА D14 могло подключаться внешнее устройство. Обычно туда подключался ROM-диск и/или символьный принтер, в качестве которого обычно использовался узел печати от АЦПУ «Консул» (настоящие принтеры появились в магазинах лишь в 1992). Уже в 1990-е годы для Радио-86РК был опубликован электронный диск на статических ОЗУ и контроллер дисковода.

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

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

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

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

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

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

Простым изменением 16 графических символов в знакогенераторе можно увеличить псевдографическое разрешение до 128 × 86 или 128 × 102, а применив альтернативный знакогенератор, - и до 192 × 102. Это было сделано в производных от Радио-86РК продвинутых клонах. Но в Радио-86РК официально этого нет и программы, использующие дополнительный знакогенератор, созданные отдельными энтузиастами, не распространились. Уже в XXI веке ряд любителей экспериментально опробовал режимы псевдографики более высокого разрешения и на тематических форумах можно найти «демо» таких режимов [2].

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

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

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

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

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

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

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

Прикладное ПО включало в себя в основном следующие программы:

  • Инструментальные программы: макроассемблер и отладчики (отладчик Г. Штефана, экранный отладчик С. Дрогайцева, DDT и SID, адаптированные из CP/M)
  • ЯВУ: до десятка лишь слегка различающихся и несколько доработанных версий Бейсика, Форт, компиляторы Си и Паскаля. Из-за нехватки в компьютере объёма ОЗУ этими компиляторами можно транслировать лишь маленькие программы, но они позволили многим будущим профессиональным программистам сделать первое знакомство с программированием на ЯВУ.
  • Игры в кодах: Шахматы, Змейка, Xonix, Pac-Man, Лабиринт, Лестница, Жизнь, Тетрис, Морской бой, Диверсант, Скорпион, Стратегия, Цирк, Рикошет, Volkano, Krok, Land, LodeRuner, Digger, Mars, Barmen, BoulderDash, Into the Eagles Nest, Ladder, Stena и др. Не считая слегка изменённых дублей, игр было не более 200. Сейчас на архивных сайтах можно найти около 100 РК-игр.
  • Игры на Бейсике: Королевство Эйфория, Война с клингами, Питон, Сокобан, Минное поле, Бомбардировщик, Биржа, Кегельбан, Покер, Пика-фама, Ханойская башня, Гомоку и др. Около 30 игр.
  • Несколько десятков неигровых программ (текстовые и графредакторы, примитивные картотеки, словари, программы печати, инструментальные для разработки и радиолюбительского назначачения).

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

Промышленность выпускала и стопроцентные клоны «Радио-86РК», но в большем объёме серийно производились более развитые РК-производные компьютеры, которые имели лишь частичную совместимость, т.е. совместимость лишь для системных программ. Из-за разных адресов экрана и В/У игры были несовместимы, хотя из-за общности схемотехники и ROM-BIOS адаптация игр между РК-подобными компьютерами была несложна.

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

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

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

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

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

  • Процессорный модуль микро-ЭВМ // журнал «Радио». — 1986. — № 4—7.
  • Различные статьи о Радио-86РК // журнал «Радио». — 8/1986-1/1998.
  • Седов Е., Матвеев А. Контроллер накопителя на гибких магнитных дисках для «Радио-86РК» // журнал «Радио». — 1993, № 1, С. 13; № 2, С. 17.
  • Z. Stachniak. Red Clones: The Soviet Computer Hobby Movement of the 1980s (англ.) // IEEE Annals of the History of Computing. — January 2015. — Vol. 37, iss. 1. — P. 12–23. — ISSN 1058-6180. — doi:10.1109/MAHC.2015.11.

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