Дело не только в нормальном программном обработчике NMI, но и аппаратном! Если программно обработчик "нормальный", то он не будет работать при кривом аппаратном. И наоборот.