Цитата(aaarrr @ May 28 2013, 01:36)

Похоже: сброс внутри прерывания по записи ICCR тоже привел бы к неработающим прерываниям, но в этом случае не было бы единички в IPR.
UPD: или оно все же сконфигурировано по уровню? Если нет, то настоятельно рекомендую.
По уровню.
Цитата(aaarrr @ May 28 2013, 01:36)

Попробуйте записать EOICR, когда поймаете "зависание" - если логика была нарушена, то после этой записи должно запустится прерывание.
Да, до этого я уже додумался, но теперь надо подождать денёк, пока эта тварь снова повиснет

Цитата(aaarrr @ May 28 2013, 01:36)

Еще неплохо бы проверить листинг на предмет корректности кода для вложенных прерываний.
А вложенных нету, без _nested что-то не так с вызовом процедур из обработчика было (давно было, не помню, что-то они там в один регистр с обработчиком адрес возврата запоминали что-ли...). Сейчас уже, правда, вызовов нет, ну а _nested остался, по-моему так надёжнее