Персональный компьютер 90-х годов Искра 1080 Тарту

23 сентября 2024

Впервые об Искре 1080 Тарту я узнал из видео на YouTube-канале Алексея Морозова. Алексей так красочно рассказывал о данной ПЭВМ, что мне тоже захотелось попробовать. Вот только устройство это куда более редкое, чем Микроша, БК-0010-01 или Спектрум. Тем не менее, недавно мне удалось раздобыть Искру 1080 и восстановить ее.

Мой экземпляр имеет заводской номер 10605 и был произведен в марте 1991 года. Для своих лет компьютер хорошо сохранился:

Персональный компьютер Искра 1080 Тарту

Коротко о главном:

  • Компьютер работает на 8-и битном процессоре КР580ВМ80А, аналоге Intel 8080. Тактовая частота 2.1 МГц;
  • 20 Кб ПЗУ на десяти КР556РТ7. Есть BASIC и Монитор. Последний имеет встроенный дизассемблер. Это очень удобно для написания программ в машинных кодах. Для меньшего потребления тока нужная ПЗУ запитывается только при обращении к ней;
  • 64 Кб динамической ОЗУ на восьми КР565РУ5. Спрашивается, как работать с 64 Кб ОЗУ и 20 Кб ПЗУ, если процессор может адресовать только 64 Кб? Это возможно, если отображать в памяти ОЗУ или ПЗУ в зависимости о того, по какому адресу находится текущая инструкция. Программы не могут размещать код в видеопамяти, так как при попытке обратиться к нему управление перейдет коду из ПЗУ;
  • Два основных видеорежима: 2 цвета 384x256 (12 Кб видеопамяти) и 4 цвета 384x256 (24 Кб видеопамяти). Есть также режим 2 цвета 768x256 (24 Кб видеопамяти). Для перехода в последний необходимо использовать переключатель на задней стенке компьютера. Полезность данного режима сомнительна. Все режимы — без клэшинга, а каждый цвет выбирается независимо из палитры в 15 цветов. Видеосигнал на выходе в RGB. Можно сделать переходник на SCART;
  • Есть русские и латинские буквы, как заглавные, так и строчные. Они выводятся в любом сочетании без каких-либо ограничений. Может показаться, что это не такое уж большое достижение. Однако напомню, что в Микроше, к примеру, это не так;
  • Предусмотрено два разъема расширений. На первый разъем выведены системные шины, а на второй — порты ввода-вывода. Оба разъема представляют собой вилки СНП58-64;
  • Компьютер имеет герконовую клавиатуру в раскладке QWERTY;
  • Программы загружаются с магнитофона. Звук на встроенном бипере без регулировки громкости. Блок питания встроен в корпус;

Внутри Искра 1080 Тарту выглядит так:

Внутренности компьютера Искра 1080 Тарту

Компьютер состоит из трех плат. На фотографии хорошо видна основная плата. Из под нее слева выглядывает плата блока питания. Еще есть отдельная плата клавиатуры. Выглядит она не слишком интересно, поэтому без фото. Основная плата покрыта маской, а между собой платы соединяются разъемами. Так бывает далеко не во всех советских ПЭВМ. Изнутри корпус покрыт токопроводящей краской с низким сопротивлением, всего лишь несколько Ом от одного края корпуса до другого. Мне хотелось бы знать, где раздобыть или как изготовить такую краску.

Все компоненты оказались на месте, что обнадеживало. В первую очередь необходимо проверить блок питания отдельно от всего остального. На входе у него 220 В переменки, а на выходе должны быть напряжения 12 В, 5 В и -5 В постоянки. Разъем на 220 В здесь какой-то необычный. Поработав немного надфилем, на его место можно поставить более привычный разъем. Фотография такой модификации, а также схема БП доступны на сайте Алексея.

Также необходимо проверить сопротивление на контактах кнопки ВКЛ/ОТКЛ. На приведенной выше фотографии она видна слева. В моем случае кнопка имела высокое сопротивление. Выяснилось, что она легко разбирается. Внутренности были почищены средством для снятия окисла. Это устранило проблему.

Сам же БП оказался неисправен, и у меня не получилось его починить. Не стану утомлять вас перечислением всего, что было проверено и перепробовано. Скажу лишь, что я потратил очень много времени, и безрезультатно.

Тогда было принято решение переделать компьютер на внешний блок питания от Микроши. Вот соответствующий переходник:

Подключение БП Микроши к Искре 1080 Тарту

На картинке разъем DIN-5 изображен, как если бы мы смотрели на корпус Искры. В корпусе есть отверстие для предохранителя. Разъем DIN-5 идеально подходит к этому отверстию:

Модификация корпуса Искры 1080 Тарту

Наклейка «ВНЕШ.БП» была напечатана на маркираторе. Отверстие для разъема 220 В было закрыто заглушкой, которую я напечатал на 3D-принтере. Размеры заглушки подобраны так, чтобы она держалась без клея, за счет силы трения. Как по мне, получилось симпатично.

Боковую кнопку ВКЛ/ОТКЛ я оставил, но она ничего не делает. Возможно, кнопка еще пригодится. Например, с ее помощью можно отключать встроенный динамик. Или можно добавить в компьютер КР580ВИ53 и использовать боковую кнопку для включения и выключения мода.

Для проверки основной платы понадобится переходник на SCART. Вот его схема:

Схема SCART-адаптера для Искры 1080 Тарту

Разъем X6 на основной плате представляет собой штекер СНО53-8В-23-В. На схеме он показан, как если бы мы смотрели на корпус компьютера. Номера пинов соответствуют маркировке на печатной плате. В SCART-кабеле должна использоваться ответная розетка СНО53-8Р-2-В. Названные разъемы доступны в популярных онлайн-магазинах. Найти их не составляет труда.

Забегая вперед, сразу расскажу и про подключение магнитофона. Для этого используется пара разъемов DIN-5. На каждом из них используется два контакта, номер 2 — это земля, номер 3 — это вход или выход аудио, в зависимости от разъема. Можно доработать один из разъемов, чтобы на его контактах были как вход, так и выход. Тогда подойдет кабель от Микроши или БК-001x.

Перед включением основной платы стоит проверить сопротивление по всем шинам питания. Мы не хотим нагрузить блок питания на КЗ. При подаче питания компьютер показывает кракозябры. После нажатия RST слышим двойной «бип» из спикера и попадаем в интерпретатор BASIC. Должен отображаться белый текст на синем фоне. Проверим клавиатуру.

Несколько клавиш работали плохо. Они срабатывали, только если нажимать их до упора. Я приподнял соответствующие герконы на плате и это решило проблему. Чтобы понять, достаточно ли высоко поднят геркон, собирать и включать компьютер не требуется. Достаточно поднести ухо к клавиатуре. При срабатывании геркона слышан тихий щелчок.

Пока компьютер полностью разобран, поменяем электролиты. Два находятся на основной плате и еще один на плате клавиатуры. Из трех конденсаторов один имел высокий ESR. Остальные производили впечатление живых, но я все равно их заменил. Собираем компьютер.

Читаем Руководство пользователя. Для перехода из интерпретатора BASIC в Монитор нужно нажать CTR+RST. Переход обратно осуществляется нажатием CTR+SHIFT+RST.

Команды Монитора перечислены на странице 80 руководства:

  • [адрес]p[количество байт] — печать содержимого памяти. Команда запоминает последний прочитанный адрес. Если не указать адрес, вывод продолжится с того места, где он остановился в прошлый раз;
  • [адрес]l[количество команд] — дизассемблирование содержимого памяти. Запоминает последний адрес, как и p;
  • [адрес]:значение значение ... — запись в память;
  • [номер порта]i — чтение из порта;
  • [номер порта]o[значение] — запись в порт;
  • [адрес]g — передача управления по заданному адресу;
  • [адрес1]w[адрес2] [имя файла] — запись на магнитную ленту данных с [адрес1] по [адрес2] не включая последний;
  • r — загрузка с магнитной ленты;
  • z — очистка экрана;

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

С программированием в машинных кодах 8080 к этому моменту мы уже знакомы. Напишем программу, очищающую экран:

0100    CD A0 F9    CALL 0xF9A0  ; очистить экран
0103    C9          RET          ; возврат из подпрограммы

Для ее запуска в Мониторе выполняем команды:

Команда                          Комментарий      

100:cd a0 f9 c9                  Вводим программу по адресу 0x0100
100l                             Выводим код программы для проверки
100g                             Запускаем программу

Проверим цвета. Выбор цветов из палитры осуществляется записью в порты 0x90..0x93. Переключение между режимами 2 цвета и 4 цвета осуществляется выбором номера режима при помощи портов 0xB8, 0xB9, 0xF8 и 0xF9, как описано здесь. Основная видеопамять находится по адресам 0xD000..0xFFFF. Лишний бит в режиме 4-х цветов устанавливается по адресам 0x9000..0xBFFF.

Команда                          Комментарий      

90o0f                            Цвет фона становится черным
91o06                            Светло-красный цвет для режима 4 цвета
92o05                            Цвет текста становится светло-зеленым
93o03                            Светло-синий цвет для режима 4 цвета

f8o00                            Переходим в режим 4-х цветов
b9o00

d000:f0                          Меняем цвет пикселей внизу справа
9000:c3                          Видим синий-зеленый-черный-красный

b8o00                            Возвращаемся в режим 2-х цветов
f9o00

Кассета с тестовыми программами к моей Искре не прилагалась, и на первых порах мне не хотелось использовать MP3 файлы, доступные на сайте Алексея. Если файл не загрузится, нужно будет еще разобраться, то ли Искра сломана, то ли я что-то не так подключил. Зато у меня чесались руки попрограммировать на ассемблере. Так была написана программа для тестирования ОЗУ:

0100    21 37 01    LXI H, 0x0137  ; адрес конца программы
0103    36 55       MVI M, 0x55    ; пишем и читаем 0x55
0105    7E          MOV A, M
0106    FE 55       CPI 0x55
0108    C2 23 01    JNZ 0x0123     ; ошибка
010B    36 AA       MVI M, 0xAA    ; пишем и читаем 0xAA
010D    7E          MOV A, M
010E    FE AA       CPI 0xAA
0110    C2 23 01    JNZ 0x0123     ; ошибка
0113    23          INX H          ; инкремент HL
0114    3E С7       MVI A, 0xС7      
0116    BС          CMP H          ; HL достиг 0xС700 ?
0117    C2 03 01    JNZ 0x0103     ; нет - в начало цикла
011A    CD BD F2    CALL 0xF2BD    ; вывод значения HL
011D    21 2F 01    LXI H, 0x012F  ; HL = "OK"
0120    C3 29 01    JMP 0x0129
0123    CD BD F2    CALL 0xF2BD    ; вывод значения HL
0126    21 32 01    LXI H, 0x0132  ; HL = "FAIL"
0129    0E 00       MVI C, 0x00    ; маркер конца строки
012B    CD 37 F1    CALL 0xF137    ; вывод строки (HL)
012E    C9          RET
012F    4F          'O'
0130    4B          'K'
0131    00
0132    46          'F'
0133    41          'A'
0134    49          'I'
0135    4C          'L'
0136    00

Тест проходит. Теперь сохраним программу на ленту:

100w137 mcheck

Выйдем в BASIC и вернемся в Монитор. Программа при этом будет затерта. Загрузим ее с ленты:

r

Программа загружается и работает, как раньше. Далее я загрузил несколько программ из MP3 файлов, а также поиграл в «Цветные линии»:

Цветные линии для Искры 1080 Тарту

Эту игру необходимо cконвертировать в WAV при помощи утилиты lvt2wav. Все работает. Скорее всего, данный экземпляр Искры 1080 Тарту исправен.

Fun fact! Посчитайте, сколько разных цветов вы видите на картинке. Напомню, что компьютер четырехцветный.

Для меня Искра — это в первую очередь удобный ПЭВМ для программирования на ассемблере или, если есть такое желание, даже напрямую в машиных кодах. Благодаря удачным компромиссам (графика, цвета, объем ОЗУ, …), Искра дает больший простор для творчества, чем многие другие ретро-компьютеры. А еще здесь классная клавиатура с привычной раскладкой.

Основной недостаток Искры заключается в том, что ее не так-то просто найти. Впрочем, редкость компьютера может быть и плюсом. Еще можно стать первым человеком, написавшим для этой ПЭВМ ту или иную программу. Также можно стать первым, кто сделает клон компьютера на FPGA, разведет реплики печатных плат, сделает тот или иной внешний модуль, и так далее.

Больше информации об Искре 1080 Тарту вы найдете на сайте Алексея, а также на его YouTube-канале.

Дополнение: Написал «Змейку» для Искры 1080 Тарту

Метки: , , , .


Вы можете прислать свой комментарий мне на почту, или воспользоваться комментариями в Telegram-группе.