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

Материал из ZX-PK.ru
Перейти к: навигация, поиск
Строка 41: Строка 41:
 
<tr><td>I[начало],[скорость]</td><td>Загружает область памяти с магнитофона. Оба параметра можно не указывать.</td></tr>
 
<tr><td>I[начало],[скорость]</td><td>Загружает область памяти с магнитофона. Оба параметра можно не указывать.</td></tr>
 
<tr><td>U</td><td>???</td></tr>
 
<tr><td>U</td><td>???</td></tr>
 +
</table>
 +
 +
==Стандантный набор программ ввода-вывода==
 +
 +
<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>F803</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>F809</td><td>Вывод символа на экран</td><td>С - символ</td><td>&nbsp;</td></tr>
 +
<tr><td>F80С</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>F812</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>F818</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>F81E</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>F824</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>F82A</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>F830</td><td>Запрос верхней границы доступной памяти</td><td>&nbsp;</td><td>HL - адрес</td></tr>
 +
<tr><td>F833</td><td>Установка верхней границы<br>доступной памяти</td><td>HL - адрес</td><td>&nbsp;</td></tr>
 
</table>
 
</table>
  

Версия 11:07, 19 апреля 2012

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

О компьютере

Компьютер Радио 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???

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

АдресОписаниеВходные данныеВыходные данные
F803Ввод символа с клавиатуры с ожиданием A - код символа
F806Чтение байта с магнитофонаА=FF - с поиском синхробайта
A=08 - без поиска синхробайта
A - считанный байт
F809Вывод символа на экранС - символ 
F80СЗапись байта на магнитофонC - байт 
F80FНе используется  
F812Опрос состояния клавиатуры 1 A=FF - ни одна клавиша не нажата
A<>FF - нажата
F815Вывод на экран 16-ричного числаA - число 
F818Вывод на экран текстовой строкиHL - адрес строки (код 0 конец строки) 
F81BОпрос состояния клавиатуры 2 A=FF - клавиша не нажата
A=FE - нажата РУС/ЛАТ
Иначе A - код клавиши
F81EЗапрос положения курсора Н - номер строки
L - номер позиции
F821Запрос символа под курсором А - символ
F824Чтение блока с магнитофонаHL - смещениеHL - смещение
HL - адрес начала
DE - адрес конца
ВС - контрольная сумма считанная с ленты
F827Вывод блока на магнитофонHL - адрес начала
DE - адрес конца
ВС - контрольная сумма
 
F82AПодсчет контрольной суммы блокаHL - адрес начала
DE - адрес конца
ВС - контрольная сумма
F82DИнициализация видеоконтроллера  
F830Запрос верхней границы доступной памяти HL - адрес
F833Установка верхней границы
доступной памяти
HL - адрес 

Ссылки

http://www.danbigras.ru/RK86/Index.html - Статьи из журнала Радио

http://emu80.org/dl.html - Эмулятор и игры для Радио-86РК