В плату войдёт новый полностью переделанный менеджер памяти 4 МБ. Вот его схема:
![]()
Кардинальное отличие его в том, что в старом нужно было через BIOS переключать стандарты расширения памяти, можно было их комбинировать между собой, было доступно 16 комбинаций для 3-х портов: #1FFD, #7FFD и #DFFD. Мультиплексирование было сделано после регистров портов.
В новой схеме переключение стандартов не нужно делать вообще, при этом доступны те же 3 порта расширения: #1FFD, #7FFD и #DFFD. Мультиплексирование сделано перед триггерами расширения ОЗУ.
Доступные конфигурации:
Pentagon-512: #7FFD, биты 6, 7 (5-й бит выполняет стандартную блокировку всех портов расширения памяти, превращая компьютер в 48-й);
Pentagon-1024: #7FFD, биты 6, 7, 5;
Profi-1024: #DFFD, биты 0, 1, 2;
Kay-1024: #1FFD бит 4, #7FFD бит 7, #1FFD бит 7;
Phoenix-2048: #1FFD бит 4, #7FFD бит 7, #1FFD биты 6, 7;
Pentagon-4096: #1FFD бит 4, #7FFD бит 7, #1FFD биты 6, 7, 5.
Т.к. из BIOS-а ушло управление конфигурацией памяти и осталась опция "включение блокировки #7FFD бит 5", то было целесообразно перенести все опции блокировок на порт BIOS #FC37.
Новое назначение портов BIOS:
#FC37 - Управление блокировками:
бит 0 - включение запрета записи в микросхему CMOS;
бит 1 - включение блокировки шины ZX-Bus+3, если включен стандартный режим;
бит 2 - включение блокировки шины NemoBus, если включен режим +3;
бит 3 - назначение бита 5 #7FFD: 0 = расширение памяти, 1 = блокировка всех портов (48-й режим);
бит 4 - запрет переключения портов BIOS #FC37 и #FD37 (защита конфигурации BIOS от вмешательства);
бит 5 - резерв;
бит 6 - включение режима записи Флеш-ПЗУ;
бит 7 - включение режима +3.
#FD37 - Управление теневым ОЗУ (без изменений)
#FE37 - Расширение видеорежимов (без изменений)
#FF37 - Управление ПЗУ:
бит 0 - 0 = ПЗУ BIOS, 1 = ПЗУ Спектрум;
бит 1 - сброс триггера Gluk Reset Service;
бит 2 - номер страницы ПЗУ BIOS;
бит 3 - резерв;
бит 4 - резерв;
бит 5 - резерв;
бит 6 - резерв;
бит 7 - резерв.
Так же из схемы удалил менеджер памяти +3, который используется только в ОС CP/M+3, которым всё-равно не получилось бы воспользоваться за неимением контроллера дисковода +3. Для DivIDE этот менеджер памяти не нужен.
Полная принципиальная схема после внесённых изменений:
![]()






Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 

Profi must live!

