Не, я привел описание работы ПЛМ, а как его использовать уже второй вопрос. Раскладку на стандартные режимы я делал только для сверки с документацией. К тому же, ядро моего собственного эмулятора конфигурируется именно таким образом, как описано в этой таблице, так что стандартный режим или нестандартный для моих собственных целей безразлично.
Смысл в том, что если не сработала ни одна строка ПЛМ, то происходит обращение к ОЗУ, так что эти нюансы работают автоматически. Если мы посмотрим на таблицу, то видно, что выборка УВВ не зависит от сигналов /WR и /RD, поэтому для них возможны и чтение, и запись. А вот клавиатура активизируется только чтением, регистры - только записью, ROM - тоже чтением (точнее, отсутствием записи). Я именно для того и хотел представить логику работы маппера так, чтобы не нужно было делать подобных оговорок, и оно работало само просто при аккуратной реализации этой логики.
---------- Post added 30.12.2009 at 00:45 ---------- Previous post was 29.12.2009 at 23:54 ----------
Да, и есть еще один специфический момент. Старший бит системного регистра отнюдь не брошен. Его значение через инвертор заведено на вход разрешения программирования всех трех микросхем ПЗУ. Пока в нем 0 - все путем, ПЗУ в режиме чтения. Зачем туда писать 1, я так до конца и не понял - возможно, разработчики предполагали функцию внутрисхемного программирования ПЗУ, при некоторых ухищрениях для подачи программирующего напряжения?





Ответить с цитированием