Цитата Сообщение от Mick
На счет #7FFD я про порт знаю, а вот как страницы разбиваются? А про порт #1FFD я только слышал и ни чего больше.
В системе назначения бит портов очень много путаницы и все зависит от конкретной машины.
1 Стандартный порт Spectrum128 #7FFD:
D0-D2 - номер страницы ОЗУ в двоичном коде (0-7), проецируемой в область #C000-#FFFF;
D3 - видеообласть (5 или 7 страница);
D4 - ПЗУ (Basic128 или Basic48);
D5 - защелка 48K режима.
D6, D7 не задействованы.
После сброса расположение фрагментов памяти следующее:
#0000-#3FFF - ПЗУ Basic128
#4000-#7FFF - страница 5
#8000-#BFFF - страница 2
#C000-#FFFF - страница 0
Страница видеообласти существует автономно и не требует обязательного отображения в адресном пространстве CPU, в конкретный момент времени.
2 Впоследствии для Пентагона стандарт дополнился так:
D5,D7,D6,D2,D1,D0 - номер страницы ОЗУ (0-64), т.е. 1024К (биты расставлены в порядке от старшего к младшему). Защелка 48K режима упразнена. В более раннем стандарте было 512К и защелка присутствовала.
3 Порт #1FFD позаимствован с амстрадовской машины, но назначение бит для Spectrum +3 и Scorpion абсолютно не соответствуют.
В Scorpion256 и KAY256 за дополнительный разряд адреса страницы отвечает D4 порта #1FFD. Таким образом выборка страницы памяти происходит по двум портам:
#7FFD и #1FFD. Дальнейшее расширение памяти в Scorp'e и KAY'e шло автономно. И там появились дополнительные заморочки.
4 В KAY адрес страницы опеределялся так:
D7 #7FFD, D7 #1FFD, D4 #1FFD, D2 #7FFD, D1 #7FFD, D0 #7FFD.
Вот и скажите после этого, что Nemo не извращенец.
5 У Scorpion было устройство GMX, с 2048К на борту. Какие там разряды за что отвечали сказать не могу, но в выборке страницы памяти учавствовали аж 3 порта - #7FFD, #1FFD, #DFFD (порт Профи)!