RUЭВМ
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Октябрь 2020
ПнВтСрЧтПтСбВс
   1234
567891011
12131415161718
19202122232425
262728293031 

Календарь Календарь

Последние темы
» Флейм только по теме "Радио-86РК".
автор barsik Сегодня в 08:51

» BDS-C лучший компилятор для разработки игр РК86
автор barsik Сегодня в 02:02

» Разное
автор Viktor2312 Сегодня в 01:00

» К210. Общая тема по GPIO. Практика.
автор ведущий_специалист Вчера в 19:52

» К210. Общая тема по GPIO. Теория.
автор Viktor2312 Вчера в 15:13

» Kendryte K210 достойный микроконтроллер с ИИ
автор Viktor2312 Вчера в 11:59

» Можно ли на бейсике написать динамичную игру для РК86 ?
автор barsik Вчера в 07:36

» Простые доработки ZX-48К: RAM-монитор в ПЗУ и экран на E000
автор barsik Вчера в 07:35

» Общие вопросы по ПЭВМ Ириша
автор Viktor2312 Ср Окт 28 2020, 19:54

» Радио-86РК: Расширение ПЗУ
автор barsik Ср Окт 28 2020, 08:04

» Язык программирования С.
автор Viktor2312 Вт Окт 27 2020, 23:56

» Радио-86РК: внешние видео-адаптеры
автор ведущий_специалист Вт Окт 27 2020, 17:06

» Улучшение видео возможностей РК86
автор ведущий_специалист Вт Окт 27 2020, 09:25

» Часы на ВЛИ
автор Viktor2312 Вт Окт 27 2020, 05:06

» "Орион-128". Статьи, заметки, очерки, разное...
автор barsik Пн Окт 26 2020, 17:35

» Эмулятор радио 86рк
автор barsik Пн Окт 26 2020, 13:20

» Программирование для РК86
автор barsik Сб Окт 24 2020, 10:52

» Разработка "Радио - РК2019М".
автор barsik Ср Окт 21 2020, 20:33

» БВС-1
автор Viktor2312 Вс Окт 04 2020, 20:58

» 4 Октября. Спутник-1.
автор Viktor2312 Вс Окт 04 2020, 15:49

» Тема для вопросов, консультаций и т. д...
автор Viktor2312 Пт Окт 02 2020, 12:02

» Улучшение цвета Специалиста
автор Viktor2312 Пт Окт 02 2020, 09:50

» ZX Microdrive
автор barsik Вт Сен 29 2020, 02:44

» Трансформатор электронный Taschibra 230/12В 60Вт для галогенных ламп. Перестал работать.
автор Viktor2312 Ср Сен 23 2020, 15:05

» Купил с али БП 12в 100w для питания LED лент подсветки. Проблема
автор Viktor2312 Вс Сен 20 2020, 18:07

Самые активные пользователи за месяц
Viktor2312
ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_l10ОРИОН - Расширение ПЗУ в ОРИОН-128 Voting10ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_r10 
barsik
ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_l10ОРИОН - Расширение ПЗУ в ОРИОН-128 Voting10ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_r10 
ведущий_специалист
ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_l10ОРИОН - Расширение ПЗУ в ОРИОН-128 Voting10ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_r10 
RN1TZ
ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_l10ОРИОН - Расширение ПЗУ в ОРИОН-128 Voting10ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_r10 
freddy
ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_l10ОРИОН - Расширение ПЗУ в ОРИОН-128 Voting10ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_r10 
Atari1974
ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_l10ОРИОН - Расширение ПЗУ в ОРИОН-128 Voting10ОРИОН - Расширение ПЗУ в ОРИОН-128 Vote_r10 

Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск


Расширение ПЗУ в ОРИОН-128

Перейти вниз

ОРИОН - Расширение ПЗУ в ОРИОН-128 Empty Расширение ПЗУ в ОРИОН-128

Сообщение  barsik в Чт Сен 14 2017, 22:41

1
Разработчики ОРИОНА, отвечая на соответствующий вопрос, писали в журнале РАДИО, что в ОРИОНЕ-128 расширение ПЗУ не предусмотрено, а для расширения числа резидентных программ служит ROM-диск.

Но увы, это отнюдь не одно и то же. Потому что в ПЗУ хранится ROM-BIOS и чем больше объём ПЗУ, тем более качественный ROM-BIOS можно иметь. Для сравнения, ROM-BIOS-ы западных 8-ми разрядок, выпущенных во второй половине 80-тых, составляли 64 кб и более (а минимум это 32 кб). Особенно это актуально для машины не имеющей внешней массовой памяти и диспетчера ОЗУ (что позволяло бы грузить расширение ROM-BIOS в ОЗУ). Из-за мизерности объёма ПЗУ, базовый набор драйверов, причём графической машины, оказался даже хуже, чем у текстового РК86, что и предопределило убогость внешнего вида основной массы системных программ ORDOS.

ROM-диск позволяет хранить некоторые резидентные программы, в частности базовую ОС, загрузчик с НГМД и т.п. Если бы, изначально была стандартизована концепция загрузки расширения ROM-BIOS в ОЗУ из ROM-диска, например, за счёт жёсткого резервирования ОЗУ B000...BFFF для этих целей, то ROM-BIOS можно было бы расширять, загружая его при включении ЭВМ из ROM-диска, что эквивалентно расширению ПЗУ. Однако увы, этого сделано не было. А использование в ORDOS и в играх качестве основной банки 0, окончательно похоронило идею загрузки расширения ROM-BIOS в ОЗУ, что впрочем всё-равно нехорошая идея, т.к в банке 0 мало свободного ОЗУ (т.к там экран занимает 12 кб).

Мизерность ПЗУ не являлась бы проблемой, если бы в ОРИОНЕ был диспетчер ОЗУ, позволяющий в небольшом окне (обычно это 16 кб) включать фрагменты памяти дополнительного ОЗУ. Т.к большой ROM-BIOS нужен в основном для обслуживания экрана (работы с цветом, оконности, вывода рамок, разных шрифтов и даже граф.интерфейса), то включение на время работы с экраном в окне 16К соответствующей программы, полностью заменило бы большое ПЗУ.

Оптимально для ОРИОНА в качестве ПЗУ было бы иметь отключаемое ПЗУ 27256 в окне 0...7FFF, что позволяет в объёме 32К уместить комфортабельный ROM-BIOS и существенно повысить качество программ. Такие попытки, кстати, были сделаны, хотя и не для программ в банке 0, а для CP/M, причём в банке 2. Установка доп.ПЗУ 27256 требует монтажа на плате ОРИОНА дополнительной панельки на 28 ног и несколько корпусов, образующих управляющую логику. В 32 кб легко умещаются драйверы 3-х шрифтов 6*10, 7*10 и 8*10, правда они пока существуют только в варианте для Z80.

Конструктивно проще всего ПЗУ расширяется напайкой на ПЗУ РФ2 другой ПЗУ РФ2 (или панельки для её установки, что удобнее при модификациях). Вот схема. ПЗУ 0 включается по сбросу или по записи 0 в порт FC, а альтернативное ПЗУ 2 кб включается записью туда 1. Нет смысла упоминать, что порт FC есть только при процессоре Z80. При КР580 в качестве порта управления ПЗУ можно использовать порт STA FB00 (но не OUT FB).

Исторически именно такой вариант и был первым и применялся на первых платках для установки Z80 (названных впоследствии Z80CARD-I). Это был 1991 год, когда большинство пользователей ещё не имели ROM-диска. Потому загрузка по сбросу ОС на адрес B800 из второго РФ2 решала проблему отсутствия ROM-диска. В Z80CARD-II эта проблема уже не стояла, т.к ROM-диск к тому времени уже стал стандартом для ОРИОНА, поэтому второе ПЗУ РФ2 там уже неиспользовано.

Наличие двух ПЗУ РФ2 позволяло иметь в ЭВМ два ROM-BIOS, переключаемых как программно, так и аппаратно. Но особой пользы наличие 2-х ПЗУ не давало. Для работы прямо из этого ПЗУ использовался так называемый 'Shadowy-Monitor', теневой монитор, преимущество которого было в том, что он делал всё то же, что и M3-EXT, но вообще не занимал ОЗУ. Это даёт кое-какие преимущества программисту, хотя по сути несущественные. Вот этот монитор. Он для Z80 и прошивается в две РФ2 установленные в 2 этажа, переключение портом FC по схеме приведённой выше.

"Звёздный час" второго ПЗУ РФ2 наступил лишь когда был написан эмулятор РК86 на ОРИОНЕ с Z80. Оказалось, что в ПЗУ F800 при работе эмулятора должен находиться ROM-BIOS РК86 (точнее совместимый). Теоретически можно обойтись за счёт транспонирования кодов ROM-BIOS на другие адреса, но для этого, во-первых, нет ресурса скорости CPU, а во-вторых, для этого просто нет ОЗУ в банке 0 (всё впритык, свободного ОЗУ нет).

Решить эту проблему (нехватки ОЗУ) можно существенно переделав эмулятор РК86 на ОРИОНЕ, перенеся код в банку 1 (или 2), где на 12 кб больше свободного места. Я давно хотел перенести эмулятор РК в банку 1, но не для исключения ПЗУ, а для того, чтобы в эмулируемом РК эмулировалось ОЗУ 8400...BFFF. Но даже, если это сделать, то ROM-BIOS РК86 всё-равно придётся иметь в альтернативном ПЗУ F800.
barsik
barsik
Мастер++

Сообщения : 740
Дата регистрации : 2016-11-10
Откуда : С-Петербург

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения