Радио 86РК — различия между версиями

Материал из ZX-PK.ru
Перейти к: навигация, поиск
м (Ссылки)
 
(не показано 9 промежуточных версий 3 участников)
Строка 1: Строка 1:
 +
[[Category:Советский компьютер]]
 
'''Группа:''' Радио 86РК-совместимый<br>
 
'''Группа:''' Радио 86РК-совместимый<br>
 
'''Процессор:''' [[КР580ВМ80А]] (клон [[8080]])<br>
 
'''Процессор:''' [[КР580ВМ80А]] (клон [[8080]])<br>
Строка 6: Строка 7:
 
'''Видео:''' [[КР580ВГ75]]+[[КР580ВТ57]] Черно белый текстовый режим от 64x25 до 64x64. Или [[Псевдографический режим 128x62 компьютеров РК86|псевдографический 128x62]]. Подключается в телевизору.<br>
 
'''Видео:''' [[КР580ВГ75]]+[[КР580ВТ57]] Черно белый текстовый режим от 64x25 до 64x64. Или [[Псевдографический режим 128x62 компьютеров РК86|псевдографический 128x62]]. Подключается в телевизору.<br>
 
'''Звук:''' [[бипер]]<br>
 
'''Звук:''' [[бипер]]<br>
 +
'''Разработан:''' 1986 год<br>
  
 
==О компьютере==
 
==О компьютере==
Строка 27: Строка 29:
 
==Команды монитора==
 
==Команды монитора==
  
<table border="1" style="border-collapse: collapse">
+
<table border="1" style="border-collapse: collapse" cellpadding=2>
 
<tr><td>D[начало],[конец]</td><td>Выводит содержимое области памяти в шестнадцатеричном виде.</td></tr>
 
<tr><td>D[начало],[конец]</td><td>Выводит содержимое области памяти в шестнадцатеричном виде.</td></tr>
 
<tr><td>L[начало],[конец]</td><td>Выводит содержимое области памяти в текстовом виде.</td></tr>
 
<tr><td>L[начало],[конец]</td><td>Выводит содержимое области памяти в текстовом виде.</td></tr>
Строка 47: Строка 49:
 
<table border="1" style="border-collapse: collapse" cellpadding=2>
 
<table border="1" style="border-collapse: collapse" cellpadding=2>
 
<tr><td><b>16 Кб ОЗУ</b></td><td><b>32 Кб ОЗУ</b></td><td><b>Описание</b></td></tr>
 
<tr><td><b>16 Кб ОЗУ</b></td><td><b>32 Кб ОЗУ</b></td><td><b>Описание</b></td></tr>
<tr><td>0000 - 3500</td><td>0000 - 7600</td><td>ОЗУ Пользователя</td></tr>
+
<tr><td>0000h - 34FFh</td><td>0000h - 75FFh</td><td>ОЗУ Пользователя</td></tr>
<tr><td>3500 - 3600</td><td>7600 - 76D0</td><td>ОЗУ. Переменные монитора</td></tr>
+
<tr><td>3500h - 35CFh</td><td>7600h - 76CFh</td><td>ОЗУ. Переменные монитора</td></tr>
<tr><td>35D0 - 4000</td><td>76D0 - 8000</td><td>ОЗУ. Видеопамять (может быть программно перемещена)</td></tr>
+
<tr><td>35D0h - 3FFFh</td><td>76D0h - 7FFFh</td><td>ОЗУ. Видеопамять (может быть программно перемещена)</td></tr>
<tr><td align=center colspan=2>8000 - 9FFF</td><td>Контроллер клавиатуры ([[КР580ВВ55]])</td></tr>
+
<tr><td align=center colspan=2>8000h - 9FFFh</td><td>Контроллер клавиатуры ([[КР580ВВ55]])</td></tr>
<tr><td align=center colspan=2>A000 - BFFF</td><td>Универсальный параллельный порт ([[КР580ВВ55]])</td></tr>
+
<tr><td align=center colspan=2>A000h - BFFFh</td><td>Универсальный параллельный порт ([[КР580ВВ55]])</td></tr>
<tr><td align=center colspan=2>С000 - DFFF</td><td>Видеоконтроллер ([[КР580ВГ75]])</td></tr>
+
<tr><td align=center colspan=2>С000h - DFFFh</td><td>Видеоконтроллер ([[КР580ВГ75]])</td></tr>
<tr><td align=center colspan=2>E000 - FFFF</td><td>Контроллер ПДП ([[КР580ВТ57]]). Только запись</td></tr>
+
<tr><td align=center colspan=2>E000h - FFFFh</td><td>Контроллер ПДП ([[КР580ВТ57]]). Только запись</td></tr>
<tr><td align=center colspan=2>F800 - FFFF</td><td>ПЗУ. Только чтение</td></tr>
+
<tr><td align=center colspan=2>F800h - FFFFh</td><td>ПЗУ. Только чтение</td></tr>
 
</table>
 
</table>
  
 
(Порты ввода-вывода обращаются к этой же памяти)
 
(Порты ввода-вывода обращаются к этой же памяти)
  
==Стандантный набор программ ввода-вывода==
+
==Стандартный набор программ ввода-вывода==
  
 
<table border=1 style='border-collapse:collapse' cellpadding=2>
 
<table border=1 style='border-collapse:collapse' cellpadding=2>
 
<tr><td><b>Адрес</b></td><td><b>Описание</b></td><td><b>Входные данные</b></td><td><b>Выходные данные</b></td></tr>
 
<tr><td><b>Адрес</b></td><td><b>Описание</b></td><td><b>Входные данные</b></td><td><b>Выходные данные</b></td></tr>
<tr><td>F803</td><td>Ввод символа с клавиатуры с ожиданием</td><td>&nbsp;</td><td>A - код символа</td></tr>
+
<tr><td>F803h</td><td>Ввод символа с клавиатуры с ожиданием</td><td>&nbsp;</td><td>A - код символа</td></tr>
<tr><td>F806</td><td>Чтение байта с магнитофона</td><td>А=FF - с поиском синхробайта<br>A=08 - без поиска синхробайта</td><td>A - считанный байт</td></tr>
+
<tr><td>F806h</td><td>Чтение байта с магнитофона</td><td>А=FF - с поиском синхробайта<br>A=08 - без поиска синхробайта</td><td>A - считанный байт</td></tr>
<tr><td>F809</td><td>Вывод символа на экран</td><td>С - символ</td><td>&nbsp;</td></tr>
+
<tr><td>F809h</td><td>Вывод символа на экран</td><td>С - символ</td><td>&nbsp;</td></tr>
<tr><td>F80С</td><td>Запись байта на магнитофон</td><td>C - байт</td><td>&nbsp;</td></tr>
+
<tr><td>F80Сh</td><td>Запись байта на магнитофон</td><td>C - байт</td><td>&nbsp;</td></tr>
<tr><td>F80F</td><td>Не используется</td><td>&nbsp;</td><td>&nbsp;</td></tr>
+
<tr><td>F80Fh</td><td>Не используется</td><td>&nbsp;</td><td>&nbsp;</td></tr>
<tr><td>F812</td><td>Опрос состояния клавиатуры 1</td><td>&nbsp;</td><td>A=FF - ни одна клавиша не нажата<br>A<>FF - нажата</td></tr>
+
<tr><td>F812h</td><td>Опрос состояния клавиатуры 1</td><td>&nbsp;</td><td>A=FF - ни одна клавиша не нажата<br>A<>FF - нажата</td></tr>
<tr><td>F815</td><td>Вывод на экран 16-ричного числа</td><td>A - число</td><td>&nbsp;</td></tr>
+
<tr><td>F815h</td><td>Вывод на экран 16-ричного числа</td><td>A - число</td><td>&nbsp;</td></tr>
<tr><td>F818</td><td>Вывод на экран текстовой строки</td><td>HL - адрес строки (код 0 конец строки)</td><td>&nbsp;</td></tr>
+
<tr><td>F818h</td><td>Вывод на экран текстовой строки</td><td>HL - адрес строки (код 0 конец строки)</td><td>&nbsp;</td></tr>
<tr><td>F81B</td><td>Опрос состояния клавиатуры 2</td><td>&nbsp;</td><td>A=FF - клавиша не нажата<br>A=FE - нажата РУС/ЛАТ<br>Иначе A - код клавиши</td></tr>
+
<tr><td>F81Bh</td><td>Опрос состояния клавиатуры 2</td><td>&nbsp;</td><td>A=FF - ни одна клавиша не нажата<br>A=FE - нажата клавиша РУС/ЛАТ<br>Иначе A - код клавиши</td></tr>
<tr><td>F81E</td><td>Запрос положения курсора</td><td>&nbsp;</td><td>Н - номер строки<br>L - номер позиции</td></tr>
+
<tr><td>F81Eh</td><td>Запрос положения курсора</td><td>&nbsp;</td><td>Н - номер строки<br>L - номер позиции</td></tr>
<tr><td>F821</td><td>Запрос символа под курсором</td><td>&nbsp;</td><td>А - символ</td></tr>
+
<tr><td>F821h</td><td>Запрос символа под курсором</td><td>&nbsp;</td><td>А - символ</td></tr>
<tr><td>F824</td><td>Чтение блока с магнитофона</td><td>HL - смещение</td><td>HL - смещение<br>HL - адрес начала<br>DE - адрес конца<br>ВС - контрольная сумма считанная с ленты</td></tr>
+
<tr><td>F824h</td><td>Чтение блока с магнитофона</td><td>HL - смещение</td><td>HL - смещение<br>HL - адрес начала<br>DE - адрес конца<br>ВС - контрольная сумма считанная с ленты</td></tr>
<tr><td>F827</td><td>Вывод блока на магнитофон</td><td>HL - адрес начала<br>DE - адрес конца<br>ВС - контрольная сумма</td><td>&nbsp;</td></tr>
+
<tr><td>F827h</td><td>Вывод блока на магнитофон</td><td>HL - адрес начала<br>DE - адрес конца<br>ВС - контрольная сумма</td><td>&nbsp;</td></tr>
<tr><td>F82A</td><td>Подсчет контрольной суммы блока</td><td>HL - адрес начала<br>DE - адрес конца</td><td>ВС - контрольная сумма</td></tr>
+
<tr><td>F82Ah</td><td>Подсчет контрольной суммы блока</td><td>HL - адрес начала<br>DE - адрес конца</td><td>ВС - контрольная сумма</td></tr>
<tr><td>F82D</td><td>Инициализация видеоконтроллера</td><td>&nbsp;</td><td>&nbsp;</td></tr>
+
<tr><td>F82Dh</td><td>Инициализация видеоконтроллера</td><td>&nbsp;</td><td>&nbsp;</td></tr>
<tr><td>F830</td><td>Запрос верхней границы доступной памяти</td><td>&nbsp;</td><td>HL - адрес</td></tr>
+
<tr><td>F830h</td><td>Запрос верхней границы доступной памяти</td><td>&nbsp;</td><td>HL - адрес</td></tr>
<tr><td>F833</td><td>Установка верхней границы<br>доступной памяти</td><td>HL - адрес</td><td>&nbsp;</td></tr>
+
<tr><td>F833h</td><td>Установка верхней границы<br>доступной памяти</td><td>HL - адрес</td><td>&nbsp;</td></tr>
 
</table>
 
</table>
  
==Ссылки==
+
==Замена КР580ВГ75==
  
http://www.danbigras.ru/RK86/Index.html - Статьи из журнала Радио
+
В журнале Радио предлагалась схема замены дефицитной микросхемы ВГ75 на отдельную плату, которая содержала 20 более доступных и простых микросхем.
 +
 
 +
Эта плата была несовместима с микрсохемой [[КР580ВГ75]]. Отличалось положение и внутреннее устройство видеопамяти. Отличался способ отображения курсора. Плата не поддерживала изменение высоты шрифта, изменение ширины и высоты экрана, изменение положения видеопамяти в адресном пространстве, не поддерживались аттрибуты и т.д.
 +
 
 +
Из за этого требовалось альтернативное ПЗУ. И на таком компьютере некорректно работали стандартные РК86 программы обращающиеся к видеопамяти напрямую. А это почти все игры. Работали только программы обращающиеся к видеопамяти через функции ПЗУ.
 +
 
 +
Плата содержала собственное видео ОЗУ, статическую память объемом 2 Кб. Формирование изображения происходило из этой памяти. В отличии от КР580ВГ75, изображение формирвоалось даже при отключенном контроллере ПДП (он отключается во время загрузки и сохранения на магнитофон). Когда процессор записывал данные в видео ОЗУ платы, на экране появилясь помехи.
 +
 
 +
http://www.danbigras.ru/RK86/Naladka/NoVG75.html - Если нет ВГ75, журал Радио.
 +
 
 +
==РК-производные компьютеры==
 +
 
 +
* Микроша
 +
* Электроника КР-01/02/03 (конструктор для сборки)
 +
* Партнёр 01.01
 +
* Спектр-001
 +
* Апогей БК-01(Ц)
 +
* Криста
 +
* УМПК-Р-32 — выпускался заводом «Мукачевприбор»
 +
* Альфа-БК
 +
* Эрудит (вариант Альфы-БК на ОЗУ 565РУ5)
 +
* Импульс-02/03
 +
* Эликс-89 — планировался к выпуску на Новороссийском заводе «Прибой», есть фотография экземпляра № 11, выпущенного в сентябре 1990 года.
 +
* Согдиана-1
 +
* Mikro-88 — выпускался одним из рижских кооперативов
 +
 
 +
==Ссылки==
  
http://emu80.org/dl.html - Эмулятор и игры для Радио-86РК
+
* [http://www.danbigras.ru/RK86/Index.html Статьи из журнала Радио]
 +
* [http://emu80.org/dl.html Эмулятор и игры для Радио-86РК]
 +
* [http://zx-pk.ru/showthread.php?t=12137 ROM-Disk для Радио-86РК]

Текущая версия на 20:25, 25 ноября 2025

Группа: Радио 86РК-совместимый
Процессор: КР580ВМ80А (клон 8080)
ОЗУ: 16/32 Кб
ПЗУ: 2 Кб (программа Монитор)
Разъемы: Универсальный параллельный порт КР580ВВ55А, магнитофон, НЧ видео
Видео: КР580ВГ75+КР580ВТ57 Черно белый текстовый режим от 64x25 до 64x64. Или псевдографический 128x62. Подключается в телевизору.
Звук: бипер
Разработан: 1986 год

О компьютере

Компьютер Радио 86РК появился в виде схем в журнале Радио, номер № 4-6/1986 г. Авторы разработки Г.В. Зеленко, Д.В. Горшков, Ю.В. Озеров и С.Н. Попов. Радиолюбители должны были собрать этот компьютер самостоятельно. Но уже через год многие заводы наладили выпуск этих компьютеров. Некоторые компьютеры отличались только корпусами (например: Альфа БК, ПК Импульс-02), а некоторые были значительно расширены (например: Апогей БК-01, Партнер 01.01) и стали несовместимы с оригинальным Радио 86РК.

Компьютер стал популярным из за небольшой схемы. Всего 29 микросхем для версии с 16 Кб оперативной памяти. Схема была простой благодаря использованию микросхемы КР580ВГ75, которая содержала в себе большую часть видеоконтроллера. Эта микросхема работала совместно с контроллером ПДП КР580ВТ57, ПЗУ знакогенератора и еще несколькими простыми микросхемами.

К сожалению, микросхема КР580ВГ75 могла отображать лишь текстовый режим экрана 64x25 / 64x64 использующий всего 128 символов. Знакогенератор содержит английские и русские буквы, но маленького знакогенератора хватило только на заглавные буквы. Строчных букв нет. Так же в знакогенератор поместили 16 псевдографических символа делящих знакоместо пополам по ширине и высоте. Благодаря им можно реализовать псевдографический режим 128x62.

Микросхема КР580ВГ75 позволяла реализовать цветное изображение, но ради простоты в компьютере Радио 86РК эта возможность не была реализована. Эта доработка требовала максимум 3 простых микросхемы, и любители дорабатывали компьютер РК86 руками.

Видеоадаптер во время чтения ОЗУ непредсказуемо притормаживал процессор, поэтому время выполнения программы рассчитать было невозможно. А это необходимо для корректной работы программы загрузки и сохранения на магнитофон. Поэтому во время загрузки с магнитофона, видеоконтроллер отключался и пользователь видел черный экран.

Видеоконтроллер побочно регенерировал ОЗУ компьютера, поэтому программа загрузки с магнитофона выключившая видеоконтроллер должна сама регенерировать ОЗУ.

В этом компьютере интересно сделан вывод звука. Для вывода звука используется ножка INTE процессора (разрешение прерываний).

Прерывания и порты ввода-вывода в этом компьютере не используются.

Команды монитора

D[начало],[конец]Выводит содержимое области памяти в шестнадцатеричном виде.
L[начало],[конец]Выводит содержимое области памяти в текстовом виде.
F[начало],[конец],[байт]Заполняет область памяти байтом.
M[начало]Последовательно просматривает память позволяя изменять значения.
T[из_начало],[из_конец],[куда начало]Копирует область памяти.
С[начало],[конец],[начало 2]Сравнивает области памяти.
S[начало],[конец],[байт]Ищет байт в области памяти.
G[адрес],[точка останова]Запустить программу. Точку останова можон не указывать. Адрес то же можно не указывыть, тогда выполнение начинается с адреса 0.
XПросмотр и изменение регистров процессора.
R[из начало],[из конец],[куда начало]Загрузить данные из внешнего ПЗУ. Третий параметр можно не указывать, тогда загрузка произойдет в адрес 0.
O[начало],[конец],[скорость]Сохраняет область памяти на магнитофон. Третий параметр можно не указывать.
I[начало],[скорость]Загружает область памяти с магнитофона. Оба параметра можно не указывать.
U???

Карта памяти

16 Кб ОЗУ32 Кб ОЗУОписание
0000h - 34FFh0000h - 75FFhОЗУ Пользователя
3500h - 35CFh7600h - 76CFhОЗУ. Переменные монитора
35D0h - 3FFFh76D0h - 7FFFhОЗУ. Видеопамять (может быть программно перемещена)
8000h - 9FFFhКонтроллер клавиатуры (КР580ВВ55)
A000h - BFFFhУниверсальный параллельный порт (КР580ВВ55)
С000h - DFFFhВидеоконтроллер (КР580ВГ75)
E000h - FFFFhКонтроллер ПДП (КР580ВТ57). Только запись
F800h - FFFFhПЗУ. Только чтение

(Порты ввода-вывода обращаются к этой же памяти)

Стандартный набор программ ввода-вывода

АдресОписаниеВходные данныеВыходные данные
F803hВвод символа с клавиатуры с ожиданием A - код символа
F806hЧтение байта с магнитофонаА=FF - с поиском синхробайта
A=08 - без поиска синхробайта
A - считанный байт
F809hВывод символа на экранС - символ 
F80СhЗапись байта на магнитофонC - байт 
F80FhНе используется  
F812hОпрос состояния клавиатуры 1 A=FF - ни одна клавиша не нажата
A<>FF - нажата
F815hВывод на экран 16-ричного числаA - число 
F818hВывод на экран текстовой строкиHL - адрес строки (код 0 конец строки) 
F81BhОпрос состояния клавиатуры 2 A=FF - ни одна клавиша не нажата
A=FE - нажата клавиша РУС/ЛАТ
Иначе A - код клавиши
F81EhЗапрос положения курсора Н - номер строки
L - номер позиции
F821hЗапрос символа под курсором А - символ
F824hЧтение блока с магнитофонаHL - смещениеHL - смещение
HL - адрес начала
DE - адрес конца
ВС - контрольная сумма считанная с ленты
F827hВывод блока на магнитофонHL - адрес начала
DE - адрес конца
ВС - контрольная сумма
 
F82AhПодсчет контрольной суммы блокаHL - адрес начала
DE - адрес конца
ВС - контрольная сумма
F82DhИнициализация видеоконтроллера  
F830hЗапрос верхней границы доступной памяти HL - адрес
F833hУстановка верхней границы
доступной памяти
HL - адрес 

Замена КР580ВГ75

В журнале Радио предлагалась схема замены дефицитной микросхемы ВГ75 на отдельную плату, которая содержала 20 более доступных и простых микросхем.

Эта плата была несовместима с микрсохемой КР580ВГ75. Отличалось положение и внутреннее устройство видеопамяти. Отличался способ отображения курсора. Плата не поддерживала изменение высоты шрифта, изменение ширины и высоты экрана, изменение положения видеопамяти в адресном пространстве, не поддерживались аттрибуты и т.д.

Из за этого требовалось альтернативное ПЗУ. И на таком компьютере некорректно работали стандартные РК86 программы обращающиеся к видеопамяти напрямую. А это почти все игры. Работали только программы обращающиеся к видеопамяти через функции ПЗУ.

Плата содержала собственное видео ОЗУ, статическую память объемом 2 Кб. Формирование изображения происходило из этой памяти. В отличии от КР580ВГ75, изображение формирвоалось даже при отключенном контроллере ПДП (он отключается во время загрузки и сохранения на магнитофон). Когда процессор записывал данные в видео ОЗУ платы, на экране появилясь помехи.

http://www.danbigras.ru/RK86/Naladka/NoVG75.html - Если нет ВГ75, журал Радио.

РК-производные компьютеры

  • Микроша
  • Электроника КР-01/02/03 (конструктор для сборки)
  • Партнёр 01.01
  • Спектр-001
  • Апогей БК-01(Ц)
  • Криста
  • УМПК-Р-32 — выпускался заводом «Мукачевприбор»
  • Альфа-БК
  • Эрудит (вариант Альфы-БК на ОЗУ 565РУ5)
  • Импульс-02/03
  • Эликс-89 — планировался к выпуску на Новороссийском заводе «Прибой», есть фотография экземпляра № 11, выпущенного в сентябре 1990 года.
  • Согдиана-1
  • Mikro-88 — выпускался одним из рижских кооперативов

Ссылки