Вот и я почти об том же. На самом деле помимо ввода, от Монитора важен ещё и вывод (F809h и F818h), ну и разумеется самая главная п/п - F800h
Тем не менее, в играх используют прямой опрос клавы в обход Монитора, ибо требуется скорость и не требуется антидребезг.
Как пользователь, я не заметил разницы. А вот перехват комбинаций УС+НР+F4 и т.п. - это для меня была подстава! Причём даже не на уровне F803h, а аж в F81Bh!
Вот именно. В связи с этим вообще не вижу смысла его трогать, все свои навороты прекрасно можно делать в ПО "поверх" п/п Монитора. В т.ч. хитрые загрузчики с нестандартных носителей.
А что не так с сохранением значения RamTOP в системной переменной? "Так" - это как?
План вполне конкретный и очевидный, имхо. Т.к. ОЗУ для программ пользователя и всяких драйверов в общем-то одно - нулевая страница, то для защиты этих самых драйверов нужен механизм. Собственно он и был придуман: простой и логичный.
С Монитором Ориона-ПРО есть одно, но большое счастье - он в природе один единственный! Слава богу, что руки рационализаторов до него не добрались. Хоть тут какая-то стабильность, и при написании софта можно быть уверенным, что не всплывёт какой-то "сюрприз" при обращении к стандартной п/п из-за того, что у пользователя экзотический Монитор.
Я так понимаю, что он сделан на базе какого-то М3. Так что не удивительно.
Я плевался трижды!
1). Пресловутый RamTOP, причём ладно бы подменили на что-то безобидное, так нет, поставли запись чего-то в произвольную страницу ОЗУ! Для чего это делать средствами Монитора?..
2). Опрос клавиатуры F81Bh. Совершенно замечательная подпрограмма, ибо инвариантна к текущей странице ОЗУ, т.е. её можно вызывать из любой и она корректно работает! В М1 и М2 работает одинаково, в М3 работает по-другому. Другие времянки реакции, соответственно при реализации на базе этой п/п своего ввода, курсор мигает по-другому. Реакция на РУС/ЛАТ совершенно иная (в чём разница сейчас уже не вспомню, но помню что громко плевался, когда выяснил). Зачем?! Потом из-за перехвата невозможно пользоваться комбинацией УС+НР+F4... "Спасибо".
3). Область непереключаемого ОЗУ: F300..F3FFh. М2 использовал некоторые документированные участки под системные переменные и стек. М3 "решил" оккупировать другие участки, оптом. "Фича" недокументированная, разумеется. ПО, которое использует это бесценное непереключаемое ОЗУ, вдруг "внезапно" портит мониторный опрос клавиатуры! "Здрасьте, давно не виделись!"
Конечно всё решаемо (жопочасами с дизассемблером наперевес), но "за что?" и ради чего, спрашивается...






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