Ясное дело что пострадала. Автор ведь не случайно поставил в обработке каждой строки вызов обработки ESC-последовательностей.
Могу предположить что от моего изменения кода пропала остановка выполняющейся программы по ESC, а также после еще каких-либо кнопок которые генерят ESC-последовательности. А может и еще чего навернулось связанное с этим.
Что такое EMT 340(8) - оно-же .TTINR - это поместить код нажатой кнопки в R0 и установить флаг С если кнопка не нажата. Вроде как это "быстро" действует. Тем не менее фиг его знает насколько быстро. Я не разбирал потроха RT-11 для УКНЦ.
И если запустить этот васик в rt11.exe (кажется эмулятор Patron'a) который вообще под windows и работать должен с бешеной скоростью - задержка там очень большая тоже есть. То-есть возможно в опросе клавиатуры участвует таймер.
Имхо надо просто автору сказать что мол "тормозит из-за вот этого". (показать в моем посте код для Execute). Он вызывает EMT 340(8) аж два раза.
Посоветовать для УКНЦ (а он кстати чекает машину уж не знаю верно-ли) не делать постоянные вызовы .TTINR когда это не требуется. Тогда правда неясно как из бесконечного цикла выходить (ахах - reset-ом)...
Для УКНЦ можно конечно какие-нибудь специфические регистры заюзать, но это не RT-11 way уже будет.
Ну это как-раз и не странно. Сравнивать эмулятор просто системы RT-11 с эмулятором реального железа это скажем-так - неправильно. (типа соленое круглее чем красное получится).Странно, что под эмулятором BBC Basic почти в 2 раза быстрее, а на УКНЦ в 6 раз медленнее - новая загадка.





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