Profi must live!
Моё железо...
1. Profi 5.06/1Mb(DRAM)+Profi5.06(UP)/HDD/3`5FDD/CF512Mb/SD-CARD
3. Profi 6.2 Rev. B/1Mb/3`5FDD/HDD3.2Gb
4. Profi 5.05(down)/1Mb+Profi 5.03(UP)/Pentagon_Fix
Все укомплектованы:
Profi_ZX-BUS/ZXMC2/NemoIDE/SounDrive[свернуть]
Ссылка на Telegram-канал поддержки пользователей Profi.
Сомневаюсь, скорей всего нет, чем да. Но часть его советов были действительно полезные.
Но были и другие советы, которые я поставил под сомнение:
1) Порт Кемпстон джойстика сделать адресом #DF вместо #1F, но дешифрацию сделать упрощённую, чтобы откликался и на #DF, и на #1F, а для разделения его с Кемпстон мышью, использовать ловушку обращения к порту по короткой адресации, которая в схеме уже есть: при In A,(#DF) чтобы откликался джойстик, а при In A,(BC) - мышка. Цель - доступность джойстика при открытых портах TR-DOS. (Сомнительно).
2) Отказаться от индивидуальных адресов портов BIOS #xx37 и заменить их на #xxF7 с целью упрощения схемы дешифрации портов. Упрощение в реальности получится аж на 1 логический элемент ИЛИ, но самое главное, я считаю, что порты BIOS должны быть полностью независимыми от всех известных портов ZX-Spectrum, поэтому данный совет я отбросил категорически.
3) Отказаться от слота (папа) шины ZX-BUS +3 , заменив его на краевой слот (тоже папа) NemoBus, запаралелив его с мастер-слотом NemoBus, как на Фениксе. (Сомнительно).
4) Переместить слот ISA - модема вверх таким образом, чтобы в верхний слот NemoBus можно было воткнуть расширитель шины NemoBus. Здесь есть несколько препятствий:
а) материнская плата будет стоять в вертикальном корпусе ATX, и за счёт чего вся эта конструкция должна держаться, он так и не объяснил, хотя я несколько раз повторил этот вопрос;
б) по одну сторону от верхнего слота NemoBus будет верхняя плата, это неизбежно, а по другую сторону - другие карты расширения, воткнутые в остальные слоты NemoBus. Каким образом вся эта ёлка должна разделять общее пространство с другими платами, и как при этом собрать корпус ATX, осталось загадкой. Поэтому тоже сомнительно.
Последний раз редактировалось Northwood; 09.08.2020 в 21:03.
С уважением, Александр
В плату войдёт новый полностью переделанный менеджер памяти 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 этот менеджер памяти не нужен.
Полная принципиальная схема после внесённых изменений:
С уважением, Александр
Ты не верно понял. Самые первые 2 варианта в списке описывают 6 и 7 биты порта #7FFD.
Страницы памяти в пределах 1 МБ можно выбирать по любому из трёх стандартов одновременно без никаких дополнительных переключений - Пентагон-512/1024, Профи-1024 и Кай-1024.
Причём, всё это доступно как при установленном модуле памяти 4 МБ, так и 1 МБ.
При установленном модуле памяти 4 МБ доступны два дополнительные бита 6 и 5 порта #1FFD, дополнительно становится доступным конфигурация Scorpion-1024, а так же Phoenix-2048, а так же все 4 МБ.
Но здесь нельзя комбинировать Пентагон-512 + Профи-1024.
Но может лучше вернуть как было - выбор конфигурации памяти через BIOS ? Там можно было делать любые комбинации, но в каждый момент времени доступна только одна из них.
Последний раз редактировалось Northwood; 16.08.2020 в 22:22.
С уважением, Александр
shurik-ua (18.08.2020)
лучше оставить как сейчас - имхо
Northwood, предыдущий менеджер памяти ведь проверен на практике в твоём Пентагоне?
Я за то, чтобы встраивать в новую плату только проверенные на практике доработки.
Profi must live!
Моё железо...
1. Profi 5.06/1Mb(DRAM)+Profi5.06(UP)/HDD/3`5FDD/CF512Mb/SD-CARD
3. Profi 6.2 Rev. B/1Mb/3`5FDD/HDD3.2Gb
4. Profi 5.05(down)/1Mb+Profi 5.03(UP)/Pentagon_Fix
Все укомплектованы:
Profi_ZX-BUS/ZXMC2/NemoIDE/SounDrive[свернуть]
Ссылка на Telegram-канал поддержки пользователей Profi.
Предыдущий менеджер памяти в более простом виде работал у меня в предыдущем компьютере - Pentagon-128, расширенном до 1 МБ, и то без возможности комбинирования нескольких портов. В нём можно было через BIOS Setup выбирать только 1 из 3-х доступных портов - #7FFD, #DFFD/#FDFD и #1FFD.
Собирать ещё какие-то доработки в моём Пентагоне-1024 1.4, расширенном до 4МБ и с кучей бутербродов из микросхем и с паутиной МГТФ, уже практически нереально. Данный узел схемы не представляет какой-нибудь сложности, поэтому я знаю, что он заработает.
Кстати, переделал дешифрацию портов #7FFD, #DFFD, #1FFD, #BFFD и #FFFD по замечаниям, высказанным по поводу работоспособности некоторых музыкальных треккеров, использующих программирование AY через OUT (#FD),A:
Дешифрация портов #7FFD, #BFFD и #FFFD в старшем байте отныне сделана не по трём разрядам A13, A14 и A15, а только по двум - A14 и A15. При обращении к порту #7FFD через OUT (#FD),A, дешифрация #7FFD переводится на более мягкую - в старшем байте только по одному разряду A15.
Дешифрация портов #DFFD и #1FFD в старшем байте отныне сделана не по трём разрядам A13, A14 и A15, а по четырём - A12, A13, A14 и A15. При обращении непосредственно к порту #DFFD, порты AY блокируются.
Кроме этого, изменил назначение битов порта #1FFD:
бит 0 - включение ОЗУ в окно CPU0 (#0000-#3FFF) остаётся неизменным;
бит 1 - отныне безусловное включение 0-й страницы ПЗУ, как в Scorpion ZS-256. Раньше это было на 3-м бите, как было сделано КоЕ в Пентагоне-1024 1.4 по его личному хотению;
бит 2 - тоже без изменений - в режиме "+3" переключает страницы ПЗУ, а в стандартном режиме не производит никаких действий;
бит 3 - отныне инвертирует адресный разряд ПЗУ A15 - как в KAY-1024, но при условии, что не включена безусловно 0-я страница ПЗУ. Раньше безусловно включал 0-ю страницу ПЗУ;
бит 4 - расширение ОЗУ до 256 КБ;
бит 5 - расширение ОЗУ до 4 МБ;
бит 6 - расширение ОЗУ до 2 МБ;
бит 7 - расширение ОЗУ до 1 МБ.
Последний раз редактировалось Northwood; 19.08.2020 в 14:17.
С уважением, Александр
Northwood, а какими битами щелкается память пентагон 512?
Я так и не нашел описания
закидывал по стандарту пентагон 1024 с отбрасыванием старшего бита
но в унриалах это не работало
дальше 8-й страницы не включалось
Конечно же битами 6 и 7, это стандарт. Отбрасывать нужно 5-й бит, потому что на всех компьютерах это бит блокировки верхней памяти, после включения которого ты остаёшься с 48 КБ памяти. Unreal Speccy поддерживает этот стандарт, по крайней мере те версии, которые были у меня до смерти жёсткого диска. Только в Unreale в конфиге нужно выставить тип верхней памяти Pentagon 1024.
Последний раз редактировалось Northwood; 20.08.2020 в 08:24.
С уважением, Александр
NEO SPECTRUMAN (20.08.2020)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)