Орион-128/ZCard-II: различия между версиями

Материал из Emuverse
(http://www.nedopc.org/forum/viewtopic.php?t=8161)
 
Нет описания правки
Строка 3: Строка 3:
[[Изображение:Z80CardII.png|thumb|300px]]
[[Изображение:Z80CardII.png|thumb|300px]]


Конструктивно доработка выполняется путем удаления из основной платы (main board) центрального процессора КР580ВМ80 и подключения к оставшимся на плате контактным точкам небольшой дополнительной платы «Z80-card». На этой плате размещается новый центральный процессор (CPU) Z80, элементы обеспечивающие его работу и прерывания, доработанный узел диспетчера ОЗУ а также необязательный узел регистр бордюра. Кроме подключения доп. платы «Z80-card» на основной плате необходимо выполнить несколько доработок (разрезов и соединений). Для облегчения, доработку следует выполнять на уже работающей плате стандартного «Ориона-128», поэтапно в соответствии с описанной ниже методикой. Перед началом работы следует в совершенстве разобраться в предлагаемой схеме, полностью уяснить логику работы и назначение сигналов. Для начала разберемся в том, как же работает стандартный «Орион-128». В «Орионе-128» используется оригинальная идея «Специалиста», позволяющая обеспечить работу процессора в режиме так называемого «прозрачного ОЗУ», что означает, что ОЗУ доступно процессору всегда, видеоадаптер не мешает процессору обращаться для чтения или записи в ОЗУ. При этом реальное быстродействие программы определяется только быстродействием самого процессора, использованным тактом процессора и самой программой (т.е набором команд данной программы). Это очень большое преимущество, позволяющее создавать программы реального времени, т.к всегда можно рассчитать сколько машинных тактов будет исполняться любая часть программы (в некоторой степени компенсирует отсутствие прерываний). Для сравнения непрозрачное ОЗУ имеет ЭВМ «Ириша» прозрачность ОЗУ всего 30 %. Идея получения «прозрачного ОЗУ» на компьютерах с процессором КР580, по видимому, является нашей отечественной разработкой, и была применена для «Специалиста» А. Волковым (также в «Векторе-06»). «Орион-128» по сути является «Специалистом» со второй банкой ОЗУ и на мой взгляд было некрасиво со стороны авторов «Ориона» делать публикацию не указав что основная идея принадлежит А. Волкову (обычно это называют плагиатом). В чем же заключается идея А. Волкова? Как известно машинный цикл 580-го процессора при обращении к ОЗУ или ВУ (без WAIT) состоит из 4 машинных тактов, причем на такте T1 выдается сигнал SYNC. Чтение и запись осуществляются на тактах T2 и T3. Для регенерации видео-изображения видео-адаптеру достаточно одного обращения к ОЗУ за два машинных такта. Для реализации прозрачности, процессору для доступа к ОЗУ выделяется всего один такт, а именно T2. Причем для определения такта T2, используется сигнал SYNC, который всегда формируется в такте T1. Для этого сигнал SYNC просто записывается тактом F2 процессора в D-триггер (D13.2), т.е задерживается на 1 такт и полученный сигнал используется для разрешения процессору доступа к ОЗУ. Таким образом процессор имеет право читать и записывать в ОЗУ только во время такта T2, что не совсем корректно, т.к если сигнал /RD почти совпадает с тактом T2, то сигнал /WR начинается в середине T2 и продолжается в такте T3 (он как бы укорачивается для ОЗУ вдвое динамическим ОЗУ этого достаточно). Разработчики компьютеров на Z80 не могли воспользоваться этой идеей, т.к в нем нет сигнала SYNC, именно поэтому во всех компьютерах на Z80 используется WAIT, т.е ОЗУ непрозрачно. Обладая идеей реализации прозрачного ОЗУ для КР580, нам удалось реализовать на этом же принципе прозрачное ОЗУ в «Орионе» с процессором Z80. В предлагаемой схеме отсутствующий сигнал SYNC эмулируется из сигналов /MREQ и /RFSH с помощью простейшей схемы. Однако если в КР580 сигнал /RD длится только такт T2, то в Z80 сигналы /RD и /WR длиннее. Если для записи в ОЗУ это не существенно, то для чтения приводит к ошибке: такт T2 закончился, буфера ОЗУ закрылись, а Z80 еще читает данные с шины. В «Орионе» это усугубляется тем, что в отличие от «Специалиста» SYNC «защелкивается» более ранним сигналом (не F2,т.е и буфера закрываются раньше), а также отличающейся логикой управления буферами. Из-за этого при установке Z80 на «Орион» приходится дополнительно задерживать сигналы управления буферами ОЗУ, а именно на 9 «ноги» буферов ОЗУ D49 и D50 вешать емкость 2500-3000 пф на землю (на «Специалисте» и «Орионе-Z» это делать не требуется). В качестве такта Z80 (CLOCK) используется сигнал F2TTL (т.е F2 с уровнем 5В). Узел прерывания аналогичен узлу запроса немаскируемых прерываний «Зоновского Синклера».
<u><big>Внимание.</big></u> Данное описание относится к варианту установки Z80 1991 года с помощью платки называемой Z80CARD (впоследствии ставшей Z80CARD-I), которая существенно отличается от представленной на расположенном справа рисунке схемы Z80CARD-II 1993 года. Надеюсь, позднее это несоответсвующее и потому, по сути бесполезное, описание для Z80CARD-I будет заменено.  


Обратите внимание, что плата формирует сигналы чтения и записи в ОЗУ (MEMW и MEMR) неинвертированные. Сигнал MEMR соответствует сигналу DBIN КР580, а что касается сигнала /WR его КР580 формирует уже инвертированным, поэтому на основной плате следует исключить лишний инвертор D59.2 (не указанные выводы D59.3 это контакты 5 и 6). Сигнал SND с платы Z80-card — это звук, он соответствует сигналу INTE КР580. Сигналы ROM1 и ROM2 это сигналы для чтения основного и дополнительного ПЗУ по адресу F800, подключаются к 20 ногам этих ИМС (если не планируется ставить 2-е ПЗУ, то и не надо трогать 20 вывод ПЗУ, при этом всегда будет «одно» ПЗУ F800). На микросхеме D2 реализован дополнительный системный регистр (OUT FB), управляющий прерыванием и адресацией ОЗУ. ИМС D4 мультиплексор обеспечивающий формирование логических адресов A15, A16, A17. D4/15 подключите к земле, а D4/2 к сигналу X15 (на ошибочных схемах здесь 5В). Сигналы X15, X16 и X17 это физические адреса. X15 формируется процессором, а X16 и X17 это сигналы из регистра управления банками ОЗУ D18.1 (OUT F9). Сигналы A16 и A17 должны подаваться на основную плату вместо сигналов снимаемых ранее с D18.1/15 и D18.1/16 соответственно (т.е отрезать эти выводы от печатных проводников). Необходимо также подать на плату сигналы инверсный сброс (/RES) и кадровые синхроимпульсы (KSI). Сигналы F8, F9, FA это «чип-селекты» системных регистров, они подаются на основную плату вместо сигналов формируемых ранее D27 (ИД4), а именно D27/9 F8, D27/10 F9, D27/11 FA. ИМС D6 регистр бордюра; сигнал V1 используется для индикации (светодиод «рус/лат», важно для владельцев МС7007). Для работы с Z80-card вы можете использовать Мониторы-2 или 3, однако при этом не будет звуковой индикации (в Z80 нет сигнала INTE, кстати это полный «идиотизм» использовать прерывания для звука). Поэтому целесообразно подпрограмму BEEP (F83F) в Мониторе переделать (это очень просто сделать, новая п/п 14 байт, вместо 27 у «Ориона»). У нас имеется вариант Монитора-3 (для обоих клавиатур) для доработанного таким образом «Ориона». В нем, благодаря замене 3 байтовых переходов 2-х байтовыми, удалось разместить, кроме собственно Монитора-3 еще и загрузчик НГМД, а также доработать п/п-мы F836/F839 (они работают теперь со всем ОЗУ и не «теряется» по 4к в каждой банке впустую). Поэтапный порядок переделки
Заметим, что назначение платки Z80CARD было не столько в замене процессора на более эффективный, а в исправлении недостатков архитектуры «Ориона». А именно - для решения цветовой проблемы и проблемы мизерного объёма резидентного ПЗУ. Частично проблему нехватки объёма ПЗУ решили с помощью внешней доп.платки называемой ROM-диском, но это далеко не одно и то же, т.к только ПЗУ в адресном пространстве позволяет расширять ROM-BIOS.


1. Включите свой «Орион-128» и посмотрите как он работает (больше он так работать не будет). Выключите питание и с помощью больших кусачек выкусите процессор КР580 (больше он вам не понадобится). Не повредите печатную плату
Цветовая проблема заключается в том, что экранные буфера отнимают ОЗУ в обоих страницах памяти (а не находятся в одной странице, что разумнее). Потому для программ доступно всего 48 кб адресного пространства. Эту проблему Z80CARD решает добавлением второго диспетчера ОЗУ, позволяющего скоммутировать ОЗУ так, чтобы экранные буфера оказались в одной странице ОЗУ. Это стало особенно необходимо для CP/M, требующей 60 кб сплошного ОЗУ. Также данная платка вводит две страницы ПЗУ F800 с окном в 2 кб, что позволяет хранить в резидентном ПЗУ ОС ORDOS или загрузчик с дисковода.


2. Удалите печатные проводники от контактов КР580 с номерами: 11, 13, 14, 18, 21, 22, 23, 24 и 28. Эти сигналы не требуются Z80, через эти контакты на плату Z80-card будут подаваться другие сигналы.
Название Z80CARD заимствовано от названия платки аналогичного назначения для компьютере Apple-II, позволяющей добавить в него второй процессор Z80 и использовать ОС CP/M. Там платка устанавливается в системный слот и не требуется  никаких изменений на материнской плате. К сожалению, в ОРИОНЕ не открытая  архитектура, потому процессор подключается к контактам старого процессора КР580ВМ80 и требуется ряд дополнительных коррекций на основной плате.
 
Конструктивно доработка выполняется путем удаления из основной платы  центрального процессора КР580ВМ80 и подключения к оставшимся на плате контактным  точкам небольшой дополнительной платы «Z80CARD». На этой плате размещается  новый центральный процессор Z80, элементы обеспечивающие его работу и  прерывания, доработанный узел диспетчера ОЗУ, порт для управления расширенным ПЗУ, а также необязательный узел регистра бордюра. Кроме подключения доп.платы «Z80CARD» на основной плате необходимо выполнить несколько доработок (разрезов и соединений).
 
Для облегчения, доработку следует выполнять на уже работающей плате стандартного «Ориона-128», поэтапно в соответствии с описанной ниже методикой. Перед началом работы следует разобраться в предлагаемой схеме, полностью уяснить логику работы и назначение сигналов.
 
Для начала разберёмся в том, как работает стандартный  «Орион-128». В «Орионе» используется оригинальная идея из «Специалиста», позволяющая обеспечить работу процессора в режиме так называемого «прозрачного ОЗУ», что означает, что ОЗУ доступно процессору всегда, видеоадаптер не мешает  процессору обращаться для чтения или записи ОЗУ.
 
При этом реальное  быстродействие программы определяется только быстродействием самого процессора, использованным тактом процессора и самой программой (т.е набором команд данной  программы). Это большое преимущество, позволяющее создавать программы  реального времени, т.к всегда можно рассчитать сколько машинных тактов будет  исполняться любая часть программы.
 
Для сравнения, непрозрачное ОЗУ имеет ЭВМ «Ириша», где прозрачность ОЗУ всего 30%, что означает, что 70% обращений процессора приходятся на занятые циклы и процессор останавливается WAIT-ом. Из-за этого в «Ирише» эффективный такт CPU падает на 40%. Все остальные имеющиеся в стране 8-ми разрядки не обладают прозрачным ОЗУ, например, «ZX-48K», «Вектор», «Львов», «РК86», и из-за непрозрачности ОЗУ имеют эффективный такт на 20% ниже клока процессора.
 
Идея получения «прозрачного ОЗУ» на компьютерах с процессором КР580, по видимому, является отечественной разработкой, и была применена для «Специалиста» А. Волковым. «Орион-128» по сути является  «Специалистом» со второй банкой ОЗУ и на мой взгляд было не очень красиво в публикации не упомянутьЮ что основная идея принадлежит А.Волкову. В чем же заключается идея А. Волкова?
 
Как известно машинный цикл 580-го процессора при обращении к ОЗУ или В/У (без WAIT) состоит из 4-х машинных тактов, причем на такте T1 выдается сигнал SYNC. Чтение и запись осуществляются на тактах T2 и T3. Для регенерации видео-изображения видеоадаптеру достаточно одного обращения к ОЗУ за два машинных  такта.
 
Для реализации прозрачности, процессору для доступа к ОЗУ выделяется всего один такт, а именно T2. Причем для определения такта T2, используется сигнал SYNC, который всегда формируется в такте T1. Для этого сигнал SYNC просто защёлкивается тактом F2 процессора в D-триггер (D13.2), т.е задерживается на один такт и полученный сигнал (называемый DSYNC) используется для разрешения процессору доступа к ОЗУ.
 
Таким образом процессор имеет право читать и записывать в ОЗУ только во время  такта T2, что не совсем корректно, т.к если сигнал /RD почти совпадает с периодом T2, то сигнал /WR начинается в середине T2 и продолжается в такте T3 (он как бы  укорачивается для ОЗУ вдвое, но динамическим ОЗУ этого достаточно).
 
Разработчики компьютеров на Z80 не могли воспользоваться этой идеей, т.к в нем нет сигнала  SYNC, именно поэтому во всех компьютерах на Z80 используется WAIT, т.е ОЗУ непрозрачно. Разобравшись в принципе работы «Ориона», нам удалось реализовать на этом же принципе прозрачное ОЗУ с процессором Z80. Для формирования сигнала DSYNC используется то, что в Z80 сигнал /MREQ начинается уже в такте Т1.
 
В предлагаемой схеме отсутствующий сигнал SYNC эмулируется из сигналов /MREQ и /RFSH с помощью простейшей схемы. Однако если в КР580 сигнал /RD длится только такт T2, то в Z80 сигналы /RD и /WR длиннее. Если для записи в ОЗУ это не существенно, то для чтения приводит к ошибке: такт T2 закончился, буфера ОЗУ закрылись, а Z80 еще читает данные с шины.
В «Орионе» это усугубляется тем, что в отличие от «Специалиста» SYNC «защелкивается» более ранним сигналом (не F2, т.е и буфера закрываются раньше), а также отличающейся логикой управления буферами. Из-за этого при установке Z80 на «Орион» приходится дополнительно задерживать сигналы управления буферами ОЗУ, а именно на 9 «ноги» буферов ОЗУ D49 и D50 вешать емкость 2500-3000 пф на землю (а вот на «Специалисте» это делать не требовалось). В качестве такта Z80 (CLOCK) используется сигнал F2TTL. Узел прерывания аналогичен узлу запроса немаскируемых прерываний «зоновского клона ZX-Spectrum».
 
Обратите внимание, что плата формирует сигналы чтения и записи в ОЗУ (MEMW и MEMR) неинвертированные. Сигнал MEMR соответствует сигналу DBIN КР580, а что касается сигнала /WR его КР580 формирует уже инвертированным, поэтому на основной плате следует исключить лишний инвертор D59.2 (не указанные выводы D59.3 это контакты 5 и 6). Сигнал SND с платы Z80CARD — это звук, он соответствует сигналу INTE КР580.
 
Сигналы ROM1 и ROM2 это сигналы для чтения основного и дополнительного ПЗУ по адресу F800, подключаются к 20 ногам этих ИМС (если не планируется ставить 2-е ПЗУ, то и не надо трогать 20-й вывод ПЗУ, при этом всегда будет одна страница ПЗУ F800). На микросхеме D2 реализован дополнительный системный регистр (доступный только по OUT FB), управляющий прерыванием и адресацией ОЗУ.
 
ИМС D4 - мультиплексор обеспечивающий формирование логических адресов A15, A16, A17. D4/15 подключите к земле, а D4/2 к сигналу X15. Сигналы X15, X16 и X17 это физические адреса. X15 формируется процессором, а X16 и X17 это сигналы из регистра управления банками ОЗУ D18.1 (OUT F9). Сигналы A16 и A17 должны подаваться на основную плату вместо сигналов снимаемых ранее с D18.1/15 и D18.1/16 соответственно (т.е отрезать эти выводы от печатных проводников).
 
Необходимо также подать на плату сигналы инверсный сброс (/RES) и кадровые синхроимпульсы (KSI). Сигналы F8, F9, FA это «чип-селекты» системных регистров, они подаются на основную плату вместо сигналов формируемых ранее дешифратором D27 (ИД4), а именно D27/9 F8, D27/10 F9, D27/11 FA.
 
ИМС D6 это регистр бордюра. Сигнал V1 используется для индикации (светодиод «РУС/ЛАТ», это важно для владельцев МС7007, в схеме включения которой нет индикации). Для работы с Z80CARD вы можете использовать Мониторы-2 или 3, однако при этом не будет звуковой индикации (в Z80 нет сигнала INTE, кстати это очень неразумно использовать прерывания для звука).
 
Поэтому целесообразно подпрограмму BEEP (F83F) в Мониторе переделать (это очень просто сделать, новая п/п 14 байт, вместо 27 у «Ориона»). Имеется вариант Монитора-3 (для обоих клавиатур) для доработанного до Z80 «Ориона». В нем, благодаря замене 3-х байтовых переходов 2-х байтовыми (JR), удалось разместить, кроме собственно Монитора-3 еще и загрузчик НГМД, а также доработать п/п-мы F836/F839 (они работают теперь со всем ОЗУ и не «теряется» по 4 кб ОЗУ в каждой банке впустую).
 
<center><u><big>Поэтапный порядок переделки</big></u></center>
 
1. Включите свой «Орион-128» и убедитесь что всё работает. Выключите питание и с помощью маленьких кусачек выкусите процессор КР580 (больше он вам не понадобится, а сохранить печать важнее).
 
2. Удалите печатные проводники от контактов КР580 с номерами: 11, 13, 14, 18, 21, 22, 23, 24 и 28. Эти сигналы не требуются Z80 и через эти контакты на плату Z80CARD будут подаваться другие сигналы.


3. Удалите перемычку D59/4-D59/5 и соедините D59/5 с 18 контактом D19 (КР580).
3. Удалите перемычку D59/4-D59/5 и соедините D59/5 с 18 контактом D19 (КР580).


4. Резистор R10 замените на 220 ом и вместо +12 вольт подайте на него +5 вольт (F2TTL). Резистор R11 можно совсем удалить (см. ниже).
4. Резистор R10 замените на 220 Ом и вместо +12 вольт подайте на него +5 вольт (F2TTL). Резистор R11 можно совсем удалить (см. ниже).


5. Соедините D18.2/8 с D19/13 (/RES)
5. Соедините D18.2/8 с D19/13 (/RES)


6. Подпаяйте проводники от Z80-card ко всем 40 контактам D19 (КР580)
6. Подпаяйте проводники от Z80CARD ко всем 40 контактам D19 (КР580)


7. Между 9 и 10 контактами буферов ОЗУ (ВА86) включите емкости 2700 пф
7. Между 9 и 10 контактами буферов ОЗУ (ВА86) включите емкости 2700 пф


8. На 4 ногу DA1 (УД6) вместо −5 вольт подайте землю.
8. На 4 ногу DA1 (УД6) вместо -5 вольт подайте землю.
 
9. Установите в панель ПЗУ Монитор-1 или журнальный тест ОЗУ (ж.Радио 02.1991) и подайте питание (теперь только +5 вольт).
 
Добейтесь работы Монитора-1 или прохода теста ОЗУ. Если плохой сброс увеличьте емкость C2 до 1,5-2 мкф (керамич.). Иногда требуется подобрать ёмкость в формирователе сигнала «SYNC» (270 пф) и емкости для задержки «/OE» 580ВА86. Монитор-3 (2) не будет пока работать, т.к он использует команды OUT для работы с В/У, а Z80 в отличие от КР580 выставляет адреса внешних устройств только на младшей половине адресов.


9. Установите в панель ПЗУ Монитор-1 или тест-ОЗУ (Радио, 2, 1991) и подайте питание (теперь только +5 вольт).
Можно реализовать второй вариант «формирователя DSYNC» (лучший) для чего переключить такт (CLOCK) с «F2TTL» на «F1TTL», в формирователе DSYNC на входе D13/12 убрать дифф.цепочку (закоротить емкость 270 пф, убрать земляной резистор 1К) и на плате «Ориона» у триггера D13 соединить R-вход (13 нога) с D-входом (12 нога). При таком варианте не требуется подключать ёмкости на «/OE» буферов. К сожалению, выпущенная печ.плата Z80CARD выполнена по старому (специалистовскому) варианту, но как видите отличие этих вариантов незначительно и поэтому выбор за вами.


Добейтесь работы Монитора-1 или работы теста ОЗУ. Если плохой сброс увеличить емкость C2 до 1,5-2 мкф (керамич.). Иногда требуется подобрать емкость в формирователе сигнала «SYNC» (270 пф) и емкости для задержки «OE» 580ВА86. Монитор-3 (2) не будет пока работать, т.к он использует команды OUT для работы с ВУ, а Z80 в отличие от КР580 выставляет адреса внешних устройств только на младших адресах. Можно реализовать второй вариант «подключения Z80» (лучший) для чего переключить такт (CLOCK) с «F2TTL» на «F1TTL», в формирователе SYNC убрать диф. цепочку (закоротить емкость 270 пф, убрать резистор 1к) и на плате «Ориона» у триггера D13 подключить R-вход (13 нога) к D-входу (12 нога). При этом не требуется подключать емкости на «OE». К сожалению плата Z80-card выполнена по старому (Специалистовскому) варианту, но как видите отличие этих вариантов весьма незначительно и поэтому выбор за вами.
Новый вариант формирователя DSYNC (с соединением R и D входов триггера) лучше, т.к не требует настройки, в то время как про первый вариант были сообщения, что для Z80 некоторых фирм требовалась подборка константы RC-цепочки.


Чтобы работали команды OUT выключите питание и выполните:
Чтобы работали команды OUT выключите питание и выполните:


10. Отрезать у D27 печатные проводники от контактов: 9, 10, 11 и эти печатные проводники соединить с сигналами F8, F9, FA на разъеме X1 платы Z80-card.
10. Отрезать у D27 печатные проводники от контактов: 9, 10, 11 и эти печатные проводники соединить с сигналами F8, F9, FA на разъеме X1 платы Z80CARD.
 
11. Установите Монитор-3, включите питание и добейтесь работы компьютера в полном объеме. Все должно работать также как и до переделки.
11. Установите Монитор-3, включите питание и добейтесь работы компьютера в полном объеме. Все должно работать также как и до переделки.


Строка 36: Строка 83:
12. Отрезать D18/15 и D18/16 от печатных проводников и эти печатные проводники соединить с D19/23 и D19/21 соответственно (A16 и A17). Сами же выводы D18/15 и D18/16 соединить с D19/24 и D19/22 соответственно
12. Отрезать D18/15 и D18/16 от печатных проводников и эти печатные проводники соединить с D19/23 и D19/21 соответственно (A16 и A17). Сами же выводы D18/15 и D18/16 соединить с D19/24 и D19/22 соответственно


13. Отрезать у ПЗУ D22 20 контакт от печатного проводника и соединить с D19/11 (ROM1). Если у вас уже есть наша версия расширенного BIOS, то на ПЗУ с маркировкой 0, напаяйте ПЗУ с маркировкой 1. Все контакты кроме 20 в «параллель». Установите это «удвоенное ПЗУ» в панель и соедините D19/8 (ROM2) с отогнутой 20 ногой верхнего ПЗУ. Если у вас еще нет нашей версии BIOS, опять поставьте свой «старый» Монитор (2 или 3) и включайте питание. Добейтесь полной работы компьютера, проверьте возможности вывода звука, коммутации банок ОЗУ как в режиме «128» (сигнал MZ=1), так и в режиме «Z» (MZ=0). Учтите, что сигнал MZ (это D2/15) по сбросу равен 0, т.е по сбросу компьютер находится в режиме «Z». Для работы со всеми старыми программами необходимо записать в порт FB (для настройки можете это сделать аппаратно) в разряде D7 единицу (доработанный Монитор это делает при инициализации). После того, как убедитесь в полной исправности переходите к пункту 14.
13. Отрезать у ПЗУ D22 20 контакт от печатного проводника и соединить с D19/11 (ROM1). Если у вас уже есть наша версия расширенного BIOS, то на ПЗУ с маркировкой 0, напаяйте ПЗУ с маркировкой 1. Все контакты кроме 20 в «параллель». Установите это «удвоенное ПЗУ» в панель и соедините D19/8 (ROM2) с отогнутой 20 ногой верхнего ПЗУ. Если у вас еще нет нашей версии BIOS, опять поставьте свой «старый» Монитор (2 или 3) и включайте питание.
 
Добейтесь полной работы компьютера, проверьте возможности вывода звука, коммутации банок ОЗУ как в режиме «128» (сигнал MZ=1), так и в режиме «Z» (MZ=0). Учтите, что сигнал MZ (это D2/15) по сбросу равен 0, т.е по сбросу компьютер находится в режиме «Z». Для работы со всеми старыми программами необходимо записать в порт FB (для настройки можете это сделать аппаратно) в разряде D7 единицу (Монитор для Z80CAD-I это делает при инициализации). После того, как убедитесь в полной исправности переходите к пункту 14.
 
14. Для того, чтобы работали некоторые «старые» игры, переключающие регистры F8, F9, FA командой «STA», можете установить вместо 155ЛА7 ИМС 155ЛИ1 (см.схему). Эта микросхема обеспечит «попадание» в системные регистры, командами STA F800/F900/FA00, и тем самым работу всех программ. Так как программ с «некорректными» командами OUT для попадания ими в ОЗУ всего две: «Moon-fox» и «Silent-service», то делать дополнительные аппаратные затраты только ради них не имеет смысла.
 
15. Подключите контроллер НГМД и проверьте его работу. Надежность его работы должна значительно повыситься. При процессоре Z80 даже можно отключить узел добавляющий такт WAIT при обращении в порт КНГМД. Это потому, что Z80 выдаёт более длительные сигналы /RD и /WR, чем процессор КР580ВМ80 без системного контроллера. В вот ВК28 формирует сигналы /RD и /WR более длительные, потому при ВК28 для КНГМД не нужно вводить такты WAIT (потому «Специалист» с ВК28 работал с дисководом надёжнее, чем без ВК28).
 
PS: на доработанном таким образом «Орионе» будет прекрасно работать CP/M-80 с BIOS SP-Computer Club-а (1990). Данная CP/M в отличие от так называемого «авторского варианта CP/M» работает в дополнительной странице ОЗУ, там же, где расположен экранный буфер атрибутов цвета. Это целесообразно, т.к при этом для CP/M доступно 60К, при этом работают все программы (фирменным программам и компиляторам ЯВУ мало 48К).
 
Однако при CP/M в странице 1 нельзя использовать цвет (для CP/M это не вредит, т.к CP/M не поддерживает ни графику, ни цвет и в CP/M нет цветных программ).  


14. Для того, чтобы работали некоторые «старые» игры, переключающие регистры F8, F9, FA командой «STA», можете установить вместо 155ЛА7 ИМС 155ЛИ1 (см.схему). Эта микросхема обеспечит «попадание» в системные регистры, командами STA (F8/F9/FA), и тем самым работу всех «корректных» программ. Так как программ с «неприличными» командами типа (OUT F4, OUT F2) всего две: «Moon-fox» и «Silent-service» (авторский Бэйсик делает OUT 0F), то делать дополнительные аппаратные затраты только ради них бессмысленно.
Доработанный таким образом «Орион» легко позволяет устранить этот недостаток, т.е можно «отдать» для CP/M 60К ОЗУ и в то же время иметь цвет. Для этого достаточно немного изменить дисковый загрузчик и подпрограмму F300 (используемую CP/M для вызова п/п-м из ПЗУ F800). Дисковый загрузчик должен перед началом работы включить экран с 0, включить доп.диспетчер (режим «Z») и по адресам 0-7FFF скоммутировать старшую страницу (32К) из основной банки. Тем самым для CP/M создаётся непрерывное ОЗУ 60К и в то же время для CP/M-программ возможен цвет.


15. Подключите контроллер НГМД и проверьте его работу. Надежность работы должна значительно повыситься. Если все в порядке выключите питание и переходите к самому важному пункту 16.
Следует сразу же заметить, что вводить цвет и графику в программы, написанные для CP/M, стоит только корректно т.е расширяя управляющие коды дисплея («искейп»-последовательности), а не так как это делают авторы «Ориона» в своих программах (они непосредственно «лезут» в экран для того, чтобы нарисовать простейшие рамки, вместо того, чтобы использовать «псевдографику», как это делается в промышленных ЭВМ). При этом при запуске программы подгружается расширение ROM-BIOS (драйвер), которое обеспечивает обработку дополнительных упр.кодов (управление цветовыми режимами, цветом символов и фона, загрузкой знакогенераторов/фонтов; можно посмотреть как это делается в ROM-BIOS «ИРИШИ»).


16. Идите на почту и отправьте мне конверте) вашу «благодарность» (в размере 50 руб). В ответ вы получите каталог программ адаптированных для «Орион-128» от «Синклера».
Некоторые из этих функций (а именно, отсутствующие в ПЗУ искейп-коды VT52) обеспечивает расширенный BIOS (2-х банковое ПЗУ F800) для описанного варианта доработки «Ориона». Заметим, что получение цвета и CP/M на 60К на недоработанном «Орионе» возможно только после установки дополнительной 3-ей банки ОЗУ (2 TTL ИМС диспетчера ОЗУ явно дешевле, чем 8 шт. 565РУ5 + буфер) и переноса DOS туда. Но перенос DOS в третью банку ОЗУ бесперспективен, т.к далеко не у всех даже спустя пару лет ОЗУ будет расширено.


PS: на доработанном таким образом «Орионе» будет прекрасно работать CP/M-80 использующая BIOS версии SP-Computer Club-а (1990). Данная CP/M в отличие от т.называемого «авторского» варианта CP/M работает в дополнительной странице ОЗУ, там же где расположен «экран атрибутов цвета» (это целесообразно, т.к при этом для CP/M используется 60к, при этом работают все программы; трансляторам с языков высокого уровня мало 48к). Однако при этом в CP/M нельзя использовать цвет (это конечно не страшно, т.к CP/M не поддерживает ни графику ни цвет и в CP/M нет цветных программ). Доработанный таким образом «Орион» легко позволяет устранить этот недостаток т.е можно «отдать» для CP/M 60к ОЗУ и в то же время иметь цвет. Для этого достаточно немного изменить дисковый загрузчик и подпрограмму F300 (используемую CP/M для вызова п/п-м из ПЗУ F800). Дисковый загрузчик должен перед началом работы включить экран N4 (0-2FFF), включить режим «Z» и по адресам 0-7FFF скоммутировать старшую страницу (32к) из основной банки. Таким образом мы создаем для CP/M непрерывное ОЗУ 60к и в то же время возможен цвет (графика экрана 0-2FFF основная банка ОЗУ, цвет там же но в дополнительной банке). Следует сразу же заметить, что вводить цвет и графику в программы, написанные для CP/M, можно только корректно т.е расширяя управляющие коды дисплея («искейп»-последовательности), а ни в коем случае не так как это делают авторы «Ориона» в своих программах (они непосредственно «лезут» в экран для того, чтобы нарисовать простейшие рамки, вместо того, чтобы использовать «псевдографику», как это делается всегда). При этом при запуске программы подгружается расширение BIOS (п/п-мы вывода на консоль в ПЗУ это F809h), которое обеспечивает обработку дополнительных упр. кодов (управление цветовыми режимами, цветом символов и фона, загрузкой знакогенераторов/фонтов; можно посмотреть как это делается в драйвере вывода «Ириши»). Некоторые из этих функций обеспечивает расширенный BIOS (2 ПЗУ F800) для описанного варианта доработки «Ориона-128». Получение цвета и CP/M на 60к на недоработанном «Орионе» возможно только после установки дополнительной 3-ей банки ОЗУ (2 ИМС диспетчера ОЗУ явно дешевле чем 8 шт. 565РУ5). Таким образом как с точки зрения игр, так и использования «Ориона» для деловых применений указанная доработка является абсолютно необходимой и вопрос заключается не в том, стоит ли дорабатывать «Орион» по данной инструкции, а в том как это сделать скорее. Для получения доработанной версии BIOS CP/M и документации о других апп. доработках звоните: тел:(812)-106-35-24 (17.00-23.00) или пишите: 192238 Санкт-Петербург а/я 175. Чистяков Владимир, Январь 1992.
Таким образом как с точки зрения игр, так и использования «Ориона» для деловых применений указанная доработка является необходимой. Для получения доработанной версии BIOS CP/M и документации о других апп.доработках звоните: тел:(812)-106-35-24 (17.00-23.00) или пишите: 192238 Санкт-Петербург а/я 175. Чистяков Владимир, Январь 1992.


[[Категория:Орион-128]]
[[Категория:Орион-128]]

Версия от 04:03, 4 августа 2019

Данный материал защищён авторскими правами!

Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей.

Автор: Чистяков Владимир

Источник: http://www.nedopc.org/forum/viewtopic.php?t=8161

Внимание. Данное описание относится к варианту установки Z80 1991 года с помощью платки называемой Z80CARD (впоследствии ставшей Z80CARD-I), которая существенно отличается от представленной на расположенном справа рисунке схемы Z80CARD-II 1993 года. Надеюсь, позднее это несоответсвующее и потому, по сути бесполезное, описание для Z80CARD-I будет заменено.

Заметим, что назначение платки Z80CARD было не столько в замене процессора на более эффективный, а в исправлении недостатков архитектуры «Ориона». А именно - для решения цветовой проблемы и проблемы мизерного объёма резидентного ПЗУ. Частично проблему нехватки объёма ПЗУ решили с помощью внешней доп.платки называемой ROM-диском, но это далеко не одно и то же, т.к только ПЗУ в адресном пространстве позволяет расширять ROM-BIOS.

Цветовая проблема заключается в том, что экранные буфера отнимают ОЗУ в обоих страницах памяти (а не находятся в одной странице, что разумнее). Потому для программ доступно всего 48 кб адресного пространства. Эту проблему Z80CARD решает добавлением второго диспетчера ОЗУ, позволяющего скоммутировать ОЗУ так, чтобы экранные буфера оказались в одной странице ОЗУ. Это стало особенно необходимо для CP/M, требующей 60 кб сплошного ОЗУ. Также данная платка вводит две страницы ПЗУ F800 с окном в 2 кб, что позволяет хранить в резидентном ПЗУ ОС ORDOS или загрузчик с дисковода.

Название Z80CARD заимствовано от названия платки аналогичного назначения для компьютере Apple-II, позволяющей добавить в него второй процессор Z80 и использовать ОС CP/M. Там платка устанавливается в системный слот и не требуется никаких изменений на материнской плате. К сожалению, в ОРИОНЕ не открытая архитектура, потому процессор подключается к контактам старого процессора КР580ВМ80 и требуется ряд дополнительных коррекций на основной плате.

Конструктивно доработка выполняется путем удаления из основной платы центрального процессора КР580ВМ80 и подключения к оставшимся на плате контактным точкам небольшой дополнительной платы «Z80CARD». На этой плате размещается новый центральный процессор Z80, элементы обеспечивающие его работу и прерывания, доработанный узел диспетчера ОЗУ, порт для управления расширенным ПЗУ, а также необязательный узел регистра бордюра. Кроме подключения доп.платы «Z80CARD» на основной плате необходимо выполнить несколько доработок (разрезов и соединений).

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

Для начала разберёмся в том, как работает стандартный «Орион-128». В «Орионе» используется оригинальная идея из «Специалиста», позволяющая обеспечить работу процессора в режиме так называемого «прозрачного ОЗУ», что означает, что ОЗУ доступно процессору всегда, видеоадаптер не мешает процессору обращаться для чтения или записи ОЗУ.

При этом реальное быстродействие программы определяется только быстродействием самого процессора, использованным тактом процессора и самой программой (т.е набором команд данной программы). Это большое преимущество, позволяющее создавать программы реального времени, т.к всегда можно рассчитать сколько машинных тактов будет исполняться любая часть программы.

Для сравнения, непрозрачное ОЗУ имеет ЭВМ «Ириша», где прозрачность ОЗУ всего 30%, что означает, что 70% обращений процессора приходятся на занятые циклы и процессор останавливается WAIT-ом. Из-за этого в «Ирише» эффективный такт CPU падает на 40%. Все остальные имеющиеся в стране 8-ми разрядки не обладают прозрачным ОЗУ, например, «ZX-48K», «Вектор», «Львов», «РК86», и из-за непрозрачности ОЗУ имеют эффективный такт на 20% ниже клока процессора.

Идея получения «прозрачного ОЗУ» на компьютерах с процессором КР580, по видимому, является отечественной разработкой, и была применена для «Специалиста» А. Волковым. «Орион-128» по сути является «Специалистом» со второй банкой ОЗУ и на мой взгляд было не очень красиво в публикации не упомянутьЮ что основная идея принадлежит А.Волкову. В чем же заключается идея А. Волкова?

Как известно машинный цикл 580-го процессора при обращении к ОЗУ или В/У (без WAIT) состоит из 4-х машинных тактов, причем на такте T1 выдается сигнал SYNC. Чтение и запись осуществляются на тактах T2 и T3. Для регенерации видео-изображения видеоадаптеру достаточно одного обращения к ОЗУ за два машинных такта.

Для реализации прозрачности, процессору для доступа к ОЗУ выделяется всего один такт, а именно T2. Причем для определения такта T2, используется сигнал SYNC, который всегда формируется в такте T1. Для этого сигнал SYNC просто защёлкивается тактом F2 процессора в D-триггер (D13.2), т.е задерживается на один такт и полученный сигнал (называемый DSYNC) используется для разрешения процессору доступа к ОЗУ.

Таким образом процессор имеет право читать и записывать в ОЗУ только во время такта T2, что не совсем корректно, т.к если сигнал /RD почти совпадает с периодом T2, то сигнал /WR начинается в середине T2 и продолжается в такте T3 (он как бы укорачивается для ОЗУ вдвое, но динамическим ОЗУ этого достаточно).

Разработчики компьютеров на Z80 не могли воспользоваться этой идеей, т.к в нем нет сигнала SYNC, именно поэтому во всех компьютерах на Z80 используется WAIT, т.е ОЗУ непрозрачно. Разобравшись в принципе работы «Ориона», нам удалось реализовать на этом же принципе прозрачное ОЗУ с процессором Z80. Для формирования сигнала DSYNC используется то, что в Z80 сигнал /MREQ начинается уже в такте Т1.

В предлагаемой схеме отсутствующий сигнал SYNC эмулируется из сигналов /MREQ и /RFSH с помощью простейшей схемы. Однако если в КР580 сигнал /RD длится только такт T2, то в Z80 сигналы /RD и /WR длиннее. Если для записи в ОЗУ это не существенно, то для чтения приводит к ошибке: такт T2 закончился, буфера ОЗУ закрылись, а Z80 еще читает данные с шины.

В «Орионе» это усугубляется тем, что в отличие от «Специалиста» SYNC «защелкивается» более ранним сигналом (не F2, т.е и буфера закрываются раньше), а также отличающейся логикой управления буферами. Из-за этого при установке Z80 на «Орион» приходится дополнительно задерживать сигналы управления буферами ОЗУ, а именно на 9 «ноги» буферов ОЗУ D49 и D50 вешать емкость 2500-3000 пф на землю (а вот на «Специалисте» это делать не требовалось). В качестве такта Z80 (CLOCK) используется сигнал F2TTL. Узел прерывания аналогичен узлу запроса немаскируемых прерываний «зоновского клона ZX-Spectrum».

Обратите внимание, что плата формирует сигналы чтения и записи в ОЗУ (MEMW и MEMR) неинвертированные. Сигнал MEMR соответствует сигналу DBIN КР580, а что касается сигнала /WR его КР580 формирует уже инвертированным, поэтому на основной плате следует исключить лишний инвертор D59.2 (не указанные выводы D59.3 это контакты 5 и 6). Сигнал SND с платы Z80CARD — это звук, он соответствует сигналу INTE КР580.

Сигналы ROM1 и ROM2 это сигналы для чтения основного и дополнительного ПЗУ по адресу F800, подключаются к 20 ногам этих ИМС (если не планируется ставить 2-е ПЗУ, то и не надо трогать 20-й вывод ПЗУ, при этом всегда будет одна страница ПЗУ F800). На микросхеме D2 реализован дополнительный системный регистр (доступный только по OUT FB), управляющий прерыванием и адресацией ОЗУ.

ИМС D4 - мультиплексор обеспечивающий формирование логических адресов A15, A16, A17. D4/15 подключите к земле, а D4/2 к сигналу X15. Сигналы X15, X16 и X17 это физические адреса. X15 формируется процессором, а X16 и X17 это сигналы из регистра управления банками ОЗУ D18.1 (OUT F9). Сигналы A16 и A17 должны подаваться на основную плату вместо сигналов снимаемых ранее с D18.1/15 и D18.1/16 соответственно (т.е отрезать эти выводы от печатных проводников).

Необходимо также подать на плату сигналы инверсный сброс (/RES) и кадровые синхроимпульсы (KSI). Сигналы F8, F9, FA это «чип-селекты» системных регистров, они подаются на основную плату вместо сигналов формируемых ранее дешифратором D27 (ИД4), а именно D27/9 F8, D27/10 F9, D27/11 FA.

ИМС D6 это регистр бордюра. Сигнал V1 используется для индикации (светодиод «РУС/ЛАТ», это важно для владельцев МС7007, в схеме включения которой нет индикации). Для работы с Z80CARD вы можете использовать Мониторы-2 или 3, однако при этом не будет звуковой индикации (в Z80 нет сигнала INTE, кстати это очень неразумно использовать прерывания для звука).

Поэтому целесообразно подпрограмму BEEP (F83F) в Мониторе переделать (это очень просто сделать, новая п/п 14 байт, вместо 27 у «Ориона»). Имеется вариант Монитора-3 (для обоих клавиатур) для доработанного до Z80 «Ориона». В нем, благодаря замене 3-х байтовых переходов 2-х байтовыми (JR), удалось разместить, кроме собственно Монитора-3 еще и загрузчик НГМД, а также доработать п/п-мы F836/F839 (они работают теперь со всем ОЗУ и не «теряется» по 4 кб ОЗУ в каждой банке впустую).

Поэтапный порядок переделки

1. Включите свой «Орион-128» и убедитесь что всё работает. Выключите питание и с помощью маленьких кусачек выкусите процессор КР580 (больше он вам не понадобится, а сохранить печать важнее).

2. Удалите печатные проводники от контактов КР580 с номерами: 11, 13, 14, 18, 21, 22, 23, 24 и 28. Эти сигналы не требуются Z80 и через эти контакты на плату Z80CARD будут подаваться другие сигналы.

3. Удалите перемычку D59/4-D59/5 и соедините D59/5 с 18 контактом D19 (КР580).

4. Резистор R10 замените на 220 Ом и вместо +12 вольт подайте на него +5 вольт (F2TTL). Резистор R11 можно совсем удалить (см. ниже).

5. Соедините D18.2/8 с D19/13 (/RES)

6. Подпаяйте проводники от Z80CARD ко всем 40 контактам D19 (КР580)

7. Между 9 и 10 контактами буферов ОЗУ (ВА86) включите емкости 2700 пф

8. На 4 ногу DA1 (УД6) вместо -5 вольт подайте землю.

9. Установите в панель ПЗУ Монитор-1 или журнальный тест ОЗУ (ж.Радио 02.1991) и подайте питание (теперь только +5 вольт).

Добейтесь работы Монитора-1 или прохода теста ОЗУ. Если плохой сброс увеличьте емкость C2 до 1,5-2 мкф (керамич.). Иногда требуется подобрать ёмкость в формирователе сигнала «SYNC» (270 пф) и емкости для задержки «/OE» 580ВА86. Монитор-3 (2) не будет пока работать, т.к он использует команды OUT для работы с В/У, а Z80 в отличие от КР580 выставляет адреса внешних устройств только на младшей половине адресов.

Можно реализовать второй вариант «формирователя DSYNC» (лучший) для чего переключить такт (CLOCK) с «F2TTL» на «F1TTL», в формирователе DSYNC на входе D13/12 убрать дифф.цепочку (закоротить емкость 270 пф, убрать земляной резистор 1К) и на плате «Ориона» у триггера D13 соединить R-вход (13 нога) с D-входом (12 нога). При таком варианте не требуется подключать ёмкости на «/OE» буферов. К сожалению, выпущенная печ.плата Z80CARD выполнена по старому (специалистовскому) варианту, но как видите отличие этих вариантов незначительно и поэтому выбор за вами.

Новый вариант формирователя DSYNC (с соединением R и D входов триггера) лучше, т.к не требует настройки, в то время как про первый вариант были сообщения, что для Z80 некоторых фирм требовалась подборка константы RC-цепочки.

Чтобы работали команды OUT выключите питание и выполните:

10. Отрезать у D27 печатные проводники от контактов: 9, 10, 11 и эти печатные проводники соединить с сигналами F8, F9, FA на разъеме X1 платы Z80CARD.

11. Установите Монитор-3, включите питание и добейтесь работы компьютера в полном объеме. Все должно работать также как и до переделки.

А теперь выключите питание и сделайте последний шаг:

12. Отрезать D18/15 и D18/16 от печатных проводников и эти печатные проводники соединить с D19/23 и D19/21 соответственно (A16 и A17). Сами же выводы D18/15 и D18/16 соединить с D19/24 и D19/22 соответственно

13. Отрезать у ПЗУ D22 20 контакт от печатного проводника и соединить с D19/11 (ROM1). Если у вас уже есть наша версия расширенного BIOS, то на ПЗУ с маркировкой 0, напаяйте ПЗУ с маркировкой 1. Все контакты кроме 20 в «параллель». Установите это «удвоенное ПЗУ» в панель и соедините D19/8 (ROM2) с отогнутой 20 ногой верхнего ПЗУ. Если у вас еще нет нашей версии BIOS, опять поставьте свой «старый» Монитор (2 или 3) и включайте питание.

Добейтесь полной работы компьютера, проверьте возможности вывода звука, коммутации банок ОЗУ как в режиме «128» (сигнал MZ=1), так и в режиме «Z» (MZ=0). Учтите, что сигнал MZ (это D2/15) по сбросу равен 0, т.е по сбросу компьютер находится в режиме «Z». Для работы со всеми старыми программами необходимо записать в порт FB (для настройки можете это сделать аппаратно) в разряде D7 единицу (Монитор для Z80CAD-I это делает при инициализации). После того, как убедитесь в полной исправности переходите к пункту 14.

14. Для того, чтобы работали некоторые «старые» игры, переключающие регистры F8, F9, FA командой «STA», можете установить вместо 155ЛА7 ИМС 155ЛИ1 (см.схему). Эта микросхема обеспечит «попадание» в системные регистры, командами STA F800/F900/FA00, и тем самым работу всех программ. Так как программ с «некорректными» командами OUT для попадания ими в ОЗУ всего две: «Moon-fox» и «Silent-service», то делать дополнительные аппаратные затраты только ради них не имеет смысла.

15. Подключите контроллер НГМД и проверьте его работу. Надежность его работы должна значительно повыситься. При процессоре Z80 даже можно отключить узел добавляющий такт WAIT при обращении в порт КНГМД. Это потому, что Z80 выдаёт более длительные сигналы /RD и /WR, чем процессор КР580ВМ80 без системного контроллера. В вот ВК28 формирует сигналы /RD и /WR более длительные, потому при ВК28 для КНГМД не нужно вводить такты WAIT (потому «Специалист» с ВК28 работал с дисководом надёжнее, чем без ВК28).

PS: на доработанном таким образом «Орионе» будет прекрасно работать CP/M-80 с BIOS SP-Computer Club-а (1990). Данная CP/M в отличие от так называемого «авторского варианта CP/M» работает в дополнительной странице ОЗУ, там же, где расположен экранный буфер атрибутов цвета. Это целесообразно, т.к при этом для CP/M доступно 60К, при этом работают все программы (фирменным программам и компиляторам ЯВУ мало 48К).

Однако при CP/M в странице 1 нельзя использовать цвет (для CP/M это не вредит, т.к CP/M не поддерживает ни графику, ни цвет и в CP/M нет цветных программ).

Доработанный таким образом «Орион» легко позволяет устранить этот недостаток, т.е можно «отдать» для CP/M 60К ОЗУ и в то же время иметь цвет. Для этого достаточно немного изменить дисковый загрузчик и подпрограмму F300 (используемую CP/M для вызова п/п-м из ПЗУ F800). Дисковый загрузчик должен перед началом работы включить экран с 0, включить доп.диспетчер (режим «Z») и по адресам 0-7FFF скоммутировать старшую страницу (32К) из основной банки. Тем самым для CP/M создаётся непрерывное ОЗУ 60К и в то же время для CP/M-программ возможен цвет.

Следует сразу же заметить, что вводить цвет и графику в программы, написанные для CP/M, стоит только корректно т.е расширяя управляющие коды дисплея («искейп»-последовательности), а не так как это делают авторы «Ориона» в своих программах (они непосредственно «лезут» в экран для того, чтобы нарисовать простейшие рамки, вместо того, чтобы использовать «псевдографику», как это делается в промышленных ЭВМ). При этом при запуске программы подгружается расширение ROM-BIOS (драйвер), которое обеспечивает обработку дополнительных упр.кодов (управление цветовыми режимами, цветом символов и фона, загрузкой знакогенераторов/фонтов; можно посмотреть как это делается в ROM-BIOS «ИРИШИ»).

Некоторые из этих функций (а именно, отсутствующие в ПЗУ искейп-коды VT52) обеспечивает расширенный BIOS (2-х банковое ПЗУ F800) для описанного варианта доработки «Ориона». Заметим, что получение цвета и CP/M на 60К на недоработанном «Орионе» возможно только после установки дополнительной 3-ей банки ОЗУ (2 TTL ИМС диспетчера ОЗУ явно дешевле, чем 8 шт. 565РУ5 + буфер) и переноса DOS туда. Но перенос DOS в третью банку ОЗУ бесперспективен, т.к далеко не у всех даже спустя пару лет ОЗУ будет расширено.

Таким образом как с точки зрения игр, так и использования «Ориона» для деловых применений указанная доработка является необходимой. Для получения доработанной версии BIOS CP/M и документации о других апп.доработках звоните: тел:(812)-106-35-24 (17.00-23.00) или пишите: 192238 Санкт-Петербург а/я 175. Чистяков Владимир, Январь 1992.