Цитата Сообщение от Titus Посмотреть сообщение
Я думаю, что практически нет смысла использовать запись в регистр плана 0, если видео-ОЗУ расположено в доступной части ОЗУ ПП (ниже адреса 0x8000, или же ниже адреса регистров 0xFE00, если страницы ОЗУ спроецированны в верхнюю память). И тут несколько причин:
1. Байтовая запись медленная из-за фиктивного чтения.
2. Словная запись медленная, т.к. занимает двойное время, но записывает один байт.
3. И, наконец, запись в регистр адреса планов (а ведь туда надо записать адрес) - это ОЧЕНЬ МЕДЛЕННАЯ операция, требующая чтения ОЗУ ПП, ОЗУ ЦП, и при этом еще и подтормаживающая в это время ЦП.

Словом, я бы рекомендовал программистам никогда не использовать запись в регистр планов 0.
Медлительность сохранится и при прямой записи. При байтовой записи также будет фиктивное чтение, а чтение из ОЗУ всегда будет за два прохода, надо два байта прочесть, медленно однако. Запись тоже будет за два прохода, т.к. ОЗУ стоит на одной ноге. Да и к тому же при маппинге страниц ОЗУ на адреса выше 0100000, ПЗУ выше 0120000 не отключить, соответственно можно только применять команды MOV(B), CLR(B).