Вот и проверь. Разговор идет не о 10 нажатых клавишах, а о клавише, которая при своем нажатии посылает несколько кодов.
Проверил, приходят с интервалом 0.3мс. Соответственно при выключенном SL эффект проявляется в полной мере. Если на реальной машине прямо выводится каждый нечетный символ, а четные потом в обратном порядке, то в EmuStudio прямо выводится только первый символ, а все остальные в обратном порядке.
Это время измеряется в программе Patron-а. Если на клавишу назначена строка символов, то ПП посылает их друг за другом. Все зависит в данном случае от быстродействия программы в ПП. В UKNCBTL, судя по измерениям этой программы, ЦП работает с такой же скорость, как и на реале. А так в UKNCBTL команды в ПП выполняются в 1,28 раз медленнее чем в ЦП, то и получается 1мс. Но в ПП в ПЗУ команды выполняются быстрее, чем в ОЗУ ЦП, поэтому на реале 0.6мс.
Точность измерения пропорциональна параметру CPU SPEED, который измеряется первым.
Именно на это число делится значение циклического счётчика.
Когда CPU SPEED == 5 - это означает, что точность измерения ~ 20% ( 1/5 ).
Когда у меня в эмуляторе получается CPU SPEED == 4, то задержка, измеренная при CPU SPEED == 3 как 1.6 ms - превращается в 1.2 ms
Хе.
Код:RSX-11M-PLUS V4.6 BL87 1024.KW System:"KOPOBA"
>RED DU:=SY:
>RED DU:=LB:
>RED DU:=SP:
>MOU DU0:"RSX11MPBL87"
>@DU:[1,2]STARTUP
>; PLEASE NOTE
>;
>; If you have not yet read the system release notes, please do so
>; now before attempting to perform a SYSGEN or to utilize the new
>; features of this system.
>;
>;
>* Please enter time and date (Default:04-MAR-2012 15:25) [S]: ^Z
>@ <EOF>
>LOA MY:/VEC
>CON ONL ALL
>ALL MY
ALL -- MY0: Now allocated
>MOU MY:/FOR
>INI MY:TEST
Searching for bad block descriptor file
INI -- Failed to read bad block file
>DMO MY:
15:25:33 *** MY0: -- Dismount complete
DMO -- TT0: dismounted from MY0: *** Final dismount initiated ***
>MOU MY:TEST
>DEV /MA
DU0: Public Mounted Loaded Label=RSX11MPBL87 Type=RA60
MU0: Loaded Type=TU81
MY0: TT0: - Private Mounted Loaded Label=TEST Type=UNKN
MY1: Loaded Type=UNKN
MY2: Loaded Type=UNKN
MY3: Loaded Type=UNKN
>PIP MY:/FR
MY0: has 1573. blocks free, 27. blocks used out of 1600.
Largest contiguous space = 798. blocks
92. file headers are free, 5. headers used out of 97.
>
Относительно перехода процессора 11/83 в режим KERNEL и обратно у меня сложилось следующее впечатление:
1. При любом запуске блока прерываний - устанавливается режим KERNEL и если предыдущим режимом был режим USER - запоминается значение SP.
2. Если в результате любой последующей команды значение SP становится больше запомненного - устанавливается режим USER.