CompareTable — различия между версиями
Id (обсуждение | вклад) (→Программная совместимость) |
Id (обсуждение | вклад) (→Программная совместимость) |
||
Строка 123: | Строка 123: | ||
|F803 | |F803 | ||
|Ввод символа с клавиатуры с ожиданием | |Ввод символа с клавиатуры с ожиданием | ||
− | |||
| + | | + | ||
| + | | + | ||
− | | | + | | + |
+ | | + | ||
| + | | + | ||
|- | |- | ||
|F806 | |F806 | ||
| Ввод байта с магнитофона | | Ввод байта с магнитофона | ||
− | |||
| + | | + | ||
| + | | + | ||
− | | | + | | + |
+ | | + | ||
| + | | + | ||
|- | |- | ||
|F809 | |F809 | ||
| Вывод символа на экран | | Вывод символа на экран | ||
− | |||
| + | | + | ||
| + | | + | ||
− | | | + | | + |
+ | | + | ||
| + | | + | ||
|- | |- | ||
|F80C | |F80C | ||
| Вывод байта на магнитофон | | Вывод байта на магнитофон | ||
− | |||
| + | | + | ||
| + | | + | ||
− | | | + | | + |
+ | | + | ||
| + | | + | ||
|- | |- | ||
|F80F | |F80F | ||
− | | | + | | Содержит адрес перехода |
− | | | + | | F809 |
| + | | + | ||
| + | | + | ||
− | | | + | | F809 |
| + | | + | ||
|- | |- | ||
|F812 | |F812 | ||
| Опрос состояния клавиатуры | | Опрос состояния клавиатуры | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | |- | ||
+ | |F815 | ||
+ | | Вывод байта на экран в шест. виде | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | |- | ||
+ | |F818 | ||
+ | | Вывод сообщения на экран | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | | + | ||
+ | |- | ||
+ | |F81B | ||
+ | | Опрос кода нажатой клавиши | ||
+ | | - | ||
| ? | | ? | ||
+ | | - | ||
| + | | + | ||
+ | | ? | ||
+ | |- | ||
+ | |F81E | ||
+ | | Запрос положения курсора на экране | ||
+ | | - | ||
+ | | ? | ||
+ | | - | ||
| + | | + | ||
| ? | | ? | ||
+ | |- | ||
+ | |F821 | ||
+ | | Запрос байта из экранного буфера | ||
+ | | - | ||
+ | | ? | ||
+ | | - | ||
| + | | + | ||
+ | | ? | ||
|- | |- | ||
− | | | + | |F824 |
− | | | + | | Ввод блока с магнитофона |
+ | | - | ||
| ? | | ? | ||
+ | | - | ||
| + | | + | ||
+ | | ? | ||
+ | |- | ||
+ | |F827 | ||
+ | | Вывод блока на магнитофон | ||
+ | | - | ||
+ | | ? | ||
+ | | - | ||
| + | | + | ||
| ? | | ? | ||
+ | |- | ||
+ | |F82A | ||
+ | | Подсчет контрольной суммы блока | ||
+ | | - | ||
+ | | ? | ||
+ | | - | ||
| + | | + | ||
+ | | ? | ||
|- | |- | ||
− | | | + | |F82D |
− | | | + | | Запуск отображения на экране |
+ | | - | ||
| ? | | ? | ||
+ | | - | ||
| + | | + | ||
+ | | ? | ||
+ | |- | ||
+ | |F830 | ||
+ | | Определение адреса верхней границы памяти | ||
+ | | - | ||
+ | | ? | ||
+ | | - | ||
| + | | + | ||
| ? | | ? | ||
+ | |- | ||
+ | |F833 | ||
+ | | Установка адреса верхней границы свободной памяти | ||
+ | | - | ||
+ | | ? | ||
+ | | - | ||
| + | | + | ||
+ | | ? | ||
|- | |- | ||
|} | |} |
Версия 14:49, 21 марта 2017
Советские персональные компьютеры на процссоре КР580ВМ80А можно условно разделить на две категории:
- Архитектура Радио-86РК, с контроллером дисплея на i8275 (КР580ВГ75), который в "связке" с контроллером DMA i8257 (ПДП КР580ВТ57) прерывал работу ЦП для вывода на экран;
- Другие архитектуры.
Архитектура Радио-86РК
Управляющие регистры СБИС отображаются в адресное пространство компьютера, сокращая доступный размер ОЗУ/ПЗУ. Считалось, что памяти и так достаточно, а отказ от использования адресного пространства портов ввода-вывода упрощает схемотехническое решение компьютера (дешифрация адреса, выделение признака обращения к портам из слова состояния ЦП).
Одним из источников несовместимости ПО были отличные друг от друга карты распередления памяти.
Функция | Микросхема | Радио-86РК 16K | Радио-86РК 32K | Микроша | Апогей БК-01Ц |
---|---|---|---|---|---|
ОЗУ | 0000..3FFF | 0000..7FFF | 0000..7FFF | 0000..EAFF | |
Клавиатура | КР580ВВ55А | 8000..9FFF | 8000..9FFF | C000..C7FF | ED00..EDFF |
Интерфейс | КР580ВВ55А | A000..BFFF | A000..BFFF | C800..CFFF | EE00..EEFF |
Дисплей | КР580ВГ75 | C000..DFFF | C000..DFFF | D000..D7FF | EF00..EFFF |
ПДП | КР580ВТ57 | E000..EFFF | E000..EFFF | F800..FFFF | F000..F7FF |
Таймер | КР580ВИ53 | - | - | D800..DFFF | EC00..ECFF |
ПЗУ | F800..FFFF | F800..FFFF | F800..FFFF | F000..FFFF |
Звук | Текст | Знакогенератор | Псевдографика | Цвет | |
---|---|---|---|---|---|
Радио-86РК | INTE (EI/DI) | 25x64 | 1 | 128x50 | Ч/Б |
Микроша | Таймер КР580ВИ53, 1 канал (2) | 25x64 | 2 | ? | Ч/Б |
Апогей БК-01Ц | Таймер КР580ВИ53, 3 канала (0,1,2) | 25x64 | 2 | ? | RGB |
Программная совместимость
Записанная в ПЗУ программа МОНИТОР, обслуживавшая ввод с клавиатуры, вывод на экран и работу с накопителем на бытовом магнитофоне, содержала унифицированные подпрограммы, точки входа в которые располагались по общеизвестным адресам. Идеологически, это напоминало BIOS, уже существовавший на тот момент, например, в составе ОС CP/M.
Адрес | Функция | Микро-80 | Радио-86РК | Микроша | ЮТ-88 | Апогей-БК01Ц |
---|---|---|---|---|---|---|
F800 | Холодный старт | + | + | + | + | + |
F803 | Ввод символа с клавиатуры с ожиданием | + | + | + | + | + |
F806 | Ввод байта с магнитофона | + | + | + | + | + |
F809 | Вывод символа на экран | + | + | + | + | + |
F80C | Вывод байта на магнитофон | + | + | + | + | + |
F80F | Содержит адрес перехода | F809 | + | + | F809 | + |
F812 | Опрос состояния клавиатуры | + | + | + | + | + |
F815 | Вывод байта на экран в шест. виде | + | + | + | + | + |
F818 | Вывод сообщения на экран | + | + | + | + | + |
F81B | Опрос кода нажатой клавиши | - | ? | - | + | ? |
F81E | Запрос положения курсора на экране | - | ? | - | + | ? |
F821 | Запрос байта из экранного буфера | - | ? | - | + | ? |
F824 | Ввод блока с магнитофона | - | ? | - | + | ? |
F827 | Вывод блока на магнитофон | - | ? | - | + | ? |
F82A | Подсчет контрольной суммы блока | - | ? | - | + | ? |
F82D | Запуск отображения на экране | - | ? | - | + | ? |
F830 | Определение адреса верхней границы памяти | - | ? | - | + | ? |
F833 | Установка адреса верхней границы свободной памяти | - | ? | - | + | ? |