Орион-128

«Орио́н-128» — любительский 8-разрядный персональный компьютер. Разработан радиолюбителями из подмосковья — Вячеславом Сафроновым, Владиславом Сугоняко, Константином Коненковым. Схема и описание компьютера были опубликованы в журнале «Радио» в 1990 году, другие материалы по теме публиковались в этом журнале до 1996 года.

Впервые демонстрировался на 34-й Всесоюзной радиовыставке ДОСААФ 22 мая 1989 года и был удостоен первой премии.

«Орион-128» в 1992-1993 производился серийно на Ливенском заводе средств машинной графики (Орловская область).

Технические характеристики 
 Процессор: КР580ВМ80А на такте 2,5 МГц, быстродействие 625 тыс. оп./сек.
 ОЗУ — 128 КБ с возможностью наращивания до 256 КБ. Т.к. такой объём памяти превосходит адресное пространство процессора, используется самый простой, а возможно и самый удобный, метод цельно банковой коммутации)
 ПЗУ — 2 КБ (загрузчик и системный монитор)
 Устройство вывода: телевизор; работа в графическом режиме 384 × 256 точек; 25 строк по 64 символа при использовании стандартного шрифта; цветность: монохромный (чёрно-зелёный или жёлто-голубой), 4 (в режиме 4 цвета на каждую точку, в двух палитрах), 16 цветов (в режиме 16 цветов фона и 16 цветов тона на восемь смежных по горизонтали точек)
 Внешняя память: бытовой кассетный магнитофон, ROM-диск 64 кб, DD-дисковод. В конце 90-х появилась возможность подключения через простейший контроллер жесткого диска с интерфейсом IDE (или CF-карты с тем же интерфейсом).
 Клавиатура: матрица 8*8 + 3 упр.клавиши или промышленная клавиатура MS7007 (11*8). Впоследствии использовался контроллер для подключения PS/2 клавиатуры.

Программное обеспечение 
 Монитор 1/2/3
 Операционные системы: ORDOS 2.40...6.0, CP/M 2.2, SPDOS, DSDOS
 Игры
 Системные утилиты

Особенности 
«Орион» частично совместим и с «Радио-86РК» по клавиатуре, стандартным подпрограммам ПЗУ и формату хранения данных на кассете, и с другим радиолюбительским компьютером, «Специалистом» по формату графического экрана. Видимо, он также использовал идею эл.диска из ОЗУ от ещё одного отечественного компьютера с ОЗУ 128 кб – «Океан-240». Разработчики «Ориона», по их словам, поставили себе задачей создать недорогой, простой и доступный для повторения бытовой ПК обладающий хорошими графическими возможностями, и это у них получилось. В минимальной конфигурации (без цвета, с ОЗУ 64 кб) ОРИОН содержит всего 42 микросхемы, в стандартной конфигурации (128 кб) всего 59, причём не используются дорогие или дефицитные компоненты, можно использовать микросхемы устаревших серий. Из этих же соображений в качестве ЦП был применён КР580ВМ80А, как наиболее дешевый и доступный для приобретения. Причём схемотехника  «Ориона» такова, что процессор работает на максимальной для него частоте 2,5 МГц без каких-либо задержек. Реализована та же идея прозрачного доступа к ОЗУ, что ранее была применена в «Специалисте» и его клонах. Другие отечественные машины для синхронизации процессора с видеочастью использовали циклы WAIT, что снижало быстродействие на 25%. Это сделало «Орион», наряду с «Корветом», самым быстрым отечественным бытовым компьютером на этом процессоре. Например, «Вектор-06Ц» имеющий намного более высокий такт в 3 МГц, уступает «Ориону» по быстродействию из-за торможения процессора видеоконтроллером.

«Орион» обладает высокими для данного класса машин графическими возможностями – разрешение 384х256 позволяет неплохую графику в играх, хотя для текстообработки разрешение всё-равно недостаточное; предусмотрен полноценный цветной режим со своим цветом на каждый пиксель (аналог CGA, лишь с другой организацией), 4 цвета выбираемые из двух палитр и визуально число цветов можно увеличить за счёт мозаики из цветных точек, как делают в играх CGA. Такой режим типичен для многих западных ЭВМ этого уровня (увы, программами этот режим почти не использовался, т.к. для текста он не нужен, а для создания игр не было графического редактора); а для игр и текстов есть удобный 16-ти цветный режим (в пределах экранного байта возможны лишь 2 цвета).

Организация экрана «Ориона» линейна и очень удобна для программиста – младший байт адреса задаёт положение экранного байта по вертикали, а старший байт указывает на его положение по горизонтали. Это упростило и ускорило вывод графики на экран, (подобная организация экрана также в «Специалисте», «Векторе» и «Океане»). Цветной экран в 16-цветном режиме состоит из двух плоскостей - плоскости графики и плоскости цвета. Для текста в одноцветном окне это ускоряет вывод и сдвиг, т.к. перед выводом сначала закрашивают окно, что вдвое сокращает объём выводимых байтов на символ (относительно CGA), а при ролике в окне цвет просто не требуется менять. Также, во всех видеорежимах «Орион» позволяет использовать до 4-х программно переключаемых экранных буферов. Это позволяет делать вывод на невидимый в данный момент экран, а затем мгновенно включать его, что избавляет от проблем с мерцанием спрайтов в динамичных играх и необходимости бороться с этим за счёт прерываний, как в ZX Spectrum. На «Орионе» даже крупные спрайты можно двигать по экрану без мерцаний.

Для «Ориона-128» его разработчиками изначально была создана авторская операционная система ORDOS, рассчитанная на работу не с дисководом, а с ROM-диском (внешнее ПЗУ, читаемое через ППА), RAM-дисками (в качестве них использовалась вторая и последующие 60-килобайтные страницы ОЗУ) и магнитофоном. ORDOS позволяла достаточно комфортно работать с компьютером, не имея недоступных в то время дисководов (подобную встроенную в ПЗУ ОС CP/M работающую на эл.диск из ОЗУ имел также выпущенный мелкосерийно «Океан-240»). Из серийных домашних компьютеров нечто подобное было у «Юниора ФВ-6506», который тоже использовал CP/M.

В качестве относительных недостатков «Ориона» можно отметить лишь неоптимальное разрешение экрана 384*256 при частоте видеосигнала в 10 МГЦ. Это приводит к необходимости использовать некрасивый, а главное небайтовый шрифт 6*10, который (из-за необходимости маскирования) выводится в 2,5 раза медленнее, чем байтовый шрифт 8*10. А вот в «Корвете», «Океане» и «Векторе» применён экран 512*256, потому даже при меньшем быстродействии ЦП и большем размере экранного буфера, текстообработка у них намного быстрее и симпатичнее, а растр занимает весь экран (в то время как в «Орионе» лишь часть экрана). В качестве недостатка иногда указывают на отсутствие аппаратного звукогенератора (звук формируется чисто программно, с большой загрузкой процессора). Это возможно потому, что авторы понимали, что игровая ниша в стране уже занята клонами ZX Spectrum.

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

Примечания

Ссылки 

 Описание компьютера ОРИОН-128
 В. Пыхонин. История любительского компьютера (ЛК) «Орион» — Виртуальный компьютерный музей
 Информация о истории и развитии Ориона (документация, программы Ориона)
 Орион-2010 на современной элементной базе
 Видеоролики из игр и программ для «Ориона-128»
 Эмуляторы
 Emu80
 Emulator 3000
 Эмулятор Ориона
 Исполняемые файлы и исходные тексты эмулятора Орион/Z (Орион + Z80), вспомогательных утилит, архивы игр и программ Ориона
 Универсальный эмулятор Башкирия-2М
 Онлайн-эмулятор Орион-128, работает прямо в браузере

Появились в 1990 году в СССР