Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Эмуляторы отечественных компьютеров (http://zx-pk.ru/forumdisplay.php?f=61)
-   -   Эмулятор УКНЦ - EmuStudio (http://zx-pk.ru/showthread.php?t=18027)

Titus 17th February 2012 19:20

Кое-что потестил еще на реале.
Где-то на форуме обсуждали, успевают выполниться команды между двумя обработчиками прерываний, или же основная программа будет стоять на месте, пока все прерывания не отработают. Выяснил - программа стоит на месте.
Второе, потестил прерывания для каналов ПП, оказалось, что канал 0, как приемник, так и источник работает иначе, чем 1, и 2. А в частности, если во всех каналах установлены биты БГ и РП, но прерывания запрещены, а потом прерывания разрешили, то будут выполнены прерывания лишь для канала 0 источника и приемника.

form 17th February 2012 19:24

Quote:

Originally Posted by Titus (Post 468386)
Где-то на форуме обсуждали, успевают выполниться команды между двумя обработчиками прерываний

Из прерывания возврат был по RTI или по RTT?

---------- Post added at 21:24 ---------- Previous post was at 21:23 ----------

Хотя по докам KDJ11, RTT влияет только на T-bit.

Patron 17th February 2012 19:25

Quote:

Originally Posted by Titus (Post 468386)
будут выполнены прерывания лишь для канала 0 источника и приемника.

Причём, всегда именно в такой последовательности - сначала для источника, потом для приёмника. Верно?

Titus 17th February 2012 19:26

Quote:

Originally Posted by form (Post 468389)
Из прерывания возврат был по RTI или по RTT?

---------- Post added at 21:24 ---------- Previous post was at 21:23 ----------

Хотя по докам KDJ11, RTT влияет только на T-bit.

RTI

---------- Post added at 18:26 ---------- Previous post was at 18:26 ----------

Quote:

Originally Posted by Patron (Post 468392)
Причём, всегда именно в такой последовательности - сначала для источника, потом для приёмника. Верно?

Сначала приемник, потом источник.

form 17th February 2012 19:28

Quote:

Originally Posted by Titus (Post 468395)
RTI

Проверь RTT для очистки совести - просто, чтобы знать как в данном конкретном случае :)
Хотя по идее разницы быть не должно для данног случая.

Patron 17th February 2012 19:37

Quote:

Originally Posted by Titus (Post 468395)
Сначала приемник, потом источник.

В смысле - сначала ввод с клавиатуры, потом - вывод на экран ?

Titus 17th February 2012 19:45

Quote:

Originally Posted by Patron (Post 468407)
В смысле - сначала ввод с клавиатуры, потом - вывод на экран ?

Нет, т.к. это со стороны ПП. Сначала прием байта для экрана, потом отдача байта от клавиатуры.

---------- Post added at 18:45 ---------- Previous post was at 18:38 ----------

Так, про другие каналы я скорее всего немножко наврал, у меня там лишний раз запрещается прерывание. Надо перепроверить.

Patron 17th February 2012 19:55

Quote:

Originally Posted by Titus (Post 468409)
Нет, т.к. это со стороны ПП. Сначала прием байта для экрана, потом отдача байта от клавиатуры

Да, конечно.

Главное, что всегда сначала прерывание порта приёмника, потом - прерывание порта передатчика.

...

Quote:

Originally Posted by Titus (Post 468409)
про другие каналы я скорее всего немножко наврал, у меня там лишний раз запрещается прерывание.

Очевидно, что разрешение/запрещение прерываний в процессоре никак не влияет на присутствие запроса IRQ на шине - он там или есть, или его там нет.

А если специальные мероприятия по снятию запроса IRQ не проводились - то если запроса IRQ на шине нет, то это значит, что он и не выставлялся.

Alex_K 17th February 2012 21:12

Quote:

Originally Posted by form (Post 468389)
Хотя по докам KDJ11, RTT влияет только на T-bit.

На 1801ВМ2 при возврате по RTT и если при возврате устанавливается бит T в PSW, то блок обработки прерываний не запускается, т.е. безусловно выполняется команда нового процесса. Если же при возврате бит T не был установлен, то прерывания не запрещаются.

---------- Post added at 20:12 ---------- Previous post was at 20:11 ----------

Quote:

Originally Posted by Titus (Post 468386)
Кое-что потестил еще на реале.
Где-то на форуме обсуждали, успевают выполниться команды между двумя обработчиками прерываний, или же основная программа будет стоять на месте, пока все прерывания не отработают. Выяснил - программа стоит на месте.

Я тоже это выяснил. Про это уже где-то и говорил.

form 17th February 2012 21:16

Quote:

Originally Posted by Alex_K (Post 468495)
Я тоже это выяснил. Про это уже где-то и говорил.

Поведение стандартное скорее всего для всех процов. В доках по процам, поддерживающим PIRQ, про это специально пишут так как через PIRQ можно намертво убить все без шанса вывернуться кроме как через BHALT.


All times are GMT +4. The time now is 02:44.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.